:root{--bg: #0f1117;--surface: #1a1d27;--surface-hover: #222632;--border: #2a2e3d;--text: #e4e6ed;--text-muted: #8b8fa3;--accent: #6c5ce7;--accent-hover: #7d6ff0;--tag-bool: #00b894;--tag-number: #0984e3;--tag-trigger: #e17055;--tag-string: #fdcb6e;--tag-color: #e84393;--tag-enum: #a29bfe;--tag-list: #74b9ff;--radius: 10px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);height:100vh;overflow:hidden}#root{height:100vh;overflow:hidden}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden}.header{display:flex;align-items:center;padding:0 24px;flex-shrink:0}.inspector-header{justify-content:space-between;height:57px;background:var(--surface);border-bottom:1px solid var(--border)}.inspector-header h1{font-size:1.125rem;font-weight:600;display:flex;align-items:center;gap:4px}.inspector-header h1 span{color:var(--accent)}.file-info{display:flex;align-items:center;gap:12px;color:var(--text-muted);font-size:.875rem}.file-name{padding:4px 12px;background:var(--bg);border-radius:6px;font-family:SF Mono,Fira Code,monospace;font-size:.8rem}.remove-btn{background:none;border:1px solid var(--border);color:var(--text-muted);padding:4px 12px;border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .2s}.remove-btn:hover{border-color:#e17055;color:#e17055}.main{display:flex;flex:1;overflow:hidden;min-height:0}.upload-container{display:flex;align-items:center;justify-content:center;flex:1;padding:40px;background:#000}.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;width:500px;padding:52px 82px;border-radius:16px;background:#131313;cursor:pointer;transition:background .2s}.upload-zone:hover,.upload-zone.dragging{background:#1c1c1c}.upload-icon{width:91px;height:88px;border-radius:16px;background:#282828;display:flex;align-items:center;justify-content:center;color:#fff}.upload-text-group{display:flex;flex-direction:column;align-items:center;gap:8px}.upload-zone h2{font-size:18px;font-weight:500;color:#e3e6ec;text-align:center;margin:0}.upload-zone p{color:#8b8fa3;font-size:13px;margin:0;text-align:center}.upload-zone .browse-btn{padding:12px 29px;background:#282828;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s;width:130px}.upload-zone .browse-btn:hover{background:#333}.supports-text{font-size:11px;color:#8b8fa3;text-align:center}.preview-panel{flex:1;display:flex;align-items:center;justify-content:center;background:var(--bg);border-right:1px solid var(--border);position:relative;overflow:hidden}.preview-panel canvas{max-width:100%;max-height:100%}.data-panel{width:420px;min-width:420px;height:100%;background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.data-panel-header{padding:16px 20px;border-bottom:1px solid var(--border);font-weight:600;font-size:.9rem;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;background:var(--surface)}.data-panel-body{flex:1;overflow-y:auto;min-height:0}.data-panel-header .count{background:var(--accent);color:#fff;padding:2px 8px;border-radius:10px;font-size:.75rem;font-weight:500}.data-section{border-bottom:1px solid var(--border)}.data-section-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;transition:color .2s;-webkit-user-select:none;user-select:none}.data-section-header:hover{color:var(--text)}.data-section-header .chevron{transition:transform .2s;font-size:.7rem}.data-section-header .chevron.open{transform:rotate(90deg)}.data-section-content{padding:0 20px 12px}.data-section-title{display:flex;align-items:center;gap:6px;text-transform:none;font-size:.8rem}.vm-badge{display:inline-block;padding:1px 6px;border-radius:4px;font-size:.65rem;font-weight:700;letter-spacing:.3px;text-transform:uppercase;line-height:1.5}.vm-badge-main{background:#63b3ed2e;color:#63b3ed;border:1px solid rgba(99,179,237,.3)}.vm-badge-vm{background:#9a75ea26;color:#9a75ea;border:1px solid rgba(154,117,234,.25)}.vm-badge-sm{background:#68d39126;color:#68d391;border:1px solid rgba(104,211,145,.25)}.data-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;margin-bottom:4px;background:var(--bg);border-radius:8px;font-size:.85rem;gap:8px;min-height:44px}.data-item-control{flex-shrink:0;display:flex;align-items:center;gap:6px}.bool-toggle{display:flex;align-items:center;gap:7px;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:3px 10px 3px 4px;cursor:pointer;transition:all .2s;font-size:.75rem;font-weight:500;color:var(--text-muted)}.bool-toggle.on{border-color:var(--tag-bool);color:var(--tag-bool);background:color-mix(in srgb,var(--tag-bool) 10%,transparent)}.bool-toggle.off{border-color:var(--border);color:var(--text-muted)}.bool-toggle-thumb{width:18px;height:18px;border-radius:50%;background:var(--border);transition:background .2s;flex-shrink:0}.bool-toggle.on .bool-toggle-thumb{background:var(--tag-bool)}.bool-toggle-label{font-family:SF Mono,Fira Code,monospace;font-size:.72rem;min-width:26px}.trigger-btn{padding:4px 12px;border-radius:6px;border:1px solid var(--tag-trigger);background:color-mix(in srgb,var(--tag-trigger) 12%,transparent);color:var(--tag-trigger);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .18s;min-width:52px}.trigger-btn:hover{background:color-mix(in srgb,var(--tag-trigger) 25%,transparent)}.trigger-btn.fired{background:var(--tag-trigger);color:#fff;animation:trigger-flash .6s ease-out}@keyframes trigger-flash{0%{transform:scale(1.08)}to{transform:scale(1)}}.var-select{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:4px 8px;font-size:.78rem;font-family:SF Mono,Fira Code,monospace;cursor:pointer;outline:none;transition:border-color .2s;max-width:130px}.var-select:hover,.var-select:focus{border-color:var(--tag-enum)}.color-control{position:relative;display:flex;align-items:center;gap:6px;cursor:pointer;border:1px solid var(--border);border-radius:6px;padding:3px 8px 3px 5px;background:var(--surface);transition:border-color .2s}.color-control:hover{border-color:var(--tag-color)}.string-input{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.78rem;padding:4px 8px;width:120px;outline:none;transition:border-color .2s}.string-input:focus{border-color:var(--accent)}.data-item-left{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.data-item-meta{display:flex;flex-direction:column;gap:1px;min-width:0}.data-item-name{font-family:SF Mono,Fira Code,monospace;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.data-item-source{font-size:.68rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.7}.data-item-value-col{display:flex;align-items:center;gap:6px;flex-shrink:0}.data-item-value{font-family:SF Mono,Fira Code,monospace;font-size:.78rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:110px;text-align:right}.data-item-value.muted{opacity:.45;font-style:italic}.color-swatch{width:18px;height:18px;border-radius:4px;border:1px solid rgba(255,255,255,.12);flex-shrink:0;display:inline-block}.bool-badge{padding:2px 8px;border-radius:4px;font-family:SF Mono,Fira Code,monospace;font-size:.75rem;font-weight:600}.bool-badge.true{background:color-mix(in srgb,var(--tag-bool) 18%,transparent);color:var(--tag-bool)}.bool-badge.false{background:color-mix(in srgb,var(--text-muted) 12%,transparent);color:var(--text-muted)}.type-tag{padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;flex-shrink:0}.type-tag.boolean{background:color-mix(in srgb,var(--tag-bool) 20%,transparent);color:var(--tag-bool)}.type-tag.number{background:color-mix(in srgb,var(--tag-number) 20%,transparent);color:var(--tag-number)}.type-tag.trigger{background:color-mix(in srgb,var(--tag-trigger) 20%,transparent);color:var(--tag-trigger)}.type-tag.string{background:color-mix(in srgb,var(--tag-string) 20%,transparent);color:var(--tag-string)}.type-tag.color{background:color-mix(in srgb,var(--tag-color) 20%,transparent);color:var(--tag-color)}.type-tag.enum{background:color-mix(in srgb,var(--tag-enum) 20%,transparent);color:var(--tag-enum)}.type-tag.list{background:color-mix(in srgb,var(--tag-list) 20%,transparent);color:var(--tag-list)}.type-tag.animation{background:color-mix(in srgb,var(--accent) 20%,transparent);color:var(--accent)}.type-tag.statemachine{background:color-mix(in srgb,#fd79a8 20%,transparent);color:#fd79a8}.empty-section{padding:12px;text-align:center;color:var(--text-muted);font-size:.8rem;font-style:italic}.artboard-label{display:flex;align-items:center;gap:6px;padding:10px 20px;font-size:.8rem;font-weight:500;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.artboard-label-icon{font-size:.75rem;opacity:.6}.artboard-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:12px 20px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.artboard-tab{padding:6px 14px;border-radius:6px;font-size:.8rem;font-weight:500;background:var(--bg);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:all .2s}.artboard-tab:hover{color:var(--text);border-color:var(--accent)}.artboard-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.renderer-toolbar{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;background:#0f1117d9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:10px;padding:8px 14px;font-size:.8rem;white-space:nowrap}.toolbar-group{display:flex;align-items:center;gap:7px}.toolbar-label{color:var(--text-muted);font-size:.75rem;font-weight:500;-webkit-user-select:none;user-select:none}.toolbar-divider{width:1px;height:18px;background:var(--border)}.sm-select{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:3px 8px;font-size:.78rem;font-family:SF Mono,Fira Code,monospace;cursor:pointer;outline:none;transition:border-color .2s;max-width:160px}.sm-select:hover,.sm-select:focus{border-color:var(--accent)}.renderer-pill{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:6px;overflow:hidden}.pill-option{padding:3px 10px;font-size:.75rem;font-weight:500;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .18s;-webkit-user-select:none;user-select:none}.pill-option:first-child{border-right:1px solid var(--border)}.pill-option:hover{color:var(--text)}.pill-option.active{background:var(--accent);color:#fff}.data-panel-body::-webkit-scrollbar{width:6px}.data-panel-body::-webkit-scrollbar-track{background:transparent}.data-panel-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.data-panel-body::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.loading{display:flex;align-items:center;justify-content:center;gap:12px;color:var(--text-muted);font-size:.9rem}.spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:900px){.main{flex-direction:column}.data-panel{width:100%;min-width:unset;max-height:50vh;border-left:none;border-top:1px solid var(--border)}.preview-panel{min-height:300px;border-right:none}}
