:root{--bg-dark:#04060d;--bg-elev:#0a0e1c;--panel-bg:#0c101ead;--panel-bg-strong:#0e1324e6;--panel-border:#94aadc24;--panel-border-strong:#a0b4e647;--glass-hi:inset 0 1px 0 #ffffff12;--text:#f2f6fd;--muted:#93a3bd;--muted-2:#5d6b84;--accent:#8b5cf6;--accent-2:#22d3ee;--accent-glow:#8b5cf659;--accent-glow-2:#22d3ee42;--danger:#fb4d67;--success:#2dd4a0;--warning:#f5b83d;--shadow-sm:0 4px 16px #00000073;--shadow:0 24px 70px #0000009e, 0 0 50px #8b5cf61a;--shadow-lg:0 34px 100px #000000b8, 0 0 70px #22d3ee17;--radius-sm:8px;--radius:12px;--radius-lg:16px;--radius-xl:22px;--font-ui:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", "SF Mono", monospace;--ease:cubic-bezier(.32, .72, .2, 1);--hairline:linear-gradient(120deg, color-mix(in srgb, var(--accent) 55%, transparent), color-mix(in srgb, var(--accent-2) 45%, transparent) 45%, transparent 80%)}*{box-sizing:border-box}::selection{background:color-mix(in srgb, var(--accent) 45%, transparent);color:var(--text-strong)}html,body{background:var(--bg-dark);width:100%;height:100%;color:var(--text);font-family:var(--font-ui);font-feature-settings:"cv02", "cv03", "cv04", "cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow:hidden}#app{background:radial-gradient(ellipse 90% 60% at 8% -6%, color-mix(in srgb, var(--accent) 13%, transparent), transparent 55%), radial-gradient(ellipse 70% 50% at 96% 4%, color-mix(in srgb, var(--accent-2) 10%, transparent), transparent 55%), radial-gradient(ellipse 80% 45% at 50% 108%, color-mix(in srgb, var(--accent) 7%, transparent), transparent 60%), linear-gradient(180deg, var(--bg-elev) 0%, var(--bg-dark) 100%);width:100%;height:100%;position:relative}#app:after{content:"";pointer-events:none;z-index:1;opacity:.55;background:radial-gradient(circle at 22% 30%, color-mix(in srgb, var(--accent) 9%, transparent) 0%, transparent 34%), radial-gradient(circle at 78% 66%, color-mix(in srgb, var(--accent-2) 8%, transparent) 0%, transparent 38%);animation:26s ease-in-out infinite alternate ambient-drift;position:absolute;inset:-20%}@keyframes ambient-drift{0%{transform:translate(-1.5%,-1%)scale(1)}50%{transform:translate(1.2%,1.4%)scale(1.05)}to{transform:translate(-.8%,1%)scale(1)}}#viewport canvas{outline:none;display:block}audio{display:none}.spinner{width:54px;height:54px;position:relative}.spinner:before,.spinner:after{content:"";border:2px solid #0000;border-radius:50%;position:absolute;inset:0}.spinner:before{border-top-color:var(--accent);border-right-color:color-mix(in srgb, var(--accent) 35%, transparent);box-shadow:0 0 24px var(--accent-glow);animation:.9s linear infinite spin}.spinner:after{border-bottom-color:var(--accent-2);animation:1.3s linear infinite reverse spin;inset:8px}@keyframes spin{to{transform:rotate(360deg)}}.badge{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 32%, transparent), color-mix(in srgb, var(--accent-2) 32%, transparent));border:1px solid color-mix(in srgb, var(--accent) 55%, transparent);color:var(--text-strong);font-family:var(--font-mono);letter-spacing:.08em;box-shadow:0 0 16px var(--accent-glow);-webkit-text-fill-color:currentColor;vertical-align:2px;border-radius:999px;padding:3px 9px;font-size:.64rem;font-weight:800}.tabs{border-radius:var(--radius-lg);background:#02040a8c;border:1px solid #94aadc1a;grid-template-columns:repeat(6,1fr);gap:4px;padding:4px;display:grid}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.panel-section{gap:10px;display:grid}.panel-section h3{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;margin:2px 0 0;font-size:.64rem;font-weight:800;display:flex}.panel-section h3:before{content:"";background:var(--hairline);width:14px;height:2px;box-shadow:0 0 8px var(--accent-glow);border-radius:999px;flex:none}.ps-icon{filter:drop-shadow(0 0 6px var(--accent-glow));display:inline-block}.field{border-radius:var(--radius);background:#ffffff08;border:1px solid #94aadc17;gap:7px;padding:10px 12px 11px;transition:border-color .18s,background .18s,box-shadow .18s;display:grid}.field:hover{background:#ffffff0d;border-color:#a0b4e633}.field:focus-within{border-color:color-mix(in srgb, var(--accent) 65%, transparent);box-shadow:0 0 0 3px var(--accent-glow)}.field.disabled{opacity:.42;pointer-events:none}.field-row{gap:8px;display:flex}.field-row>.field{flex:1;min-width:0}.field-label{color:var(--muted);justify-content:space-between;align-items:baseline;gap:8px;font-size:.76rem;font-weight:700;display:flex}.field-label strong{color:var(--accent-2);font-family:var(--font-mono);background:#02050c99;border:1px solid #94aadc24;border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:700}.field input[type=range]{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg, var(--accent), var(--accent-2)) no-repeat, #94aadc24;background-size:var(--fill,50%) 100%, 100% 100%;cursor:pointer;border-radius:999px;outline:none;width:100%;height:5px}.field input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--text-strong);border:3px solid var(--accent);width:16px;height:16px;box-shadow:0 0 12px var(--accent-glow), 0 2px 6px #00000080;border-radius:50%;transition:transform .13s}.field input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.28)}.field input[type=range]::-moz-range-thumb{background:var(--text-strong);border:3px solid var(--accent);width:15px;height:15px;box-shadow:0 0 12px var(--accent-glow);border-radius:50%}.field select{border-radius:var(--radius-sm);width:100%;color:var(--text);cursor:pointer;background:#060914f2;border:1px solid #94aadc24;padding:8px 10px;font-family:inherit;font-size:.82rem;transition:border-color .16s}.field select:hover,.field select:focus{border-color:var(--accent);outline:none}.field select option{background:var(--bg-elev);color:var(--text)}.toggle{border-radius:var(--radius);color:var(--muted);cursor:pointer;background:#ffffff08;border:1px solid #94aadc17;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:.8rem;font-weight:700;transition:border-color .16s,color .16s;display:flex}.toggle:hover{color:var(--text);border-color:#a0b4e633}.toggle.disabled{opacity:.42;pointer-events:none}.toggle input{display:none}.toggle-track{background:#94aadc29;border-radius:999px;flex-shrink:0;width:38px;height:21px;transition:background .22s,box-shadow .22s;position:relative}.toggle-thumb{background:var(--text-strong);width:17px;height:17px;transition:transform .22s var(--ease);border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #00000080}.toggle input:checked+.toggle-track{background:linear-gradient(135deg, var(--accent), var(--accent-2));box-shadow:0 0 14px var(--accent-glow)}.toggle input:checked+.toggle-track .toggle-thumb{transform:translate(17px)}.button-row{flex-wrap:wrap;gap:8px;display:flex}.btn{cursor:pointer;border-radius:var(--radius);color:#fff;background:linear-gradient(135deg, var(--accent), var(--accent-2));min-height:40px;box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 32%, transparent);transition:transform .14s var(--ease), box-shadow .2s ease, filter .2s ease, background .2s ease;text-shadow:0 1px 4px #00000040;border:0;flex:1;padding:10px 14px;font-family:inherit;font-size:.82rem;font-weight:800}.btn:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 12px 28px color-mix(in srgb, var(--accent) 48%, transparent);transform:translateY(-2px)}.btn:active:not(:disabled){transform:translateY(0)scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.ghost{box-shadow:none;text-shadow:none;background:#ffffff0d;border:1px solid #94aadc29}.btn.ghost:hover:not(:disabled){box-shadow:0 0 18px color-mix(in srgb, var(--accent-2) 22%, transparent);background:#ffffff1a;border-color:#a0b4e652}.btn.ghost.active-ghost{border-color:var(--success);color:var(--success);box-shadow:0 0 16px #2dd4a047}.btn.danger{background:linear-gradient(135deg, var(--danger), var(--warning));box-shadow:0 8px 20px #fb4d674d}.btn.danger:hover:not(:disabled){box-shadow:0 12px 26px #fb4d6773}.playlist{gap:4px;max-height:132px;margin-top:4px;display:grid;overflow-y:auto}.playlist::-webkit-scrollbar{width:4px}.playlist::-webkit-scrollbar-thumb{background:#a0b4e62e;border-radius:999px}.playlist-empty{color:var(--muted-2);border-radius:var(--radius-sm);text-align:center;background:#ffffff06;border:1px dashed #94aadc2e;padding:9px 10px;font-size:.75rem}.playlist-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--muted);background:#ffffff08;border:1px solid #0000;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;font-size:.76rem;transition:all .15s;display:flex}.playlist-item:hover{color:var(--text);background:#ffffff12}.playlist-item.active{background:color-mix(in srgb, var(--accent) 20%, transparent);border-color:color-mix(in srgb, var(--accent) 52%, transparent);color:var(--text);box-shadow:0 0 14px color-mix(in srgb, var(--accent) 18%, transparent)}.playlist-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.playlist-remove{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;padding:2px 6px;font-size:.7rem;transition:all .12s}.playlist-remove:hover{color:var(--danger);background:#fb4d6726}.midi-state-row{color:var(--muted);align-items:center;gap:8px;font-size:.78rem;display:flex}.midi-learn{flex-wrap:wrap;gap:6px;display:flex}.learn-chip{color:var(--muted);cursor:pointer;background:#ffffff0a;border:1px solid #94aadc24;border-radius:999px;padding:6px 10px;font-family:inherit;font-size:.7rem;font-weight:700;transition:all .16s}.learn-chip:hover{color:var(--text);border-color:var(--accent)}.learn-chip.armed{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;box-shadow:0 0 14px var(--accent-glow);border-color:#0000}@keyframes armedPulse{0%,to{box-shadow:0 0 10px var(--accent-glow)}50%{box-shadow:0 0 24px var(--accent-glow)}}.meta{color:var(--muted);border-radius:var(--radius);background:#02050c73;border:1px solid #94aadc14;gap:6px;padding:12px;font-size:.76rem;display:grid}.meta strong{color:var(--text)}.live-dot{background:#ffffff40;border-radius:999px;width:8px;height:8px;margin-right:6px;transition:all .15s;display:inline-block}.live-dot.hot{background:var(--success);box-shadow:0 0 12px var(--success)}.live-dot.rec{background:var(--danger);box-shadow:0 0 12px var(--danger)}@keyframes rec-pulse{0%,to{box-shadow:0 0 #fb4d678c}50%{box-shadow:0 0 0 6px #fb4d6700}}.hint{color:var(--muted);margin:0;font-size:.72rem;line-height:1.5}.hint code,.hint strong{color:var(--accent-2)}code{font-family:var(--font-mono);font-size:.72rem}.code-input{resize:vertical;border-radius:var(--radius);width:100%;min-height:190px;color:var(--text-strong);font-family:var(--font-mono);tab-size:2;background:#03050cf2;border:1px solid #94aadc24;padding:12px;font-size:.72rem;line-height:1.55;transition:border-color .16s,box-shadow .16s}.code-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.shortcut-grid{gap:8px;font-size:.76rem;display:grid}.shortcut-item{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;display:flex}.shortcut-item kbd{color:var(--text);font-family:var(--font-mono);white-space:nowrap;background:#94aadc1a;border:1px solid #94aadc33;border-bottom-width:2px;border-radius:6px;padding:3px 8px;font-size:.7rem}.hud-chip{background:linear-gradient(180deg, #ffffff0d, #ffffff04), var(--panel-bg);border:1px solid var(--panel-border);backdrop-filter:blur(18px)saturate(150%);box-shadow:var(--shadow-sm), var(--glass-hi);color:var(--muted);animation:chipIn .32s var(--ease);border-radius:999px;align-items:center;gap:9px;padding:7px 13px 7px 10px;display:flex}@keyframes chipIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hud-ico{font-size:.95rem;line-height:1}.hud-body{flex-direction:column;gap:1px;min-width:0;display:flex}.hud-label{letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);font-size:.54rem;font-weight:800;line-height:1.2}.hud-value{font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap;text-overflow:ellipsis;max-width:190px;font-size:.74rem;font-weight:700;line-height:1.25;overflow:hidden}.hud-chip.loading{animation:chipIn .32s var(--ease);box-shadow:var(--shadow-sm), 0 0 18px var(--accent-glow)}@keyframes loadingGlow{0%,to{box-shadow:var(--shadow-sm)}50%{box-shadow:var(--shadow-sm), 0 0 18px var(--accent-glow)}}.hud-click{appearance:none;cursor:pointer;text-align:left;transition:transform .16s var(--ease), border-color .18s ease, box-shadow .2s ease;font-family:inherit}.hud-click:hover{border-color:color-mix(in srgb, var(--accent) 45%, transparent);box-shadow:var(--shadow-sm), 0 0 16px var(--accent-glow);transform:translateY(-2px)}.hud-click:active{transform:translateY(0)scale(.97)}.hud-click:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.hud-chip.obs{background:linear-gradient(135deg,#fb4d6738,#f9731638);border-color:#fb4d6780}.hud-chip.obs .hud-value{color:var(--danger-soft);text-shadow:0 0 6px #fb4d6766}@keyframes obsPulse{0%,to{text-shadow:0 0 6px #fb4d6766}50%{text-shadow:0 0 14px #fb4d67d9}}.dropzone{border-radius:var(--radius-xl);border:2px dashed color-mix(in srgb, var(--accent) 45%, #fff3);text-align:center;pointer-events:none;z-index:100;backdrop-filter:blur(18px);background:#03050ce6;justify-content:center;align-items:center;padding:28px;display:none;position:absolute;inset:20px}.dropzone.active{animation:dropzoneIn .22s var(--ease);display:flex}@keyframes dropzoneIn{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.dropzone strong{background:linear-gradient(135deg, var(--accent), var(--accent-2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:8px;font-size:1.6rem;display:block}.dropzone span{color:var(--muted);font-size:.9rem}.modal-backdrop{backdrop-filter:blur(12px);z-index:1000;background:#010206bd;justify-content:center;align-items:center;animation:.18s fadeIn;display:flex;position:fixed;inset:0}.modal{background:linear-gradient(180deg, #ffffff0d, #ffffff03 24%), var(--panel-bg-strong);border:1px solid var(--panel-border-strong);border-radius:var(--radius-xl);width:min(460px,92vw);max-height:84vh;box-shadow:var(--shadow-lg), var(--glass-hi);animation:modalIn .24s var(--ease);padding:26px;position:relative;overflow-y:auto}.modal:before{content:"";background:var(--hairline);pointer-events:none;height:1px;position:absolute;top:0;left:12%;right:12%}@keyframes modalIn{0%{opacity:0;transform:scale(.94)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal h2{letter-spacing:-.02em;margin-top:0;font-size:1.2rem}.shortcut-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:6px 20px;margin-top:14px;font-size:.86rem;display:grid}.shortcut-list .shortcut-item{border-radius:var(--radius-sm);background:#ffffff08;border:1px solid #94aadc12;padding:7px 10px}.shortcut-list .shortcut-item:hover{border-color:#a0b4e62e}#app.clean .topbar,#app.clean .hud,#app.clean .dropzone{display:none!important}.look-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.look-chip{border-radius:var(--radius);color:var(--muted);cursor:pointer;transition:all .17s var(--ease);background:#ffffff09;border:1px solid #94aadc1f;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;font-family:inherit;font-size:.68rem;font-weight:700;display:flex}.look-chip .look-icon{font-size:1.15rem}.look-chip:hover{color:var(--text);border-color:#a0b4e64d;transform:translateY(-2px);box-shadow:0 8px 18px #00000059}.look-chip.active{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;box-shadow:0 8px 20px var(--accent-glow);border-color:#0000}.audio-monitor{border-radius:var(--radius);background:#02040ae0;border:1px solid #94aadc1a;width:100%;height:150px;box-shadow:inset 0 0 44px #0000008c}.demo-row{gap:10px;display:grid}.url-row{align-items:center;gap:8px;display:flex}.url-row .btn{flex:none}.url-input{border-radius:var(--radius);min-width:0;color:var(--text);background:#060914e6;border:1px solid #94aadc24;flex:1;padding:10px 12px;font-family:inherit;font-size:.78rem;transition:border-color .16s,box-shadow .16s}.url-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.color-pick{border-radius:var(--radius);color:var(--muted);cursor:pointer;background:#ffffff09;border:1px solid #94aadc1a;flex:1;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:.72rem;font-weight:700;transition:border-color .16s;display:flex}.color-pick:hover{border-color:#a0b4e638}.color-pick input[type=color]{cursor:pointer;background:0 0;border:0;border-radius:8px;width:38px;height:28px;padding:0}.boot-error-title{color:var(--text);letter-spacing:.02em;font-size:1.05rem;font-weight:800}.boot-error-msg{font-family:var(--font-mono);color:var(--danger);border-radius:var(--radius);word-break:break-word;background:#fb4d6714;border:1px solid #fb4d6759;max-width:min(520px,90vw);padding:10px 14px;font-size:.75rem}.btn:focus-visible,.learn-chip:focus-visible,.look-chip:focus-visible,.playlist-remove:focus-visible,.url-input:focus-visible,.field select:focus-visible,.field input[type=range]:focus-visible,.color-pick input[type=color]:focus-visible,.icon-btn:focus-visible,.lang-btn:focus-visible,.mode-search:focus-visible,.mode-cell-btn:focus-visible,.mode-fav-btn:focus-visible,.preset-name:focus-visible,.popover-trigger:focus-visible,.wizard-card:focus-visible,.timeline-chip:focus-visible,.toggle:has(input:focus-visible){outline:2px solid var(--accent-2);outline-offset:2px}.topbar{z-index:20;pointer-events:none;align-items:center;gap:10px;padding:14px 18px;display:flex;position:absolute;top:0;left:0;right:0}.brand-logo{width:34px;height:34px;filter:drop-shadow(0 0 8px var(--accent-glow));place-items:center;font-size:1.15rem;display:grid;position:relative}.brand-ring{border:1.5px solid color-mix(in srgb, var(--accent) 65%, transparent);border-top-color:#0000;border-radius:50%;animation:3.2s linear infinite brandOrbit;position:absolute;inset:0}@keyframes brandOrbit{to{transform:rotate(360deg)}}.live-spectrum{display:block}.topbar-actions{background:linear-gradient(180deg, #ffffff0f, #ffffff05), var(--panel-bg);border:1px solid var(--panel-border);backdrop-filter:blur(20px)saturate(150%);box-shadow:var(--shadow-sm), var(--glass-hi);pointer-events:auto;border-radius:999px;align-items:center;gap:5px;padding:6px;display:flex}.icon-btn{appearance:none;cursor:pointer;width:34px;height:34px;color:var(--text);background:#ffffff0d;border:1px solid #94aadc1f;border-radius:50%;place-items:center;font-size:.95rem;transition:all .16s;display:grid}.icon-btn:hover{background:#ffffff1f;transform:translateY(-1px)}.icon-btn:active{transform:scale(.92)}.icon-btn.active{background:linear-gradient(135deg, var(--accent), var(--accent-2));box-shadow:0 0 14px var(--accent-glow);border-color:#0000}.lang-toggle{background:#ffffff0f;border:1px solid #94aadc1a;border-radius:10px;flex:none;gap:2px;padding:2px;display:inline-flex}.lang-btn{appearance:none;color:var(--muted);letter-spacing:.06em;cursor:pointer;font-size:.68rem;font-weight:700;font-family:var(--font-mono);background:0 0;border:0;border-radius:8px;padding:4px 9px;transition:background .18s,color .18s,transform .12s}.lang-btn:hover{color:var(--text-strong)}.lang-btn:active{transform:scale(.94)}.lang-btn.active{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:var(--text-strong);box-shadow:0 2px 10px var(--accent-glow)}.mode-fade{z-index:300;pointer-events:none;background:var(--bg-dark);animation:.34s forwards modeFade;position:fixed;inset:0}@keyframes modeFade{0%{opacity:0}30%{opacity:1}to{opacity:0}}.snap-flash{z-index:250;pointer-events:none;background:radial-gradient(circle,#ffffffeb,#ffffffa6);animation:.38s ease-out forwards snapFlash;position:fixed;inset:0}@keyframes snapFlash{0%{opacity:0}12%{opacity:1}to{opacity:0}}.mode-picker{flex-direction:column;gap:12px;display:flex}.mode-search{border-radius:var(--radius-sm);width:100%;color:var(--text);background:#ffffff0a;border:1px solid #94aadc24;min-height:40px;padding:10px 12px;font-family:inherit;font-size:.82rem;transition:border-color .16s,box-shadow .16s}.mode-search::placeholder{color:var(--muted-2)}.mode-search:focus,.mode-search:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.mode-group{flex-direction:column;gap:6px;display:flex}.mode-group-title{letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);padding-left:2px;font-size:.62rem;font-weight:800}.mode-grid{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.mode-cell{border-radius:var(--radius);transition:all .17s var(--ease);background:#ffffff09;border:1px solid #94aadc1a;display:flex;position:relative;overflow:hidden}.mode-cell:hover{border-color:#a0b4e647;transform:translateY(-1px)}.mode-cell.active{background:linear-gradient(135deg, var(--accent), var(--accent-2));box-shadow:0 8px 20px var(--accent-glow);border-color:#0000}.mode-cell-btn{min-height:44px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:10px 8px;font-family:inherit;font-size:.72rem;font-weight:700;display:flex}.mode-cell.active .mode-cell-btn{color:#fff}.mode-cell:not(.active) .mode-cell-btn:hover{color:var(--text)}.mode-cell-icon{flex:none;font-size:1.05rem}.mode-cell-label{line-height:1.2}.mode-fav-btn{width:36px;min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-left:1px solid #94aadc1a;flex:none;justify-content:center;align-items:center;font-size:.95rem;transition:color .16s,transform .16s;display:flex}.mode-cell.active .mode-fav-btn{color:#ffffffd9;border-left-color:#ffffff40}.mode-fav-btn:hover{transform:scale(1.15)}.mode-fav-btn.active{color:var(--star)}.mode-cell.active .mode-fav-btn.active{color:var(--star-soft)}.mode-empty{color:var(--muted-2);text-align:center;padding:16px 0;font-size:.78rem}@media (width<=480px){.mode-grid{grid-template-columns:1fr}}.preset-slot-grid{gap:8px;display:grid}.preset-slot{border-radius:var(--radius);background:#ffffff09;border:1px solid #94aadc1a;align-items:center;gap:10px;padding:9px 11px;transition:border-color .18s,background .18s;display:flex}.preset-slot:hover{border-color:#a0b4e638}.preset-slot-num{background:linear-gradient(135deg, var(--accent), var(--accent-2));width:26px;height:26px;color:var(--text-strong);box-shadow:0 2px 8px var(--accent-glow);border-radius:8px;flex:none;place-items:center;font-size:.72rem;font-weight:800;display:grid}.preset-slot-info{flex:1;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.preset-slot-name{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.74rem;font-family:var(--font-mono);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.preset-slot-actions{flex:none;gap:6px;display:inline-flex}.preset-slot-actions .btn{padding:5px 10px;font-size:.68rem}.preset-slot-clear.btn{color:var(--danger);box-shadow:none;background:0 0;border:1px solid #fb4d6766}@media (width<=760px){.preset-slot-info{flex-direction:column;align-items:flex-start}.preset-slot-actions{width:100%}.preset-slot-actions .btn{flex:1;justify-content:center}}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;display:grid}.stats-grid>div{border-radius:var(--radius);text-align:center;background:#ffffff0a;border:1px solid #94aadc1a;flex-direction:column;gap:2px;padding:10px 8px;transition:border-color .18s,transform .15s;display:flex}.stats-grid>div:hover{border-color:#a0b4e63d;transform:translateY(-1px)}.stats-grid strong{font-size:1.15rem;font-family:var(--font-mono);background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#0000;-webkit-background-clip:text;background-clip:text}.stats-grid span{color:var(--muted-2);text-transform:uppercase;letter-spacing:.07em;font-size:.62rem;font-weight:700}.progress-track{cursor:pointer;transition:filter .15s;position:relative}.progress-track:hover{filter:brightness(1.3)}.shot-gallery{gap:12px;display:grid}.shot-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.shot-card{border-radius:var(--radius);background:#ffffff09;border:1px solid #94aadc1a;flex-direction:column;margin:0;transition:border-color .18s,transform .15s;display:flex;overflow:hidden}.shot-card:hover{border-color:#a0b4e642;transform:translateY(-2px)}.shot-thumb{aspect-ratio:16/9;background:var(--bg-dark);display:block}.shot-thumb img{object-fit:cover;width:100%;height:100%;display:block}.shot-card figcaption{gap:6px;padding:8px;display:grid}.shot-meta{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.shot-label{color:var(--text);margin-right:auto;font-size:.72rem;font-weight:600}.shot-chip{color:var(--muted);font-size:.58rem;font-family:var(--font-mono);background:#ffffff0f;border:1px solid #94aadc1a;border-radius:999px;padding:2px 6px}.shot-note{width:100%;color:var(--text);background:#03050c99;border:1px solid #94aadc24;border-radius:8px;padding:6px 8px;font-size:.7rem}.shot-note::placeholder{color:var(--muted-2)}.shot-actions{flex-wrap:wrap;gap:4px;display:flex}.shot-btn{flex:1;border-radius:8px!important;min-height:30px!important;padding:4px 6px!important;font-size:.68rem!important}.shot-btn.danger-text{color:var(--danger);flex:none}.rec-grid{grid-template-columns:1fr;gap:12px;display:grid}.rec-card{border-radius:var(--radius);background:#ffffff09;border:1px solid #94aadc1a;margin:0;overflow:hidden}.rec-video{aspect-ratio:16/9;background:var(--bg-dark);width:100%;display:block}.rec-card figcaption{gap:6px;padding:8px;display:grid}@keyframes icon-pop{0%{transform:scale(.6)}60%{transform:scale(1.25)}to{transform:scale(1)}}.btn{will-change:transform}.toggle-grid{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.toggle-grid .toggle{border-radius:var(--radius-sm);padding:8px 10px;font-size:.72rem}@media (prefers-reduced-motion:reduce){#app:after,.brand-ring,.spinner:before,.spinner:after,.live-dot.rec,.learn-chip.armed,.badge-pill.live .badge-icon,.hud-chip.loading,.hud-chip.obs .hud-value,.toast,.tabs .tab-btn.active .tab-icon{animation:none!important}}:root{--topbar-h:3.75rem;--transport-h:3.875rem;--status-h:2.125rem;--nav-w:13.5rem;--nav-w-compact:3.75rem;--inspector-w:26.25rem;--inspector-w-collapsed:2.75rem;--surface-1:#ffffff08;--surface-2:#ffffff0f;--surface-3:#ffffff1a;--border-soft:#94aadc17;--border-mid:#a0b4e638;--text-strong:#f2f6fd;--text-muted:#93a3bd;--text-faint:#5d6b84;--ok:#2dd4a0;--warn:#f5b83d;--err:#fb4d67;--gap-1:4px;--gap-2:8px;--gap-3:12px;--gap-4:16px;--z-shell:20;--z-hud:12;--z-overlay:200;--z-toast:320}#app.studio{grid-template-rows:var(--topbar-h) minmax(0, 1fr) var(--transport-h) var(--status-h);grid-template-areas:"topbar""body""transport""status";height:100%;display:grid;overflow:hidden}#app.studio.clean .topbar,#app.studio.clean .workspace-nav,#app.studio.clean .inspector,#app.studio.clean .transport-bar,#app.studio.clean .status-bar{opacity:0;pointer-events:none}#app.studio.clean .studio-body{grid-template-columns:0 minmax(0,1fr) 0}.studio-body{grid-area:body;grid-template-columns:var(--nav-w) minmax(0, 1fr) var(--inspector-w);grid-template-rows:minmax(0,1fr);grid-template-areas:"nav preview inspector";gap:0;min-width:0;min-height:0;display:grid;position:relative}@media (width>=901px){.studio-body:has(.workspace-nav.compact){grid-template-columns:var(--nav-w-compact) minmax(0, 1fr) var(--inspector-w)}.studio-body:has(.inspector.collapsed){grid-template-columns:var(--nav-w) minmax(0, 1fr) var(--inspector-w-collapsed)}.studio-body:has(.workspace-nav.compact):has(.inspector.collapsed){grid-template-columns:var(--nav-w-compact) minmax(0, 1fr) var(--inspector-w-collapsed)}}.topbar{align-items:center;gap:var(--gap-3);padding:0 var(--gap-4);border-bottom:1px solid var(--border-soft);background:linear-gradient(180deg, #ffffff0d, #ffffff03 40%), var(--panel-bg);backdrop-filter:blur(20px)saturate(150%);z-index:var(--z-shell);grid-area:topbar;display:flex;position:relative}.topbar:after{content:"";background:var(--hairline);opacity:.7;height:1px;position:absolute;bottom:-1px;left:0;right:0}.topbar-brand{align-items:center;gap:10px;min-width:0;display:flex}.brand-text{align-items:center;min-width:0;line-height:1.15;display:flex}.brand-text strong{letter-spacing:-.01em;white-space:nowrap;font-size:.86rem}.topbar-project{align-items:center;gap:var(--gap-2);padding-left:var(--gap-3);border-left:1px solid var(--border-soft);min-width:0;display:flex}.project-label{text-transform:uppercase;letter-spacing:.14em;color:var(--text-faint);font-size:.6rem;font-weight:800}.project-name{white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:.8rem;font-weight:700;overflow:hidden}.save-time{color:var(--text-muted);font-weight:600}.topbar-cluster{flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;display:flex}.perf-compact{display:none}.topbar-rec{flex:none;display:inline-flex}.topbar-spacer{flex:auto;min-width:0}.topbar-actions{flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;display:flex}.action-sep{background:var(--border-soft);flex:none;width:1px;height:20px}.badge-pill{font-variant-numeric:tabular-nums;border:1px solid var(--border-soft);background:var(--surface-1);color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;max-width:260px;padding:3px 9px;font-size:.68rem;font-weight:700;display:inline-flex}.badge-pill .badge-text{text-overflow:ellipsis;overflow:hidden}.badge-pill.accent{border-color:color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--text-accent-soft)}.badge-pill.success{border-color:color-mix(in srgb, var(--ok) 40%, transparent);background:color-mix(in srgb, var(--ok) 14%, transparent);color:var(--text-ok-soft)}.badge-pill.warning{border-color:color-mix(in srgb, var(--warn) 45%, transparent);background:color-mix(in srgb, var(--warn) 14%, transparent);color:var(--text-warn-soft)}.badge-pill.danger{border-color:color-mix(in srgb, var(--err) 50%, transparent);background:color-mix(in srgb, var(--err) 16%, transparent);color:var(--text-err-soft)}.badge-pill.live{border-color:color-mix(in srgb, var(--ok) 55%, transparent);background:color-mix(in srgb, var(--ok) 20%, transparent);color:var(--text-live-soft)}@keyframes liveBlink{0%,to{opacity:1}50%{opacity:.45}}.workspace-nav{gap:var(--gap-2);padding:var(--gap-3) 10px;border-right:1px solid var(--border-soft);background:linear-gradient(180deg, #ffffff09, #ffffff02), var(--panel-bg);backdrop-filter:blur(18px);min-height:0;transition:width .2s var(--ease);flex-direction:column;grid-area:nav;display:flex;overflow-y:auto}.nav-head{justify-content:space-between;align-items:center;gap:6px;min-height:34px;display:flex}.nav-title{text-transform:uppercase;letter-spacing:.16em;color:var(--text-faint);padding-left:8px;font-size:.6rem;font-weight:800}.nav-list{flex-direction:column;gap:4px;display:flex}.nav-item{border-radius:var(--radius);width:100%;min-height:44px;color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:10px;padding:8px 10px;font-size:.78rem;font-weight:700;transition:background .16s,color .16s,border-color .16s;display:flex}.nav-item:hover{background:var(--surface-1);color:var(--text-strong)}.nav-item:focus-visible{box-shadow:0 0 0 2px var(--accent-glow);border-color:color-mix(in srgb, var(--accent) 55%, transparent);outline:none}.nav-item.active{color:var(--text-strong);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 82%, transparent), color-mix(in srgb, var(--accent-2) 62%, transparent));border-color:color-mix(in srgb, var(--accent) 60%, transparent);box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 30%, transparent)}.nav-item.active .nav-icon{filter:drop-shadow(0 0 6px #0006)}.nav-icon{flex:none;font-size:1rem;line-height:1}.nav-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.workspace-nav.compact{align-items:center}.workspace-nav.compact .nav-title{display:none}.workspace-nav.compact .nav-item{justify-content:center;padding:8px}.workspace-nav.compact .nav-label{display:none}.workspace-nav.compact .nav-head{justify-content:center}.preview-stage{background:var(--bg-dark);grid-area:preview;min-width:0;min-height:0;position:relative;overflow:hidden}#viewport{z-index:0;position:absolute;inset:0}.preview-viewport{position:absolute;inset:0}.preview-overlay{z-index:6;justify-content:center;align-items:center;gap:var(--gap-3);padding:var(--gap-4);text-align:center;background:radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--accent) 12%, transparent), var(--bg-dark) 72%);flex-direction:column;display:flex;position:absolute;inset:0}.preview-overlay.error{background:radial-gradient(circle at 50% 42%, #fb4d6729, var(--bg-dark) 74%)}.preview-overlay .boot-text{color:var(--text-muted);letter-spacing:.06em;font-size:.86rem}.boot-error-icon{font-size:2rem}.boot-error-title{color:var(--text-strong);font-size:1rem;font-weight:800}.boot-error-msg{max-width:520px;color:var(--text-muted);font-size:.82rem}.preview-badge{z-index:8;align-items:center;gap:var(--gap-2);background:var(--panel-bg-strong);border:1px solid var(--border-mid);color:var(--text-muted);border-radius:999px;padding:5px 12px;font-size:.72rem;font-weight:700;display:inline-flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}.hud{z-index:var(--z-hud);justify-content:space-between;align-items:flex-end;gap:var(--gap-3);padding:var(--gap-3);pointer-events:none;display:flex;position:absolute;inset:auto 0 0}.hud-cluster{flex-wrap:wrap;gap:6px;display:flex}.hud-side{align-items:center;gap:6px;display:flex}.hud .hud-chip,.hud-side .icon-btn,.hud-side .badge-pill{pointer-events:auto}.hud-spectrum{border-radius:var(--radius);border:1px solid var(--border-soft);backdrop-filter:blur(8px);background:#02040a80;padding:2px 6px}.inspector{border-left:1px solid var(--border-soft);background:linear-gradient(180deg, #ffffff0a, #ffffff03 30%), var(--panel-bg);backdrop-filter:blur(22px);flex-direction:column;grid-area:inspector;min-width:0;min-height:0;display:flex;position:relative}.inspector.collapsed{padding:var(--gap-2) 0;align-items:center}.inspector-resize{cursor:col-resize;z-index:3;touch-action:none;width:6px;position:absolute;top:0;bottom:0;left:-3px}.inspector-resize:hover,.inspector-resize:focus-visible{background:color-mix(in srgb, var(--accent) 40%, transparent);outline:none}.inspector-head{justify-content:space-between;align-items:flex-start;gap:var(--gap-2);padding:var(--gap-3) var(--gap-3) 10px;border-bottom:1px solid var(--border-soft);display:flex}.inspector-head:focus-visible{box-shadow:inset 0 0 0 2px var(--accent-glow);outline:none}.inspector-title{gap:10px;min-width:0;display:flex}.inspector-title h2{letter-spacing:-.01em;margin:0;font-size:.94rem}.inspector-icon{font-size:1.15rem;line-height:1.2}.inspector-hint{color:var(--text-muted);margin:2px 0 0;font-size:.7rem}.inspector-body{overscroll-behavior:contain;gap:var(--gap-4);min-height:0;padding:var(--gap-3);scroll-behavior:smooth;flex-direction:column;flex:auto;display:flex;overflow-y:auto}.inspector-body::-webkit-scrollbar{width:6px}.inspector-body::-webkit-scrollbar-thumb{background:#a0b4e633;border-radius:999px}.section-head{justify-content:space-between;align-items:center;gap:var(--gap-2);display:flex}.section-head h3{margin:0}.transport-bar{align-items:center;gap:var(--gap-3);padding:0 var(--gap-3);border-top:1px solid var(--border-soft);background:linear-gradient(180deg, #ffffff08, #ffffff03), var(--panel-bg);backdrop-filter:blur(18px);grid-area:transport;min-width:0;display:flex}.transport-group{align-items:center;gap:6px;display:flex}.transport-track{min-width:0;max-width:13.75rem}.track-button{border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface-1);min-height:40px;color:var(--text-strong);font:inherit;text-align:left;cursor:pointer;flex-direction:column;gap:1px;max-width:100%;padding:5px 10px;display:flex}.track-button:hover{background:var(--surface-2);border-color:var(--border-mid)}.track-label{text-transform:uppercase;letter-spacing:.14em;color:var(--text-faint);font-size:.56rem;font-weight:800}.track-name{white-space:nowrap;text-overflow:ellipsis;font-size:.76rem;font-weight:700;overflow:hidden}.transport-seek{align-items:center;gap:var(--gap-2);flex:13.75rem;min-width:7.5rem;display:flex}.transport-hint{color:var(--text-faint);font-size:.72rem}.progress-time{font-family:var(--font-mono);color:var(--text-muted);text-align:center;min-width:42px;font-size:.7rem}.transport-volume{flex:none;width:11.25rem}.transport-volume .field{padding:6px 10px}.transport-volume .slider-row{gap:6px}.transport-mode{flex:none;width:10.625rem}.transport-mode .field{padding:6px 10px}.transport-source{flex:none}.transport-timeline{align-items:center;gap:6px;max-width:34vw;padding-bottom:2px;display:flex;overflow-x:auto}.timeline-chip{border:1px solid var(--border-soft);background:var(--surface-1);color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:0;padding:0;font-size:.7rem;font-weight:700;display:inline-flex;overflow:hidden}.timeline-chip-main{min-height:26px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;min-width:0;padding:3px 4px 3px 9px;font-weight:700;display:inline-flex}.timeline-chip:hover{color:var(--text-strong);background:var(--surface-2)}.timeline-chip.active{color:var(--text-strong);border-color:color-mix(in srgb, var(--accent) 55%, transparent);background:color-mix(in srgb, var(--accent) 22%, transparent)}.timeline-index{font-family:var(--font-mono);opacity:.75;font-size:.62rem}.timeline-name{text-overflow:ellipsis;max-width:8.125rem;overflow:hidden}.timeline-remove{color:var(--text-faint);border:0;border-left:1px solid var(--border-soft);cursor:pointer;background:0 0;border-radius:0 999px 999px 0;padding:2px 8px 2px 4px}.timeline-remove:hover{color:var(--err);background:#fb4d6729}.timeline-remove:focus-visible{box-shadow:0 0 0 2px var(--accent-glow);border-radius:0 999px 999px 0;outline:none}.status-bar{align-items:center;gap:var(--gap-3);padding:0 var(--gap-3);border-top:1px solid var(--border-soft);color:var(--text-muted);background:#02040a99;grid-area:status;font-size:.7rem;display:flex;overflow:hidden}.status-cell{white-space:nowrap;align-items:center;gap:6px;min-width:0;display:inline-flex}.status-cell.grow{flex:auto;min-width:0}.status-key{text-transform:uppercase;letter-spacing:.12em;color:var(--text-faint);font-size:.56rem;font-weight:800}.status-val{color:var(--text-muted);font-weight:700}.status-val.message{text-overflow:ellipsis;white-space:nowrap;color:var(--text-strong);overflow:hidden}.state-box{border-radius:var(--radius);border:1px dashed var(--border-mid);background:var(--surface-1);color:var(--text-muted);flex-direction:column;align-items:flex-start;gap:8px;padding:14px;font-size:.78rem;display:flex}.state-box.loading{border-style:solid;flex-direction:row;align-items:center}.state-box.error{border-color:color-mix(in srgb, var(--err) 45%, transparent);background:color-mix(in srgb, var(--err) 8%, transparent)}.state-icon{font-size:1.2rem}.state-title{color:var(--text-strong);font-size:.82rem}.state-hint{font-size:.74rem}.state-detail{font-family:var(--font-mono);white-space:pre-wrap;color:var(--text-err-soft);margin:0;font-size:.68rem}.state-action{margin-top:4px}.divider{border:0;border-top:1px solid var(--border-soft);margin:4px 0}.divider-row{align-items:center;gap:10px;display:flex}.divider-line{background:var(--border-soft);flex:auto;height:1px}.divider-label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);font-size:.62rem;font-weight:800}.file-picker-status{color:var(--text-muted);align-items:center;gap:6px;font-size:.74rem;display:inline-flex}.file-picker-status.empty{color:var(--text-faint)}.file-picker-name{text-overflow:ellipsis;white-space:nowrap;max-width:13.75rem;overflow:hidden}.text-input,.number-input,.select-input{border-radius:var(--radius-sm);border:1px solid var(--border-soft);width:100%;min-height:34px;color:var(--text-strong);font:inherit;background:#02050c8c;padding:7px 10px;font-size:.78rem}.text-input:focus-visible,.number-input:focus-visible,.select-input:focus-visible{border-color:color-mix(in srgb, var(--accent) 60%, transparent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.select-input{cursor:pointer}.select-input option{background:var(--bg-elev);color:var(--text)}.slider-row{align-items:center;gap:var(--gap-2);display:flex}.slider-row .range-input{flex:auto;min-width:0}.number-input-wrap{flex:none;align-items:center;gap:4px;display:inline-flex}.number-input{width:4.5rem;font-family:var(--font-mono);text-align:right;padding:5px 6px;font-size:.74rem}.number-unit,.field-hint{color:var(--text-faint);font-size:.68rem}.toggle-row{gap:4px;display:grid}.toggle{cursor:pointer;color:var(--text-strong);align-items:center;gap:10px;font-size:.78rem;display:inline-flex}.toggle input{opacity:0;width:1px;height:1px;position:absolute}.toggle-label{font-weight:600}.toggle.disabled{opacity:.45}.checkbox-row{color:var(--text-strong);cursor:pointer;align-items:center;gap:8px;font-size:.78rem;display:inline-flex}.checkbox-row.disabled{opacity:.45;cursor:not-allowed}.tooltip-wrap{display:inline-flex;position:relative}.tooltip-bubble{z-index:var(--z-overlay);border-radius:var(--radius-sm);border:1px solid var(--border-mid);color:var(--text-strong);white-space:nowrap;opacity:0;pointer-events:none;box-shadow:var(--shadow-sm);background:#040710f5;padding:5px 9px;font-size:.68rem;font-weight:600;transition:opacity .14s,transform .14s;position:absolute;transform:translateY(4px)}.tooltip-wrap[data-side=top] .tooltip-bubble{bottom:calc(100% + 6px);left:50%;transform:translate(-50%,4px)}.tooltip-wrap[data-side=bottom] .tooltip-bubble{top:calc(100% + 6px);left:50%;transform:translate(-50%,-4px)}.tooltip-wrap:hover .tooltip-bubble,.tooltip-wrap:focus-within .tooltip-bubble{opacity:1;transform:translate(-50%)}.tooltip-wrap[data-side=top]:hover .tooltip-bubble,.tooltip-wrap[data-side=top]:focus-within .tooltip-bubble{transform:translate(-50%)}.modal{width:min(560px,100vw - 32px)}.modal.wide{width:min(760px,100vw - 32px)}.modal-head{justify-content:space-between;align-items:center;gap:var(--gap-3);border-bottom:1px solid var(--border-soft);padding:14px 16px 10px;display:flex}.modal-head h2{margin:0;font-size:1rem}.modal-body{padding:var(--gap-3) var(--gap-4);gap:var(--gap-4);max-height:min(70vh,640px);display:grid;overflow-y:auto}.modal-foot{justify-content:space-between;align-items:center;gap:var(--gap-3);border-top:1px solid var(--border-soft);padding:12px 16px;display:flex}.modal-actions{gap:var(--gap-2);display:flex}.modal .btn{flex:none}.wizard-progress{color:var(--text-muted);font-size:.72rem;font-weight:700}.confirm-body{color:var(--text-muted);gap:8px;font-size:.84rem;display:grid}.confirm-body p{margin:0}.toast-host{right:16px;bottom:calc(var(--status-h) + 16px);z-index:var(--z-toast);flex-direction:column;gap:8px;max-width:min(380px,100vw - 32px);display:flex;position:fixed}.toast{border-radius:var(--radius);border:1px solid var(--border-mid);box-shadow:var(--shadow);color:var(--text-strong);animation:toastIn .2s var(--ease);background:#080c18f5;align-items:center;gap:10px;padding:10px 12px;font-size:.78rem;display:flex}.toast.success{border-color:color-mix(in srgb, var(--ok) 45%, transparent)}.toast.warning{border-color:color-mix(in srgb, var(--warn) 45%, transparent)}.toast.error{border-color:color-mix(in srgb, var(--err) 50%, transparent)}.toast-msg{flex:auto}.toast-close{color:var(--text-faint);cursor:pointer;background:0 0;border:0;padding:2px 4px}.toast-close:hover{color:var(--text-strong)}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.wizard-steps{flex-wrap:wrap;gap:6px;display:flex}.wizard-pill{border:1px solid var(--border-soft);background:var(--surface-1);color:var(--text-faint);border-radius:999px;padding:4px 10px;font-size:.66rem;font-weight:700}.wizard-pill.active{color:var(--text-strong);border-color:color-mix(in srgb, var(--accent) 55%, transparent);background:color-mix(in srgb, var(--accent) 24%, transparent)}.wizard-body{gap:var(--gap-3);display:grid}.wizard-card{border-radius:var(--radius);border:1px solid var(--border-soft);background:var(--surface-1);color:var(--text-strong);font:inherit;text-align:left;cursor:pointer;gap:4px;padding:14px;display:grid}.wizard-card:hover{background:var(--surface-2);border-color:var(--border-mid)}.wizard-card.active{border-color:color-mix(in srgb, var(--accent) 55%, transparent);background:color-mix(in srgb, var(--accent) 14%, transparent)}.wizard-card span{color:var(--text-muted);font-size:.76rem}.wizard-summary{gap:8px;display:grid}.wizard-summary>div{justify-content:space-between;gap:var(--gap-3);font-size:.78rem;display:flex}.wizard-summary span{color:var(--text-muted)}.overview-grid{gap:var(--gap-2);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.overview-card{border-radius:var(--radius);border:1px solid var(--border-soft);background:var(--surface-1);color:var(--text-strong);font:inherit;text-align:left;cursor:pointer;gap:3px;padding:12px;transition:background .16s,border-color .16s;display:grid}.overview-card:hover{background:var(--surface-2);border-color:var(--border-mid)}.overview-card:focus-visible{box-shadow:0 0 0 2px var(--accent-glow);outline:none}.overview-icon{font-size:1.1rem}.overview-key{text-transform:uppercase;letter-spacing:.14em;color:var(--text-faint);font-size:.58rem;font-weight:800}.overview-value{font-size:.84rem;font-weight:700}.overview-desc{color:var(--text-muted);font-size:.7rem}.overview-status{gap:8px;display:grid}.status-line{align-items:center;gap:var(--gap-2);font-size:.78rem;display:flex}.overview-steps{color:var(--text-muted);gap:6px;margin:0;padding-left:20px;font-size:.78rem;display:grid}.scene-detail{border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);background:color-mix(in srgb, var(--accent) 9%, transparent);gap:8px;padding:12px;display:grid}.scene-detail-head{align-items:flex-start;gap:10px;display:flex}.scene-detail-icon{font-size:1.4rem;line-height:1}.scene-detail-name{font-size:.88rem;display:block}.scene-detail-desc{color:var(--text-muted);margin-top:2px;font-size:.74rem;display:block}.scene-detail-meta{flex-wrap:wrap;gap:6px;display:flex}.app-fallback{justify-content:center;align-items:center;gap:var(--gap-3);height:100%;padding:var(--gap-4);text-align:center;color:var(--text-muted);flex-direction:column;display:flex}.app-fallback h1{color:var(--text-strong);margin:0;font-size:1.1rem}.mono{font-family:var(--font-mono);font-size:.72rem}.hint.ok{color:var(--ok)}.hint.warn{color:var(--warn)}.hint.error{color:var(--err)}.spinner.tiny{width:20px;height:20px}.spinner.tiny:before,.spinner.tiny:after{border-width:1.5px}.mode-fade{pointer-events:none}@media (width<=1500px){:root{--inspector-w:23.75rem;--nav-w:12.25rem}}@media (width<=1280px){:root{--inspector-w:21.25rem;--nav-w:11rem;--topbar-h:3.5rem}.topbar-bpm,.perf-full{display:none}.perf-compact{display:inline}.save-time{display:none}.project-name{max-width:120px}.topbar.recording .topbar-perf,.transport-timeline{display:none}.transport-volume{width:8.125rem}.transport-mode{width:8.75rem}}@media (width<=1080px){:root{--inspector-w:20rem;--nav-w:4rem}.nav-label{display:none}.workspace-nav{align-items:center}.nav-item{justify-content:center;padding:8px}.nav-title{display:none}.brand-text strong{font-size:.8rem}.transport-track{max-width:8.125rem}.topbar-actions .btn-label,.btn-clean,.btn-fullscreen{display:none}.project-name{max-width:100px}}@media (width<=900px){#app.studio{grid-template-rows:var(--topbar-h) minmax(0, 1fr) auto var(--status-h)}.studio-body{grid-template-columns:64px minmax(0,1fr)}.inspector{z-index:30;width:min(360px,92vw);position:absolute;top:0;bottom:0;right:0}.inspector.collapsed{width:2.5rem}.transport-bar{flex-wrap:wrap;gap:8px;height:auto;padding:6px 10px}.transport-volume,.transport-mode{width:8.25rem}.topbar-perf{display:none}.project-name{max-width:96px}}@media (width<=480px){.project-label{display:none}}@media (height<=700px){:root{--topbar-h:3.25rem;--transport-h:3.5rem;--status-h:1.875rem}.nav-item{min-height:38px}}:root.reduced-motion .brand-ring,:root.reduced-motion .brand-ring,:root.reduced-motion #app:after,:root.reduced-motion .spinner:before,:root.reduced-motion .spinner:after,:root.reduced-motion .live-dot.rec,:root.reduced-motion .learn-chip.armed,:root.reduced-motion .badge-pill.live .badge-icon,:root.reduced-motion .hud-chip.obs .hud-value,:root.reduced-motion .hud-chip.loading,:root.reduced-motion .toast{animation:none!important}:root.reduced-motion .inspector-body{scroll-behavior:auto}.analysis-status{gap:10px;display:grid}.analysis-row{flex-wrap:wrap;gap:6px;display:flex}.analysis-bands{gap:6px;display:grid}.analysis-band{grid-template-columns:74px minmax(0,1fr) 54px;align-items:center;gap:8px;font-size:.7rem;display:grid}.band-label{color:var(--text-muted);font-weight:700}.band-track{border:1px solid var(--border-soft);background:#ffffff12;border-radius:999px;height:7px;overflow:hidden}.band-fill{background:linear-gradient(90deg, var(--accent), var(--accent-2));border-radius:999px;height:100%;transition:width .12s linear}.band-value{font-variant-numeric:tabular-nums;font-family:var(--font-mono);color:var(--accent-2);text-align:right;font-size:.66rem}.state-box+.analysis-status{margin-top:4px}.preset-list{gap:6px;display:grid}.preset-row{border-radius:var(--radius-sm);background:var(--surface-1);border:1px solid #0000;align-items:center;gap:4px;padding:4px 6px;display:flex}.preset-row:hover{border-color:var(--border-mid)}.preset-row.active{border-color:color-mix(in srgb, var(--accent) 55%, transparent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.preset-row .text-input{flex:auto;min-width:0}.preset-name{min-width:0;color:var(--text-strong);font:inherit;text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;flex:auto;align-items:center;gap:6px;padding:6px 4px;font-size:.78rem;font-weight:600;display:flex;overflow:hidden}.preset-name:hover,.preset-name[aria-pressed=true]{color:var(--accent-2)}.color-row{gap:10px;display:grid}.color-pick{color:var(--text-muted);grid-template-columns:1fr 44px;grid-template-areas:"label swatch""value value";align-items:center;gap:6px 10px;font-size:.76rem;display:grid}.color-pick>span:first-child{grid-area:label}.color-pick input[type=color]{border:1px solid var(--border-mid);border-radius:var(--radius-sm);cursor:pointer;background:0 0;grid-area:swatch;width:44px;height:28px;padding:0}.color-pick input[type=color]::-webkit-color-swatch-wrapper{padding:2px}.color-pick input[type=color]::-webkit-color-swatch{border:0;border-radius:4px}.color-value{font-variant-numeric:tabular-nums;font-family:var(--font-mono);color:var(--accent-2);text-align:right;grid-area:value;font-size:.66rem}.popover-wrap{display:inline-flex;position:relative}.popover-trigger{cursor:pointer;display:inline-flex}.popover-content{z-index:var(--z-overlay);min-width:200px;max-width:min(360px,100vw - 32px);padding:var(--gap-3);border-radius:var(--radius);border:1px solid var(--border-mid);box-shadow:var(--shadow);backdrop-filter:blur(20px);color:var(--text);gap:var(--gap-2);background:#080c18f7;font-size:.78rem;display:grid;position:absolute}.popover-wrap[data-side=bottom] .popover-content{top:calc(100% + 6px);left:0}.popover-wrap[data-side=top] .popover-content{bottom:calc(100% + 6px);left:0}.popover-content:focus-visible{box-shadow:var(--shadow), 0 0 0 2px var(--accent-glow);outline:none}.shader-category{gap:4px;display:grid}.shader-category>strong{text-transform:uppercase;letter-spacing:.12em;color:var(--text-faint);font-size:.62rem}.shader-category-items{flex-wrap:wrap;gap:4px;display:flex}.popover-content .learn-chip{padding:4px 8px;font-size:.68rem}.popover-content .text-input{font-size:.74rem}.overview-swatches{gap:4px;margin-top:4px;display:inline-flex}.overview-swatch{border:1px solid #ffffff2e;border-radius:3px;width:18px;height:10px}.preview-tools{z-index:14;align-items:center;gap:6px;display:flex;position:absolute;top:12px;right:12px}.layout-diag-list{text-align:left;gap:6px;width:100%;max-width:560px;margin:0;padding:0;list-style:none;display:grid}.layout-diag-list li{border-radius:var(--radius-sm);border:1px solid color-mix(in srgb, var(--err) 35%, transparent);background:#fb4d671f;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;padding:6px 10px;font-size:.76rem;display:flex}.layout-diag-list code{font-family:var(--font-mono);color:var(--text-err-soft);font-size:.7rem}[data-testid=layout-diagnostic]{z-index:24}.boot-slow{margin-top:var(--gap-3);max-width:520px;padding:var(--gap-3);border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--warn) 40%, transparent);background:color-mix(in srgb, var(--warn) 10%, transparent);text-align:left;gap:10px;display:grid}.boot-slow>p{color:var(--text-warn-soft);margin:0;font-weight:700}.boot-slow-list{color:var(--text-muted);gap:4px;margin:0;padding-left:20px;font-size:.78rem;display:grid}.export-tabpanel[hidden]{display:none!important}
