@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-ext-wght-normal-DCwSJGxG.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-wght-normal-D_ZTVpCC.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.music-rate-control{grid-column:1 / -1;display:grid;gap:7px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--cyan) 20%,var(--line))}.music-rate-label{color:var(--ink-soft);font-size:.66rem;font-weight:690}.music-rate-options{display:flex;flex-wrap:wrap;gap:4px;padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--surface-muted)}.music-rate-option{flex:1 1 auto;min-width:58px;padding:6px 9px;border:1px solid transparent;border-radius:6px;background:none;color:var(--ink-soft);font:inherit;font-size:.66rem;font-weight:640;white-space:nowrap;cursor:pointer;transition:background .14s ease,color .14s ease,border-color .14s ease}.music-rate-option:hover:not(:disabled):not(.selected){background:color-mix(in srgb,var(--cyan-soft) 55%,transparent)}.music-rate-option.selected{border-color:var(--cyan-dark);background:var(--surface-raised);color:var(--ink)}.music-rate-option:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}.music-rate-option:disabled{cursor:not-allowed;opacity:.48}.switch{position:relative;display:inline-block;flex:0 0 auto;width:44px;height:24px;margin:0;padding:0;vertical-align:middle}.switch>input{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;border-radius:999px;background:transparent;opacity:0;cursor:pointer}.switch>.switch-track{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;padding:0;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface-muted);pointer-events:none;transition:background .16s ease,border-color .16s ease}.switch>.switch-track>.switch-knob{position:absolute;top:2px;left:2px;display:block;width:18px;height:18px;margin:0;border-radius:50%;background:var(--surface-raised);box-shadow:0 1px 4px #0b2a2d38;transition:transform .16s ease}.switch>input:checked~.switch-track{border-color:var(--cyan-dark);background:var(--cyan-dark)}.switch>input:checked~.switch-track>.switch-knob{transform:translate(20px)}.switch>input:hover:not(:disabled)~.switch-track{border-color:var(--cyan)}.switch>input:focus-visible~.switch-track{outline:2px solid var(--cyan);outline-offset:2px}.switch.switch-disabled>.switch-track{border-color:var(--line);background:color-mix(in srgb,var(--surface-muted) 62%,transparent)}.switch.switch-disabled>input:checked~.switch-track{border-color:color-mix(in srgb,var(--cyan-dark) 34%,var(--line));background:color-mix(in srgb,var(--cyan-dark) 34%,transparent)}.switch.switch-disabled>.switch-track>.switch-knob{background:color-mix(in srgb,var(--surface-raised) 74%,transparent);box-shadow:none}.switch.switch-disabled>input{cursor:not-allowed;opacity:0}.switch>.switch-spinner{position:absolute;top:50%;right:calc(100% + 8px);color:var(--ink-faint);transform:translateY(-50%)}@media(prefers-reduced-motion:reduce){.switch>.switch-track,.switch>.switch-track>.switch-knob{transition:none}}.effect-sync-control{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 16px;margin:15px 0 2px;padding:14px 15px;border:1px solid color-mix(in srgb,var(--cyan) 28%,var(--line));border-radius:11px;background:color-mix(in srgb,var(--cyan-soft) 58%,var(--surface))}.effect-sync-copy{min-width:0;display:grid;gap:3px}.effect-sync-copy strong{color:var(--ink);font-size:.76rem}.effect-sync-copy small{max-width:58ch;color:var(--ink-soft);font-size:.64rem;line-height:1.4}.effect-sync-bars{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--cyan) 20%,var(--line))}.effect-sync-bars>span{color:var(--ink-soft);font-size:.66rem;font-weight:690}.effect-sync-bars select{width:auto;min-width:112px;height:34px;padding-block:0;font-size:.67rem}.effect-sync-input-link,.effect-sync-indicator{grid-column:1 / -1;width:max-content;max-width:100%;font-size:.62rem;font-weight:700}.effect-sync-input-link{color:var(--cyan-dark);text-decoration:underline;text-underline-offset:2px}.effect-sync-indicator{color:var(--ink-faint);font-variant-numeric:tabular-nums}.effect-sync-indicator.locked{color:var(--green)}.effect-sync-indicator.warning{color:var(--amber)}.effect-parameter-follows-music{opacity:.48}.effect-parameter-follows-music small{color:var(--cyan-dark);font-weight:690}@media(max-width:560px){.effect-sync-control{padding:13px}}.effects-running{min-height:88px;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:14px;margin-bottom:12px;padding:16px 19px;border-color:color-mix(in srgb,var(--cyan) 22%,var(--line))}.effects-running>span{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface-muted)}.effects-running>span i{width:9px;height:9px;border-radius:50%;background:var(--ink-faint)}.effects-running.live>span i{background:var(--green);box-shadow:0 0 0 6px color-mix(in srgb,var(--green) 14%,transparent);animation:effect-status-pulse 2s ease-in-out infinite}.effects-running>div{min-width:0;display:grid;gap:2px}.effects-running small{color:var(--ink-faint);font-size:.59rem;font-weight:720;text-transform:uppercase;letter-spacing:.09em}.effects-running strong{font-size:1rem;letter-spacing:-.01em}.effect-stage-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.effect-stage-controls{min-width:0}.effect-preview-column{min-width:0;display:grid;gap:12px;justify-items:stretch}.output-preview-button{width:100%}.output-preview-button.active{color:#fff;border-color:#126f6b;background:#126f6b;box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 18%,transparent)}.effect-room-canvas{position:relative;width:100%;max-height:45vh;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#123b40;contain:layout paint}.effect-room-canvas canvas{display:block}.effect-library-tools{display:grid;grid-template-columns:auto minmax(240px,1fr);align-items:center;gap:12px}.effect-search{width:100%;margin:0;background:var(--surface)}.effect-filter{min-height:42px;display:inline-grid;grid-template-columns:1fr 1fr;gap:3px;padding:3px;border:1px solid var(--line);border-radius:11px;background:var(--surface-muted)}.effect-filter button{min-height:34px;padding:0 13px;border:0;border-radius:8px;color:var(--ink-faint);background:transparent;font-size:.68rem;font-weight:700;white-space:nowrap}.effect-filter button:hover{color:var(--ink)}.effect-filter button.active{color:var(--cyan-dark);background:var(--surface-raised);box-shadow:0 1px 4px #11282b1a}.effect-library{--effect-card-row: 104px;--card-section-max: calc(var(--effect-card-row) * 2 + 10px)}.effect-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:var(--effect-card-row);gap:10px}.effect-card{position:relative;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px;border:1px solid var(--line);border-radius:12px;color:var(--ink-soft);background:var(--surface-raised);text-align:left}.effect-card:hover{border-color:var(--line-strong);background:var(--surface)}.effect-card.selected{border-color:color-mix(in srgb,var(--cyan) 52%,var(--line));box-shadow:inset 0 -3px var(--cyan)}.effect-card.running{border-color:var(--cyan);background:var(--cyan-soft);box-shadow:inset 3px 0 0 var(--cyan-dark)}.effect-card.unavailable{opacity:.58}.effect-card.busy{opacity:.78}.effect-card.busy .effect-card-status{visibility:hidden}.effect-card-copy{min-width:0;display:grid;gap:4px}.effect-card-copy strong{overflow:hidden;color:var(--ink);font-size:.79rem;text-overflow:ellipsis;white-space:nowrap}.effect-card-copy small{color:var(--ink-faint);font-size:.64rem;line-height:1.35}.effect-card-status{justify-self:end;align-self:start;display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;color:var(--ink-faint);background:var(--surface-muted);font-size:.58rem;font-weight:740;line-height:1.5;white-space:nowrap}.effect-card-status.live{color:var(--cyan-dark);background:color-mix(in srgb,var(--surface-raised) 72%,transparent)}.effect-card-status.live:before{width:5px;height:5px;flex:0 0 auto;border-radius:999px;background:currentcolor;content:""}.effect-switch-note{margin:-7px 0 12px;color:color-mix(in srgb,var(--amber) 85%,var(--ink));font-size:.69rem;font-weight:650}.effect-preset-field>span{display:block;margin-bottom:7px;color:var(--ink-soft);font-size:.72rem;font-weight:650}.audio-effect-stage{max-width:820px}.effect-stage-layout .audio-effect-stage,.effect-stage-layout .effect-package-panel{max-width:none}.audio-effect-stage>.notice{margin-top:12px}.audio-effect-stage>.notice a{color:var(--cyan-dark);font-weight:720}.audio-preset-search{min-height:38px;margin:0 0 7px}.audio-preset-search input{height:34px}.audio-instrument{display:grid;gap:14px;margin:18px 0;padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--surface-muted)}.audio-instrument-picker,.audio-instrument-mix{display:grid;gap:7px;margin:0}.audio-instrument-picker strong,.audio-instrument-mix strong,.audio-instrument-shaping>strong{font-size:.8rem}.audio-instrument .effect-package-parameters{margin:0}.audio-instrument .effect-sync-control{margin:0;background:var(--surface)}.audio-instrument-shaping{display:grid;max-height:420px;gap:10px;overflow-y:auto}.audio-instrument-shaping-row{display:grid;grid-template-columns:minmax(88px,1fr) auto minmax(88px,1fr) minmax(120px,1.25fr) 78px 78px auto;align-items:end;gap:8px;padding-top:10px;border-top:1px solid var(--line)}.audio-instrument-shaping-row label{min-width:0;display:grid;gap:5px;margin:0}.audio-instrument-shaping-row label>span{color:var(--ink-faint);font-size:.61rem;font-weight:690}.audio-instrument-shaping-row select,.audio-instrument-shaping-row input[type=number]{min-width:0;height:38px}.audio-instrument-shaping-row input[type=range]{align-self:center;min-width:90px}.audio-instrument-arrow{align-self:center;color:var(--ink-faint)}.audio-instrument-remove{min-height:38px;padding-inline:11px}.audio-instrument-add{justify-self:start}.effect-package-panel{max-width:820px}.effect-package-parameters{display:grid;margin:17px 0 18px;border-top:1px solid var(--line)}.effect-package-row{display:contents}.effect-package-parameter{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:6px 12px;margin:0;padding:13px 0;border-bottom:1px solid var(--line)}.effect-package-parameter>span{min-width:0;display:grid;gap:2px}.effect-package-parameter strong{font-size:.75rem}.effect-package-parameter small{color:var(--ink-faint);font-size:.63rem;line-height:1.35}.effect-package-parameter output{display:inline-flex;align-items:center;justify-content:flex-end;gap:5px;align-self:center;color:var(--cyan-dark);font-size:.74rem;font-weight:730;font-variant-numeric:tabular-nums}.effect-package-parameter input[type=range],.effect-package-parameter select{grid-column:1 / -1}.effect-package-choice{grid-template-columns:minmax(0,1fr)}.effect-package-switch{grid-template-columns:minmax(0,1fr) auto;align-items:center}.effect-package-switch .switch{justify-self:end}.effect-package-segmented{display:flex;flex-wrap:wrap;gap:3px;padding:3px;border:1px solid var(--line);border-radius:11px;background:var(--surface-muted)}.effect-package-segmented button{min-height:32px;flex:1 1 auto;padding:0 12px;border:0;border-radius:8px;color:var(--ink-faint);background:transparent;font-size:.68rem;font-weight:700;white-space:nowrap}.effect-package-segmented button:hover:not(:disabled){color:var(--ink)}.effect-package-segmented button.selected{color:var(--cyan-dark);background:var(--surface-raised);box-shadow:0 1px 4px #11282b1a}@keyframes effect-status-pulse{50%{box-shadow:0 0 0 10px color-mix(in srgb,var(--green) 5%,transparent)}}@media(max-width:1050px){.effect-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.effect-stage-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:900px){.audio-instrument-shaping-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.audio-instrument-shaping-row>label:nth-of-type(n+3){grid-column:1 / -1}.audio-instrument-remove{grid-column:1 / -1;justify-self:start}}@media(max-width:760px){.effects-running{grid-template-columns:38px minmax(0,1fr);padding:14px}.effect-library{--effect-card-row: 88px}.effect-card-grid{grid-template-columns:1fr}.effect-library-tools{grid-template-columns:1fr;gap:8px}.effect-filter{width:100%}.effect-package-panel{padding:17px}}@media(prefers-reduced-motion:reduce){.effects-running.live>span i{animation:none}}.music-layout{display:grid;grid-template-columns:minmax(390px,1.05fr) minmax(340px,.95fr);align-items:start;gap:18px}.music-source,.music-analysis{padding:21px}.music-input-picker{display:grid;gap:7px;margin:15px 0 0}.music-input-picker>span{color:var(--ink-soft);font-size:.72rem;font-weight:650}.music-input-raw{margin:8px 0 0}.music-listening-control{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin:14px 0 2px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted)}.music-listening-control>span{color:var(--ink-soft);font-size:.72rem;font-weight:650}.music-effect-listening{display:flex;align-items:center;gap:8px;margin:14px 0 0;color:var(--green);font-size:.7rem;font-weight:680}.music-effect-listening i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px color-mix(in srgb,var(--green) 14%,transparent)}.music-history-preroll{fill:url(#music-history-preroll)!important}.audio-level-history #music-history-preroll path{stroke:#9dafac3d;stroke-width:1}.music-input-state{margin:15px 0 0;color:var(--ink);font-size:.82rem;font-weight:680}.music-tempo-readout{display:grid;align-items:center;gap:16px;margin:14px 0 12px;padding:16px;border:1px solid var(--line);border-radius:13px;background:var(--surface-muted)}.music-tempo-value{min-width:0;display:grid;gap:3px}.music-tempo-value small{color:var(--ink-faint);font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.music-tempo-value strong{color:var(--ink);font-size:1.15rem;font-variant-numeric:tabular-nums;letter-spacing:-.025em}.music-tempo-value span{color:var(--ink-faint);font-size:.63rem;line-height:1.35}.music-analysis .audio-input-instrument{margin:0}@media(max-width:900px){.music-layout{grid-template-columns:1fr}}@media(max-width:520px){.music-source,.music-analysis{padding:17px}}.members-card{margin-top:18px;padding:22px}.member-add{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;margin-top:16px}.role-descriptions{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:3px 10px;margin:18px 0 0;font-size:.68rem;line-height:1.5}.role-descriptions dt{color:var(--ink-soft);font-weight:650}.role-descriptions dd{margin:0;color:var(--ink-faint)}.member-list{max-height:40vh;margin-top:14px;border-top:1px solid var(--line)}.member-list>div{min-height:60px;display:grid;grid-template-columns:minmax(0,1fr) 128px auto;align-items:center;column-gap:10px;padding:9px 2px;border-bottom:1px solid var(--line)}.member-identity{min-width:0;display:grid}.member-identity>strong,.member-identity>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-identity>strong{font-size:.77rem;line-height:1.35}.member-identity>small{color:var(--ink-faint);font-size:.64rem;line-height:1.35}.member-list em{color:var(--ink-faint);font-size:.7rem;font-style:normal}.member-list select{width:100%;min-height:40px;height:40px}.member-list .text-button{justify-self:end;min-height:40px}@media(max-width:760px){.member-add{grid-template-columns:minmax(0,1fr)}.member-list{max-height:35vh}.member-list>div{grid-template-columns:minmax(0,1fr) 124px auto}.member-list select{padding-inline:9px}}:root{color-scheme:light dark;font-family:Figtree Variable,Figtree,ui-sans-serif,system-ui,sans-serif;font-synthesis:none;--ink: #10282d;--ink-soft: #53676a;--ink-faint: #7d8d8e;--paper: #f3f6f3;--surface: #fbfcf9;--surface-raised: #ffffff;--surface-muted: #e9efeb;--line: #d4deda;--line-strong: #b8c9c4;--nav: #10272c;--nav-raised: #18343a;--nav-ink: #e7f1ed;--cyan: #16a6a1;--cyan-dark: #087672;--cyan-soft: #d8efeb;--amber: #e3a546;--amber-soft: #f8ead1;--red: #c64c48;--red-soft: #f9e1df;--green: #2c936d;--green-soft: #dbf0e6;--shadow: 0 18px 48px rgb(26 54 56 / 8%);--shadow-tight: 0 8px 24px rgb(26 54 56 / 8%);--radius: 18px}@media(prefers-color-scheme:dark){:root{--ink: #e4eeeb;--ink-soft: #a1b3af;--ink-faint: #778a86;--paper: #0d181b;--surface: #122226;--surface-raised: #182b30;--surface-muted: #1a3034;--line: #294146;--line-strong: #3a575b;--nav: #091316;--nav-raised: #112529;--nav-ink: #e6f0ed;--cyan: #53cbc3;--cyan-dark: #36b6ae;--cyan-soft: #163d3c;--amber: #e8b65f;--amber-soft: #44351f;--red: #eb7771;--red-soft: #462522;--green: #69cca1;--green-soft: #173b2f;--shadow: 0 18px 48px rgb(0 0 0 / 20%);--shadow-tight: 0 8px 24px rgb(0 0 0 / 18%)}}*{box-sizing:border-box}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}html{min-width:320px;background:var(--paper)}body{min-width:320px;min-height:100vh;margin:0;color:var(--ink);background:var(--paper)}button,input,select,textarea{font:inherit}button,select{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb,var(--cyan) 48%,transparent);outline-offset:2px}a{color:inherit}h1,h2,h3,p{margin-top:0}.app-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:248px;display:flex;flex-direction:column;padding:24px 15px 18px;color:var(--nav-ink);background:var(--nav);border-right:1px solid rgb(255 255 255 / 6%)}.brand-lockup{display:flex;align-items:center;gap:11px;padding:0 9px;font-weight:730;letter-spacing:-.02em}.brand-lockup img{width:31px;height:31px}.sidebar nav{display:grid;gap:3px;margin-top:34px}.sidebar nav button{min-height:51px;display:grid;grid-template-columns:25px 1fr;align-items:center;gap:10px;padding:8px 11px;border:0;border-radius:12px;color:#a9bdb8;background:transparent;text-align:left;transition:background .15s ease,color .15s ease,transform .15s ease}.sidebar nav button:hover{color:#fff;background:#ffffff0f}.sidebar nav button.active{color:#fff;background:var(--nav-raised);box-shadow:inset 3px 0 var(--cyan)}.sidebar nav button:active{transform:translateY(1px)}.sidebar nav button span{display:flex;flex-direction:column;min-width:0}.sidebar nav button strong{font-size:.88rem;font-weight:660}.sidebar nav button small{margin-top:2px;color:#7f9893;font-size:.69rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sidebar nav button.active small{color:#9fb5b0}.status-dot{width:8px;height:8px;flex:0 0 auto;border-radius:999px;background:#718480;box-shadow:0 0 0 4px #ffffff0a}.status-dot.online{background:#65d9a7;box-shadow:0 0 0 4px #65d9a71f}.app-main{min-width:0;grid-column:2}.context-bar{position:sticky;top:0;z-index:20;min-height:68px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:10px 30px;background:color-mix(in srgb,var(--paper) 88%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.context-selectors{min-width:0;display:flex;align-items:center;gap:10px}.context-selectors label{min-width:0;display:flex;flex-direction:column;gap:1px}.context-selectors label span{color:var(--ink-faint);font-size:.61rem;font-weight:660;text-transform:uppercase;letter-spacing:.08em}.context-selectors select{max-width:240px;padding:1px 22px 1px 0;border:0;color:var(--ink);background:transparent;font-weight:650;outline:0;text-overflow:ellipsis}.context-divider{width:1px;align-self:stretch;margin:4px;background:var(--line)}.context-fact{min-width:0;display:flex;flex-direction:column;gap:1px}.context-fact>span{color:var(--ink-faint);font-size:.61rem;font-weight:660;text-transform:uppercase;letter-spacing:.08em}.context-fact strong{max-width:240px;overflow:hidden;color:var(--ink);font-weight:650;text-overflow:ellipsis;white-space:nowrap}.context-status{min-width:0;display:flex;flex-wrap:nowrap;align-items:center;justify-content:end;gap:9px}.control-feedback-slot{min-width:210px;max-width:210px;min-height:27px;display:flex;align-items:center;justify-content:flex-end;visibility:hidden}.control-feedback-slot.visible{visibility:visible}.control-feedback{min-height:27px;display:inline-flex;align-items:center;gap:6px;color:var(--ink-faint);font-size:.69rem;font-weight:650}.control-feedback i{width:7px;height:7px;border-radius:50%;background:currentColor}.control-feedback-pending i{animation:pulse 1s ease-in-out infinite}.control-feedback-applied{color:var(--green)}.control-feedback-failed{max-width:210px;overflow:hidden;color:var(--red);text-overflow:ellipsis;white-space:nowrap}.connected-via{color:var(--ink-soft);font-size:.72rem;white-space:nowrap}.connected-via strong{color:var(--ink);font-weight:700}.context-text-action{padding:4px 0;border:0;color:var(--cyan-dark);background:transparent;font-size:.7rem;font-weight:700}.context-blackout{min-height:38px;padding-inline:13px;color:var(--ink);background:var(--surface-raised);border-color:var(--line);white-space:nowrap}.context-blackout.blackout-active{color:#fff;background:var(--red);border-color:var(--red);box-shadow:0 7px 18px #c64c483d}.mobile-menu-button,.mobile-dock,.page-name-mobile{display:none}.page{position:relative;width:min(100%,1390px);min-height:calc(100vh - 68px);margin:0 auto;padding:39px clamp(24px,3.2vw,52px) 64px}.context-stream{min-width:0;min-height:38px;display:flex;align-items:center;gap:7px;padding:0 11px;color:var(--ink);background:var(--amber-soft);border:1px solid color-mix(in srgb,var(--amber) 48%,var(--line));border-radius:11px;font-size:.72rem;white-space:nowrap}.context-stream i{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--amber);animation:pulse 1s ease-in-out infinite}.context-stream-line{min-width:0;overflow:hidden;text-overflow:ellipsis}.context-stream strong{font-weight:780}.context-stream .context-text-action{flex:0 0 auto;margin-left:4px;font-size:.7rem}.operator-activity{position:absolute;z-index:1;top:12px;right:clamp(24px,3.2vw,52px);display:flex;align-items:center;justify-content:flex-end;gap:7px;min-height:22px;margin:0;color:var(--ink-faint);font-size:.69rem;font-weight:630;pointer-events:none}.operator-activity i{width:7px;height:7px;border-radius:50%;background:var(--green)}.operator-activity.editing{color:var(--cyan-dark)}.operator-activity.editing i{background:var(--cyan);animation:pulse 1s ease-in-out infinite}.screen-header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:27px}.screen-header h1{margin-bottom:7px;font-size:clamp(2rem,3vw,2.9rem);line-height:1;letter-spacing:-.045em}.screen-header>div>p:not(.screen-kicker){max-width:650px;margin-bottom:0;color:var(--ink-soft);font-size:.94rem;line-height:1.55}.screen-kicker{margin-bottom:7px;color:var(--cyan-dark);font-size:.66rem;font-weight:750;text-transform:uppercase;letter-spacing:.13em}.screen-actions{display:flex;flex:0 0 auto;gap:9px}.surface{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-tight)}.button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid transparent;border-radius:11px;font-weight:670;font-size:.82rem;text-decoration:none;transition:transform .14s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{color:#fff;background:var(--cyan-dark);box-shadow:0 7px 18px #08767233}.button-primary:hover:not(:disabled){background:color-mix(in srgb,var(--cyan-dark) 88%,black);box-shadow:0 9px 22px #08767245}.button-secondary{color:var(--ink);background:var(--surface-raised);border-color:var(--line)}.button-secondary:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface-muted)}.button-danger{color:#fff;background:var(--red)}.button-large{min-height:48px;width:100%;font-size:.88rem}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.icon-button{width:39px;height:39px;display:inline-grid;place-items:center;flex:0 0 auto;padding:0;border:1px solid var(--line);border-radius:11px;color:var(--ink-soft);background:var(--surface-raised)}.icon-button:hover:not(:disabled){color:var(--ink);border-color:var(--line-strong)}.text-button{padding:0;border:0;color:var(--cyan-dark);background:transparent;font-weight:680;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--cyan) 35%,transparent);text-underline-offset:3px}.danger-text,.danger-button{color:var(--red)}.danger-hover:hover{color:var(--red);border-color:color-mix(in srgb,var(--red) 40%,var(--line))}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.35;transform:scale(.78)}}.spinner{width:15px;height:15px;flex:0 0 auto;display:inline-block;border:2px solid currentcolor;border-right-color:transparent;border-radius:50%;opacity:.62;animation:spin .7s linear infinite}.busy-slot{width:15px;flex:0 0 auto;display:inline-grid;place-items:center}.busy-slot:not(.busy)>.spinner{visibility:hidden}.busy-overlay{position:absolute;inset:0;display:grid;place-items:center;border-radius:inherit;pointer-events:none}.busy-overlay .spinner{color:var(--cyan-dark)}.is-busy{opacity:.72}.is-pressed{transform:translateY(1px)}@media(prefers-reduced-motion:reduce){.spinner{border-right-color:currentcolor;opacity:.38;animation:none}.is-pressed{transform:none}}.card-section{--card-section-max: 40vh;display:grid;align-content:start;gap:12px;margin-bottom:18px;padding:18px}.card-section>.library-search{margin-top:0}.card-section-body{max-height:var(--card-section-max)}.card-section-note{margin:0}.section-heading{min-height:46px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.section-heading h2{margin-bottom:3px;font-size:1rem;letter-spacing:-.015em}.section-heading p{margin-bottom:0;color:var(--ink-faint);font-size:.74rem}.notice{display:flex;align-items:flex-start;gap:10px;margin-bottom:18px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;color:var(--ink-soft);background:var(--surface);font-size:.8rem;line-height:1.45}.notice-icon{display:grid;place-items:center;flex:0 0 auto;color:var(--cyan-dark)}.notice strong{display:block;margin-bottom:2px;color:var(--ink)}.notice-warning{border-color:color-mix(in srgb,var(--amber) 35%,var(--line));background:var(--amber-soft)}.notice-warning .notice-icon{color:var(--amber)}.notice-danger{border-color:color-mix(in srgb,var(--red) 35%,var(--line));background:var(--red-soft)}.notice-danger .notice-icon{color:var(--red)}.notice-success{background:var(--green-soft)}.empty-state{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;color:var(--ink-soft);text-align:center}.empty-icon{width:49px;height:49px;display:grid;place-items:center;margin-bottom:13px;color:var(--cyan-dark);background:var(--cyan-soft);border-radius:15px}.empty-state h2{margin-bottom:6px;color:var(--ink);font-size:.97rem}.empty-state p{max-width:360px;margin-bottom:17px;font-size:.78rem;line-height:1.5}.field-help,.setting-footnote{margin:0;color:var(--ink-faint);font-size:.7rem;line-height:1.5}.form-error{margin:0;color:var(--red);font-size:.76rem;font-weight:620}label>span,fieldset legend{display:block;margin-bottom:7px;color:var(--ink-soft);font-size:.72rem;font-weight:650}input,select,textarea{min-height:43px;width:100%;padding:0 12px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--surface-raised)}input:hover,select:hover,textarea:hover{border-color:var(--line-strong)}input:focus,select:focus,textarea:focus{border-color:var(--cyan)}input[type=range]{min-height:auto;padding:0;border:0;accent-color:var(--cyan-dark);background:transparent}.input-with-icon,.password-field,.input-suffix{position:relative}.input-with-icon>svg{position:absolute;left:12px;top:13px;z-index:1;color:var(--ink-faint)}.input-with-icon input{padding-left:40px}.password-field button{position:absolute;top:2px;right:2px;width:39px;height:39px;display:grid;place-items:center;border:0;color:var(--ink-faint);background:transparent}.input-suffix span{position:absolute;right:11px;top:13px;margin:0;color:var(--ink-faint);font-size:.71rem}.input-suffix input{padding-right:42px}.signin-shell{min-height:100vh;display:grid;place-items:center;padding:28px;background:var(--paper)}.signin-card{width:min(100%,440px);padding:clamp(28px,5vw,42px);background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.brand-lockup-large{justify-content:center;padding:0 0 34px;font-size:1rem}.brand-lockup-large img{width:39px;height:39px}.signin-form{width:min(100%,400px);display:grid;gap:19px}.signin-form header h1{margin:0 0 3px;font-size:2rem;letter-spacing:-.04em;text-align:center}.form-divider{display:flex;align-items:center;gap:10px;color:var(--ink-faint);font-size:.68rem}.form-divider:before,.form-divider:after{content:"";height:1px;flex:1;background:var(--line)}.google-mark{width:19px;height:19px;display:grid;place-items:center;border-radius:50%;color:#fff;background:conic-gradient(#4285f4,#34a853,#fbbc05,#ea4335,#4285f4);font-weight:800;font-size:.68rem}.form-note{margin:-3px 0 0;color:var(--ink-faint);font-size:.7rem;line-height:1.45;text-align:center}.signin-alt{display:flex;justify-content:space-between;gap:12px}.signin-alt-single{justify-content:center}.signin-alt button{min-height:auto;padding:0;border:0;color:var(--ink-soft);background:transparent;font-size:.76rem;font-weight:650}.signin-alt button:hover{color:var(--ink)}.controller-list-surface{--card-section-max: 385px}.controller-list{display:grid;gap:7px}.controller-row-shell{position:relative}.controller-row{width:100%;min-height:64px;display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:11px;padding:8px 11px;border:1px solid transparent;border-radius:12px;color:var(--ink);background:transparent;text-align:left}.controller-row:hover{background:var(--surface-muted)}.controller-row.selected{border-color:color-mix(in srgb,var(--cyan) 45%,var(--line));background:var(--cyan-soft)}.controller-row.renamable{padding-right:52px}.controller-rename-trigger{position:absolute;top:50%;right:10px;width:32px;height:32px;display:grid;place-items:center;translate:0 -50%;border:1px solid transparent;border-radius:9px;color:var(--ink-faint);background:transparent;opacity:.55}.controller-row-shell:hover .controller-rename-trigger,.controller-rename-trigger:focus-visible{border-color:var(--line);color:var(--cyan-dark);background:var(--surface-raised);opacity:1}.controller-rename-trigger:focus-visible{outline:2px solid color-mix(in srgb,var(--cyan) 60%,transparent);outline-offset:2px}.controller-rename-form{border-color:color-mix(in srgb,var(--cyan) 55%,var(--line));background:var(--cyan-soft)}.controller-rename-form:hover{background:var(--cyan-soft)}.controller-rename-form.invalid{border-color:color-mix(in srgb,var(--red) 60%,var(--line))}.controller-rename-copy{gap:3px}.controller-rename-copy input{width:100%;min-height:34px;padding:6px 9px;border-color:color-mix(in srgb,var(--cyan) 50%,var(--line));background:var(--surface-raised);font-size:.82rem;font-weight:680}.controller-rename-copy small{margin-top:0}.controller-rename-copy small.rename-error{color:var(--red)}.rename-save{min-height:32px;padding:0 10px;border:1px solid color-mix(in srgb,var(--cyan) 55%,var(--line));border-radius:9px;color:var(--cyan-dark);background:var(--surface-raised);font-size:.68rem;font-weight:720}.rename-save:disabled{opacity:.55}.controller-glyph{width:40px;height:40px;display:grid;place-items:center;color:var(--ink-faint);background:var(--surface-muted);border-radius:12px}.controller-glyph.online{color:var(--green);background:var(--green-soft)}.controller-glyph.revoked{color:var(--red);background:var(--red-soft)}.controller-copy{min-width:0;display:flex;flex-direction:column}.controller-copy strong{overflow:hidden;font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}.controller-copy small{margin-top:3px;color:var(--ink-faint);font-size:.7rem}.selected-check{color:var(--cyan-dark)}.cloud-summary{display:grid;gap:1px;overflow:hidden;margin-top:auto;border:1px solid var(--line);border-radius:12px;background:var(--line)}.cloud-summary>div{min-width:0;padding:11px;background:var(--surface-muted)}.cloud-summary span,.cloud-summary strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cloud-summary span{margin-bottom:3px;color:var(--ink-faint);font-size:.62rem}.cloud-summary strong{font-size:.77rem}.bluetooth-support-note{margin:-13px 0 18px;color:var(--ink-faint);font-size:.72rem;line-height:1.45}.bluetooth-control-card{display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:18px;padding:14px 16px}.bluetooth-control-card>span{width:40px;height:40px;display:grid;place-items:center;color:#7561b2;background:color-mix(in srgb,#8b75ca 16%,var(--surface));border-radius:12px}.bluetooth-control-card>span.connected{color:var(--green);background:var(--green-soft)}.bluetooth-control-card>div{min-width:0}.bluetooth-control-card small,.bluetooth-control-card strong{display:block}.bluetooth-control-card small{color:var(--ink-faint);font-size:.62rem}.bluetooth-control-card strong{margin-top:2px;overflow:hidden;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.bluetooth-control-card p{margin:3px 0 0;color:var(--ink-soft);font-size:.67rem}.wifi-card{margin-top:18px;padding:22px}.wifi-unavailable{margin:17px 0 0;color:var(--ink-soft);font-size:.76rem}.wifi-network{margin:17px 0 0;font-size:.84rem;font-weight:650}.wifi-status-row{display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:14px}.wifi-status-row>span{width:40px;height:40px;display:grid;place-items:center;color:var(--ink-faint);background:var(--surface-muted);border-radius:12px}.wifi-status-row>span.connected{color:var(--green);background:var(--green-soft)}.wifi-status-row>div{min-width:0}.wifi-status-row strong,.wifi-status-row small{display:block}.wifi-status-row strong{overflow:hidden;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.wifi-status-row small{margin-top:3px;color:var(--ink-faint);font-size:.68rem}.connection-explainer{display:grid;grid-template-columns:1fr 85px 1fr;align-items:center;margin-top:20px;padding:23px 28px;border:1px solid var(--line);border-radius:var(--radius)}.connection-explainer>div:not(.explainer-bridge){display:grid;grid-template-columns:38px 1fr;column-gap:11px}.connection-explainer>div>span{width:37px;height:37px;grid-row:1 / 3;display:grid;place-items:center;color:var(--cyan-dark);background:var(--cyan-soft);border-radius:11px}.connection-explainer strong{font-size:.82rem}.connection-explainer p{margin:3px 0 0;color:var(--ink-soft);font-size:.72rem;line-height:1.42}.explainer-bridge{display:flex;justify-content:center;gap:5px}.explainer-bridge i{width:5px;height:5px;background:var(--line-strong);border-radius:50%}.modal-backdrop,.mobile-sheet-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;background:#020d0f8c;backdrop-filter:blur(7px)}.modal-backdrop{z-index:110}.modal{width:min(100%,540px);max-height:min(760px,calc(100vh - 40px));overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 90px #0000004d}.modal>header{min-height:63px;display:flex;align-items:center;justify-content:space-between;padding:12px 18px 12px 22px;border-bottom:1px solid var(--line)}.modal h2{margin:0;font-size:1.08rem}.modal-body{max-height:calc(100vh - 104px);overflow:auto;padding:22px}.setup-flow,.simple-form{display:grid;gap:17px}.setup-flow fieldset{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:0;padding:15px;border:1px solid var(--line);border-radius:12px}.setup-flow fieldset legend{padding:0 5px}.setup-flow fieldset legend span{color:var(--ink-faint);font-weight:450}.wifi-open-toggle{grid-column:1 / -1;display:flex;align-items:center;gap:8px;color:var(--ink-soft);font-size:.72rem;font-weight:650}.wifi-open-toggle input{width:16px;height:16px;margin:0;accent-color:var(--cyan-dark)}.setup-destination,.setup-progress{display:flex;align-items:center;gap:11px;padding:12px;border-radius:12px;background:var(--surface-muted)}.setup-destination>span,.setup-progress>span{width:35px;height:35px;display:grid;place-items:center;flex:0 0 auto;color:var(--cyan-dark);background:var(--cyan-soft);border-radius:10px}.setup-destination div,.setup-progress div{display:flex;flex-direction:column}.setup-destination small,.setup-progress small{color:var(--ink-faint)}.setup-progress.failed{color:var(--red);background:var(--red-soft)}.setup-progress .pulse{animation:softPulse 1.2s ease-in-out infinite}@keyframes softPulse{50%{transform:scale(.9);opacity:.6}}.now-playing{min-height:130px;display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:20px;padding:23px 25px;margin-bottom:18px;overflow:hidden}.now-playing-art{width:68px;height:68px;display:grid;place-items:center;color:#daf5ef;background:linear-gradient(145deg,#0c7774,#124149);border-radius:19px;box-shadow:inset 0 0 0 1px #ffffff1a,0 11px 24px #0b5c592e}.now-playing-copy{min-width:0}.now-playing-copy>span{display:block;margin-bottom:4px;color:var(--ink-faint);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.now-playing-copy h2{overflow:hidden;margin-bottom:14px;font-size:1.3rem;text-overflow:ellipsis;white-space:nowrap}.transport-progress{display:grid;grid-template-columns:1fr auto;align-items:center;gap:11px;color:var(--ink-faint);font-size:.65rem}.progress-track{height:4px;overflow:hidden;background:var(--surface-muted);border-radius:999px}.progress-track span{display:block;height:100%;background:var(--cyan);border-radius:inherit;transition:width .2s linear}.transport-controls{display:flex;align-items:center;gap:7px}.transport-button{border-radius:50%}.transport-button.main{width:52px;height:52px;color:#fff;background:var(--cyan-dark);border-color:var(--cyan-dark)}.loop-button{min-height:35px;display:flex;align-items:center;gap:6px;margin-left:5px;padding:0 10px;border:1px solid var(--line);border-radius:9px;color:var(--ink-soft);background:var(--surface-raised);font-size:.72rem}.loop-button.active{color:var(--cyan-dark);background:var(--cyan-soft);border-color:color-mix(in srgb,var(--cyan) 35%,var(--line))}.score-list{display:grid;gap:4px}.score-row{min-height:63px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:7px 11px;border:1px solid transparent;border-radius:12px}.score-row:hover{background:var(--surface-muted)}.score-row.current{border-color:color-mix(in srgb,var(--cyan) 35%,var(--line));background:var(--cyan-soft)}.score-play{width:38px;height:38px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;color:var(--cyan-dark);background:var(--surface-muted)}.score-row.current .score-play{color:#fff;background:var(--cyan-dark)}.score-title{min-width:0;display:flex;flex-direction:column}.score-title strong{overflow:hidden;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.score-title span{display:flex;align-items:center;gap:4px;margin-top:4px;color:var(--ink-faint);font-size:.68rem}.score-row-actions{min-width:30px;display:flex;align-items:center;justify-content:flex-end;gap:9px}.score-delete{width:35px;height:35px}.playing-bars{height:19px;display:flex;align-items:end;gap:2px}.playing-bars i{width:3px;height:45%;background:var(--cyan-dark)}.playing-bars i:nth-child(2){height:90%}.playing-bars i:nth-child(3){height:65%}.playing-bars:not(.playing) i{opacity:.45}.playing-bars.playing i{animation:bars .8s ease-in-out infinite alternate}.playing-bars.playing i:nth-child(2){animation-delay:-.4s}.playing-bars.playing i:nth-child(3){animation-delay:-.2s}@keyframes bars{to{height:95%}}.panel-layout{display:grid;grid-template-columns:minmax(380px,1.1fr) minmax(340px,.9fr);gap:18px}.fixture-browser{height:605px;display:flex;flex-direction:column;overflow:hidden;padding:21px}.live-rate{padding:5px 8px;border-radius:8px;color:var(--green);background:var(--green-soft);font-size:.66rem;font-weight:700}.group-strip{display:flex;gap:7px;overflow-x:auto;margin:10px 0 13px;padding-bottom:3px;scrollbar-width:thin}.group-strip button{min-height:32px;flex:0 0 auto;padding:0 11px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);background:transparent;font-size:.68rem;font-weight:620}.group-strip button.active{color:var(--cyan-dark);background:var(--cyan-soft);border-color:color-mix(in srgb,var(--cyan) 35%,var(--line))}.fixture-list{display:grid;gap:3px;overflow-y:auto;padding-right:3px}.fixture-list>button{min-height:57px;display:grid;grid-template-columns:29px 29px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 9px;border:1px solid transparent;border-radius:11px;color:var(--ink);background:transparent;text-align:left}.fixture-list>button:hover{background:var(--surface-muted)}.fixture-list>button.selected{border-color:color-mix(in srgb,var(--cyan) 35%,var(--line));background:var(--cyan-soft)}.fixture-number{color:var(--ink-faint);font-size:.63rem;font-variant-numeric:tabular-nums}.fixture-bulb{width:24px;height:24px;border:5px solid color-mix(in srgb,var(--fixture-color, #d2dcd8) 55%,var(--surface));border-radius:50%;background:color-mix(in srgb,var(--fixture-color, #d2dcd8) calc(var(--fixture-level, .1) * 100%),var(--surface-muted));box-shadow:0 0 12px color-mix(in srgb,var(--fixture-color, transparent) 28%,transparent)}.fixture-name{min-width:0;display:flex;flex-direction:column}.fixture-name strong{overflow:hidden;font-size:.79rem;text-overflow:ellipsis;white-space:nowrap}.fixture-name small{margin-top:3px;color:var(--ink-faint);font-size:.64rem}.fixture-level{color:var(--ink-soft);font-size:.71rem;font-variant-numeric:tabular-nums}.fixture-inspector{min-height:605px;overflow:hidden}.fixture-hero{position:relative;height:180px;display:grid;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:22px;overflow:hidden;padding:24px;color:color-mix(in srgb,var(--fixture-color, var(--cyan)) 72%,white);background:radial-gradient(circle at 22% 50%,color-mix(in srgb,var(--fixture-color, var(--cyan)) calc(var(--fixture-level, .1) * 50%),transparent),transparent 34%),#10282d}.fixture-hero:after{content:"";position:absolute;width:260px;height:260px;border:1px solid rgb(255 255 255 / 8%);border-radius:50%}.fixture-orbit{position:relative;z-index:1;width:79px;height:79px;display:grid;place-items:center;border:1px solid rgb(255 255 255 / 17%);border-radius:50%;box-shadow:0 0 35px currentColor}.fixture-hero>div:last-child{position:relative;z-index:1;min-width:0}.fixture-hero small{color:#ffffffa8;font-size:.61rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.fixture-hero h2{margin:6px 0 5px;color:#fff;font-size:.96rem;line-height:1.25}.fixture-hero p{margin:0;color:#ffffffa3;font-size:.7rem}.control-stack{display:grid;gap:24px;padding:22px}.range-control{display:grid;gap:9px}.range-control>span{display:flex;align-items:center;justify-content:space-between;margin:0}.range-control output{color:var(--cyan-dark);font-weight:720}.range-gradient{height:6px;display:block;margin-bottom:-18px;border-radius:99px;background:linear-gradient(90deg,var(--surface-muted),var(--cyan))}.color-control{display:grid;grid-template-columns:1fr 53px;align-items:center;gap:12px}.color-control>span{margin:0}.color-control input[type=color]{width:53px;height:43px;padding:4px}.inspector-actions{padding-top:4px;border-top:1px solid var(--line)}.scene-library-scroll{padding-bottom:2px}.scene-library-scroll>section:first-child{margin-top:0}.scene-favorite-group,.scene-all-group{margin-top:18px}.scene-group-heading{position:sticky;z-index:3;top:0;min-height:24px;display:flex;align-items:center;gap:7px;padding:9px 0 5px;color:var(--ink-soft);background:var(--surface)}.scene-group-heading h3{margin:0;color:var(--ink);font-size:.78rem}.scene-favorite-group .scene-group-heading{color:var(--amber)}.scene-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:13px}.scene-card{position:relative;min-width:0;min-height:90px;display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-raised)}.scene-card.current{border-color:var(--cyan);background:var(--cyan-soft);box-shadow:inset 3px 0 0 var(--cyan-dark)}.scene-card-name{min-width:0;display:flex;flex-direction:column}.scene-card-name strong{overflow:hidden;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.scene-card-name small{margin-top:3px;color:var(--ink-faint);font-size:.62rem}.scene-card.current .scene-card-name small{color:var(--cyan-dark);font-weight:700}.scene-favorite-toggle{width:37px;height:37px;display:grid;place-items:center;padding:0;border:1px solid transparent;border-radius:10px;color:var(--ink-faint);background:transparent}.scene-favorite-toggle:hover:not(:disabled),.scene-favorite-toggle.favorite{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 42%,var(--line));background:var(--amber-soft)}.scene-apply{min-height:35px;padding:0 11px}.scene-menu{position:relative}.scene-menu-popover{position:absolute;z-index:8;top:calc(100% + 5px);right:0;min-width:116px;display:grid;padding:5px;border:1px solid var(--line);border-radius:9px;background:var(--surface-raised);box-shadow:var(--shadow)}.scene-menu-popover button{min-height:34px;padding:0 9px;border:0;border-radius:6px;color:var(--ink-soft);background:transparent;text-align:left;font-size:.68rem;font-weight:680}.scene-menu-popover button:hover{background:var(--surface-muted)}.scene-rename{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px}.scene-rename input{min-width:0;height:36px}.library-search{min-height:42px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;margin-top:12px;padding:0 11px;border:1px solid var(--line);border-radius:10px;color:var(--ink-faint);background:var(--surface-muted)}.library-search input{min-width:0;height:38px;padding:0;border:0;background:transparent;box-shadow:none}.inner-scroll{--scroll-shadow-cover: var(--surface);overflow-y:auto;overscroll-behavior-x:contain;background:linear-gradient(var(--scroll-shadow-cover) 45%,color-mix(in srgb,var(--scroll-shadow-cover) 0%,transparent)) top / 100% 18px no-repeat local,linear-gradient(color-mix(in srgb,var(--scroll-shadow-cover) 0%,transparent),var(--scroll-shadow-cover) 55%) bottom / 100% 18px no-repeat local,radial-gradient(farthest-side at 50% 0,#10282d21,#10282d00) top / 100% 7px no-repeat scroll,radial-gradient(farthest-side at 50% 100%,#10282d21,#10282d00) bottom / 100% 7px no-repeat scroll}.room-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px}.room-canvas-surface{min-width:0;overflow:hidden}.room-toolbar{min-height:58px;display:flex;align-items:center;justify-content:space-between;padding:9px 13px 9px 18px;border-bottom:1px solid var(--line)}.room-toolbar>div:first-child{display:grid;grid-template-columns:auto auto;align-items:center;gap:3px 8px}.room-toolbar>div:first-child .status-dot{grid-row:1 / 3}.room-toolbar strong{font-size:.75rem}.room-toolbar small{color:var(--ink-faint);font-size:.64rem}.room-canvas{position:relative;height:min(650px,calc(100vh - 245px));min-height:440px;overflow:auto;background-color:#102025;background-image:linear-gradient(rgb(255 255 255 / 3%) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / 3%) 1px,transparent 1px);background-size:24px 24px}.room-canvas canvas{display:block;transform-origin:top left}.room-selection{min-height:440px;padding:20px}.selection-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--ink-faint);text-align:center}.selection-empty h2{margin:12px 0 5px;color:var(--ink);font-size:.95rem}.selection-empty p{margin:0;font-size:.73rem;line-height:1.45}.selection-heading{display:grid;grid-template-columns:44px 1fr;gap:11px;margin-bottom:29px}.selection-heading>span{width:42px;height:42px;display:grid;place-items:center;color:var(--cyan-dark);background:var(--cyan-soft);border-radius:12px}.selection-heading small,.selection-heading p{margin:0;color:var(--ink-faint);font-size:.64rem}.selection-heading h2{margin:2px 0;font-size:1rem}.selection-level{margin-bottom:26px}.selection-level>span{display:block;color:var(--ink-faint);font-size:.65rem}.selection-level strong{display:block;margin:3px 0 10px;font-size:2.4rem;letter-spacing:-.05em}.selection-level i{height:5px;display:block;background:var(--cyan);border-radius:99px}.selection-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:27px;padding-top:18px;border-top:1px solid var(--line)}.selection-meta span{min-width:0}.selection-meta small,.selection-meta strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selection-meta small{color:var(--ink-faint);font-size:.62rem}.selection-meta strong{margin-top:3px;font-size:.74rem}.panel-console{display:grid;grid-template-columns:minmax(268px,.66fr) minmax(0,2.6fr) minmax(206px,.48fr);align-items:start;gap:14px}.panel-column{min-width:0}.panel-column-selection{position:sticky;top:84px;display:grid;gap:14px}.panel-column-room{min-width:0;overflow:hidden}.panel-column-runs{position:sticky;top:84px;display:grid;gap:10px}.panel-column-runs .run-selection-aid{--card-section-max: calc(100vh - 230px) }.runs-disclosure{display:none}.panel-room-surface{min-width:0;overflow:hidden}.panel-room-toolbar{min-height:58px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:8px 12px;border-bottom:1px solid var(--line)}.panel-room-live{min-width:0;display:flex;align-items:center;gap:9px;white-space:nowrap}.panel-room-live>span:last-child{min-width:0;display:flex;flex-direction:column}.panel-room-live strong{font-size:.78rem}.panel-room-live small{margin-top:2px;color:var(--ink-faint);font-size:.64rem}.panel-room-tools{display:flex;flex-wrap:wrap;align-items:center;gap:6px 9px}.panel-room-tools>span{color:var(--ink-faint);font-size:.66rem;white-space:nowrap}.panel-room-tools>span strong{color:var(--ink);font-size:.78rem}.panel-room-tools>.text-button{min-height:30px;padding:0 2px;white-space:nowrap}.panel-room-canvas{position:relative;height:min(620px,calc(100vh - 392px));min-height:300px;overflow:hidden;background-color:#102025;background-image:linear-gradient(rgb(255 255 255 / 3%) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / 3%) 1px,transparent 1px);background-size:24px 24px;user-select:none}.panel-room-canvas canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}.selection-marquee{position:absolute;pointer-events:none;border:1px dashed #7be0d8;border-radius:3px;background:transparent;box-shadow:0 0 0 1px #0511146b}.pixel-tooltip{position:absolute;z-index:3;max-width:245px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:8px 10px;pointer-events:none;color:#e7f1ed;background:#051114eb;border:1px solid rgb(255 255 255 / 13%);border-radius:8px;box-shadow:0 8px 24px #00000038;font-size:.66rem;transform:translate(13px,13px);backdrop-filter:blur(9px)}.pixel-tooltip strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pixel-tooltip>span{color:#f4e7c2;font-variant-numeric:tabular-nums;font-weight:740}.pixel-tooltip small{grid-column:1 / -1;color:#91aaa5;line-height:1.3}.panel-control-rail{position:sticky;top:84px;display:grid;gap:14px}.selection-control{overflow:hidden}.selection-summary{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:11px;padding:18px 18px 15px;border-bottom:1px solid var(--line)}.selection-summary>span{width:40px;height:40px;display:grid;place-items:center;color:var(--cyan-dark);background:var(--cyan-soft);border-radius:11px}.selection-summary small,.selection-summary p{color:var(--ink-faint);font-size:.64rem}.selection-summary small{display:block;text-transform:uppercase;letter-spacing:.07em}.selection-summary h2{margin:2px 0;font-size:.96rem;line-height:1.25}.selection-summary p{margin:0;line-height:1.35}.selection-summary .selection-run-names{max-height:2.7em;overflow:hidden;color:var(--ink-soft)}.selection-summary .selection-attribution{margin-top:5px;color:var(--cyan-dark);font-weight:680}.selection-prompt{margin:0;padding:24px 18px;color:var(--ink-faint);font-size:.74rem;text-align:center}.selection-controls{display:grid;gap:16px;padding:18px}.history-controls{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5px;padding-bottom:12px;border-bottom:1px solid var(--line)}.history-controls button{min-height:34px;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line);border-radius:8px;color:var(--ink-soft);background:var(--surface-muted);font-size:.65rem;font-weight:690}.history-controls button:disabled{opacity:.4}.selection-intensity{display:grid;gap:11px}.selection-intensity>span{display:flex;align-items:flex-end;justify-content:space-between;margin:0}.selection-intensity strong{font-size:.8rem}.selection-intensity output{display:inline-flex;align-items:center;gap:8px;color:var(--cyan-dark);font-size:2rem;font-weight:740;letter-spacing:-.06em;line-height:.9}.selection-intensity>label{display:grid;gap:5px}.selection-intensity>label>span:first-child{margin:0;color:var(--ink-faint);font-size:.62rem;font-weight:650;text-transform:uppercase;letter-spacing:.06em}.selection-intensity>label>span:last-child{position:relative;display:block;margin:0}.selection-intensity>label input{width:100%;height:42px;padding-right:28px;font-weight:700;font-variant-numeric:tabular-nums}.selection-intensity>label i{position:absolute;top:12px;right:10px;color:var(--ink-faint);font-size:.7rem;font-style:normal}.vertical-intensity-control{height:238px;display:grid;grid-template-columns:56px minmax(58px,1fr);align-items:stretch;gap:14px}.vertical-fader{width:56px;min-width:56px;height:238px;display:grid;place-items:center;margin:0;border-radius:14px;background:var(--surface-muted);cursor:ns-resize;touch-action:none}.vertical-fader input[type=range]{width:56px;height:218px;margin:0;padding:0;writing-mode:vertical-lr;direction:rtl;accent-color:var(--cyan-dark);cursor:ns-resize;touch-action:none}.intensity-entry{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}.intensity-entry>label{display:grid;gap:5px}.intensity-entry>label>span:first-child{margin:0;color:var(--ink-faint);font-size:.62rem;font-weight:650;text-transform:uppercase;letter-spacing:.06em}.intensity-entry>label>span:last-child{position:relative;display:block;margin:0}.intensity-entry input{height:42px;padding-right:28px;font-weight:700;font-variant-numeric:tabular-nums}.intensity-entry label i{position:absolute;top:12px;right:10px;color:var(--ink-faint);font-size:.7rem;font-style:normal}.gradient-axis-rows{display:grid;gap:3px}.gradient-axis-row{position:relative;height:11px;display:flex;align-items:center}.gradient-axis-row i{position:absolute;left:calc(var(--start) * 100%);width:calc(var(--span) * 100%);height:3px;border-radius:2px;background:color-mix(in srgb,var(--cyan) 65%,transparent)}.gradient-axis-row span{position:absolute;left:calc(var(--start) * 100%);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-faint);font-size:.5rem;transform:translateY(6px)}.gradient-entry{padding-top:13px;border-top:1px solid var(--line)}.gradient-entry .button{width:100%}.intensity-presets{display:flex;flex-direction:column;justify-content:space-between;gap:5px}.intensity-presets button{min-width:58px;height:42px;padding:0 8px;border:1px solid var(--line);border-radius:9px;color:var(--ink-soft);background:var(--surface-muted);font-size:.7rem;font-weight:680}.intensity-presets button:hover{color:var(--cyan-dark);border-color:var(--cyan)}.tool-mode-toggle{padding-top:13px;border-top:1px solid var(--line)}.tool-mode-toggle button{width:100%;min-height:39px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:9px;color:var(--ink-soft);background:var(--surface-muted);font-size:.7rem;font-weight:720}.tool-mode-toggle button.active{color:var(--cyan-dark);border-color:color-mix(in srgb,var(--cyan) 50%,var(--line));background:var(--cyan-soft)}.gradient-editor{display:grid;gap:10px;padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--surface-muted)}.gradient-editor-heading{display:flex;align-items:start;justify-content:space-between;gap:9px}.gradient-editor-heading>span{display:grid;gap:2px}.gradient-editor-heading strong{font-size:.72rem}.gradient-editor-heading small,.gradient-delete-hint{color:var(--ink-faint);font-size:.58rem;line-height:1.35}.mirror-toggle{display:flex;align-items:center;gap:5px;color:var(--ink-soft);font-size:.62rem;font-weight:680;white-space:nowrap}.mirror-toggle input{width:14px;height:14px;margin:0;accent-color:var(--cyan-dark)}.gradient-bar{position:relative;height:31px;margin:12px 8px 0;border:1px solid rgb(13 36 38 / 25%);border-radius:7px;box-shadow:inset 0 0 0 1px #ffffff1f;cursor:crosshair;user-select:none;-webkit-user-select:none;touch-action:none}.gradient-stop{position:absolute;top:50%;width:18px;height:41px;padding:0;border:0;color:var(--ink-faint);background:transparent;transform:translate(-50%,-50%);touch-action:none}.gradient-stop:before{content:"";position:absolute;left:50%;top:2px;bottom:2px;width:1px;background:currentColor;transform:translate(-50%)}.gradient-stop i{position:absolute;left:50%;bottom:-2px;width:10px;height:10px;border:2px solid var(--surface-raised);border-radius:50%;background:rgb(calc(24 + var(--stop-level) * 231) calc(24 + var(--stop-level) * 215) calc(24 + var(--stop-level) * 178));box-shadow:0 0 0 1px var(--ink-faint);transform:translate(-50%)}.gradient-stop.active{color:var(--cyan-dark)}.gradient-stop.active i{box-shadow:0 0 0 2px var(--cyan)}.gradient-delete-hint{margin:-2px 0 0;text-align:center}.gradient-stop-level{display:grid}.gradient-stop-level label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px}.gradient-stop-level label span{color:var(--ink-faint);font-size:.59rem;font-weight:690}.gradient-stop-level input{min-width:0}.gradient-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.gradient-presets button{min-height:31px;padding:0 3px;border:1px solid var(--line);border-radius:7px;color:var(--ink-soft);background:var(--surface-raised);font-size:.57rem;font-weight:680}.gradient-apply{width:100%}.selection-actions{padding-top:16px;border-top:1px solid var(--line)}.run-selection-aid{--card-section-max: 355px}.run-selection-list{display:grid;gap:10px;padding-right:2px}.run-zone{display:grid;gap:2px}.run-zone-heading{min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 5px;border:0;color:var(--ink-faint);background:transparent;text-align:left}.run-zone-heading>span{display:flex;align-items:center;gap:5px;font-size:.61rem;font-weight:730;text-transform:uppercase;letter-spacing:.055em}.run-zone-heading small{font-size:.56rem}.run-row{min-width:0;min-height:45px;display:grid;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:8px;padding:5px 7px;border:1px solid transparent;border-radius:9px;color:var(--ink);background:transparent;text-align:left}.run-row:hover{background:var(--surface-muted)}.run-row.selected,.run-row.partial{border-color:color-mix(in srgb,var(--cyan) 40%,var(--line));background:var(--cyan-soft)}.run-row.partial{border-style:dashed}.run-line{position:relative;width:23px;height:1px;background:var(--ink-faint)}.run-line:before,.run-line:after{content:"";position:absolute;top:-3px;width:1px;height:7px;background:inherit}.run-line:before{left:0}.run-line:after{right:0}.run-row.selected .run-line,.run-row.partial .run-line{background:var(--cyan-dark)}.run-row>span:last-child{min-width:0;display:grid;gap:2px}.run-row strong{overflow:hidden;font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}.run-row small{color:var(--ink-faint);font-size:.58rem}.effects-layout{display:grid;grid-template-columns:minmax(390px,1.05fr) minmax(330px,.95fr);gap:18px}.effect-stage,.macro-surface{padding:21px}.health-good,.health-running,.health-active{color:var(--green);background:var(--green-soft)}.health-degraded,.health-warn{color:var(--amber);background:var(--amber-soft)}.effect-visual{min-height:195px;display:grid;grid-template-columns:.9fr 1.1fr;place-items:center;gap:18px;margin:11px 0 16px;overflow:hidden;padding:20px;color:#65958f;background:#102428;border-radius:15px}.effect-visual.active{color:#53d5ca;background:radial-gradient(circle,rgb(47 190 177 / 16%),transparent 55%),#102428}.effect-visual>div:last-child{min-width:0;display:grid;gap:4px}.effect-visual>div:last-child span,.effect-visual>div:last-child strong,.effect-visual>div:last-child small{display:block}.effect-visual>div:last-child span{color:#8fb8b3;font-size:.7rem}.effect-visual>div:last-child strong{color:#dceae7;font-size:1rem}.effect-visual>div:last-child small{color:#7fa09c;font-size:.66rem;line-height:1.45}.meter-rings{position:relative;width:135px;height:135px;display:grid;place-items:center;border:1px solid rgb(255 255 255 / 8%);border-radius:50%}.meter-rings i{position:absolute;width:calc(42px + var(--meter) * 60px);height:calc(42px + var(--meter) * 60px);border:1px solid currentColor;border-radius:50%;opacity:.25;transition:width .1s,height .1s}.meter-rings i:nth-child(2){width:calc(62px + var(--meter) * 66px);height:calc(62px + var(--meter) * 66px);opacity:.16}.meter-rings i:nth-child(3){width:calc(82px + var(--meter) * 72px);height:calc(82px + var(--meter) * 72px);opacity:.09}.effect-readouts{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;overflow:hidden;margin-bottom:18px;border:1px solid var(--line);border-radius:11px;background:var(--line)}.effect-readouts>div{padding:10px;background:var(--surface-muted)}.effect-readouts span,.effect-readouts strong{display:block}.effect-readouts span{margin-bottom:3px;color:var(--ink-faint);font-size:.61rem}.effect-readouts strong{font-size:.76rem}.effect-setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.file-picker{grid-column:1 / -1;min-height:70px;display:grid;grid-template-columns:36px 1fr;align-items:center;gap:10px;padding:11px;border:1px dashed var(--line-strong);border-radius:11px}.file-picker.ready{border-color:var(--green);background:var(--green-soft)}.file-picker input{position:absolute;width:1px;height:1px;opacity:0}.file-picker svg{color:var(--cyan-dark)}.file-picker>span{margin:0}.file-picker strong,.file-picker small{display:block}.file-picker small{margin-top:3px;color:var(--ink-faint);font-size:.65rem}.macro-list{display:grid;gap:20px;margin-top:18px}.macro-control{display:grid;gap:9px}.macro-control>span{display:flex;align-items:center;justify-content:space-between;margin:0}.macro-control>span>span{min-width:0;display:grid;gap:2px}.macro-control strong,.macro-control small{display:block}.macro-control small{color:var(--ink-faint);font-size:.62rem;font-weight:500}.macro-control output{color:var(--cyan-dark);font-size:.72rem;font-weight:720}.remote-live-banner{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding:15px 17px;border:1px solid color-mix(in srgb,var(--amber) 45%,var(--line));border-radius:14px;background:var(--amber-soft)}.remote-pulse{width:43px;height:43px;display:grid;place-items:center;flex:0 0 auto;color:var(--amber);border-radius:50%;background:color-mix(in srgb,var(--surface-raised) 50%,transparent);animation:softPulse 1.5s ease-in-out infinite}.remote-live-banner>div{min-width:0;flex:1}.remote-live-banner strong{font-size:.85rem}.remote-live-banner p{margin:3px 0 0;color:var(--ink-soft);font-size:.7rem}.status-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;overflow:hidden;margin-bottom:18px;background:var(--line)}.status-overview.without-active-source{grid-template-columns:repeat(3,1fr)}@media(min-width:1051px){.status-overview.with-network{grid-template-columns:repeat(5,1fr)}.status-overview.with-network.without-active-source{grid-template-columns:repeat(4,1fr)}}.metric{min-width:0;padding:18px;background:var(--surface)}.metric>span,.metric strong,.metric small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metric>span{margin-bottom:9px;color:var(--ink-faint);font-size:.63rem;font-weight:650;text-transform:uppercase;letter-spacing:.07em}.metric strong{font-size:1.08rem}.metric small{margin-top:4px;color:var(--ink-faint);font-size:.65rem}.metric-good strong{color:var(--green)}.metric-warn strong{color:var(--amber)}.status-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.health-section,.update-section,.endpoint-section{padding:21px}.health-list{display:grid;margin-top:11px}.health-list>div{min-height:55px;display:grid;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:10px;border-top:1px solid var(--line)}.health-list>div>span{width:31px;height:31px;display:grid;place-items:center;color:var(--ink-soft);background:var(--surface-muted);border-radius:9px}.health-list small,.health-list strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.health-list small{color:var(--ink-faint);font-size:.61rem}.health-list strong{margin-top:2px;font-size:.75rem}.health-list em{color:var(--ink-faint);font-size:.63rem;font-style:normal;text-align:right}.health-list i{width:9px;height:9px;border-radius:50%;background:var(--amber)}.health-list i.good{background:var(--green)}.health-list i.bad{background:var(--red)}.update-section,.endpoint-section{margin-top:18px}.update-strip{min-height:67px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;margin-top:10px;padding:11px;border-radius:11px;background:var(--surface-muted)}.update-icon{width:39px;height:39px;display:grid;place-items:center;color:var(--green);background:var(--green-soft);border-radius:11px}.update-strip strong{font-size:.77rem}.update-strip p{margin:3px 0 0;color:var(--ink-faint);font-size:.65rem}.update-time{display:flex;align-items:center;gap:5px;color:var(--ink-faint);font-size:.64rem}.endpoint-table{margin-top:10px;border-top:1px solid var(--line)}.endpoint-table>div{min-height:43px;display:grid;grid-template-columns:minmax(160px,1.5fr) repeat(3,1fr);align-items:center;gap:10px;padding:5px 9px;border-bottom:1px solid var(--line);font-size:.7rem}.endpoint-table span{color:var(--ink-soft)}.settings-control-grid,.settings-lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.settings-control-grid-single{grid-template-columns:minmax(0,1fr)}.settings-lower-grid{margin-top:18px}.setting-card,.policy-card,.account-card{padding:22px}.setting-card-heading{display:grid;grid-template-columns:45px 1fr;align-items:center;gap:12px}.setting-card-heading>span{width:43px;height:43px;display:grid;place-items:center;color:var(--cyan-dark);background:var(--cyan-soft);border-radius:12px}.setting-card-heading h2{margin-bottom:3px;font-size:.96rem}.setting-card-heading p{margin:0;color:var(--ink-faint);font-size:.7rem}.setting-card>.button{width:100%;margin-top:18px}.ceiling-readout{display:flex;align-items:baseline;justify-content:center;margin:20px 0 11px}.ceiling-readout strong{font-size:3rem;letter-spacing:-.07em}.ceiling-readout span{margin-left:5px;color:var(--ink-faint)}.range-ends{display:flex;justify-content:space-between;margin-top:6px;color:var(--ink-faint);font-size:.63rem}.policy-toggles{display:grid;gap:10px;margin:16px 0}.policy-toggle{min-height:68px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted);cursor:pointer}.policy-toggle strong,.policy-toggle small{display:block}.policy-toggle strong{color:var(--ink);font-size:.76rem;line-height:1.35}.policy-toggle small{margin-top:4px;color:var(--ink-faint);font-size:.65rem;line-height:1.45}.policy-toggle input{width:42px;height:23px;margin:0;accent-color:var(--cyan-dark);cursor:pointer}.policy-toggle:has(input:disabled){cursor:default;opacity:.68}.policy-disconnect{width:100%;margin-top:14px}.typed-confirm>p{margin:0;color:var(--ink-soft);line-height:1.55}.typed-confirm label{display:grid;gap:7px;color:var(--ink-soft);font-size:.72rem}.account-card{display:flex;flex-direction:column}.account-identity{display:flex;align-items:center;gap:12px;margin:16px 0 22px}.account-identity>span{width:47px;height:47px;display:grid;place-items:center;flex:0 0 auto;color:#fff;background:var(--cyan-dark);border-radius:50%;font-size:1rem;font-weight:740}.account-identity strong{font-size:.79rem}.account-identity p{margin:3px 0 0;color:var(--ink-faint);font-size:.68rem}.account-card>.button{align-self:flex-start;margin-top:auto}.toast-stack{position:fixed;right:20px;bottom:20px;z-index:100;width:min(360px,calc(100vw - 40px));display:grid;gap:8px}.toast{min-height:51px;display:grid;grid-template-columns:24px 1fr 28px;align-items:center;gap:7px;padding:9px 10px 9px 13px;border:1px solid var(--line);border-radius:12px;background:var(--surface-raised);box-shadow:var(--shadow)}.toast>span{color:var(--green)}.toast-error>span{color:var(--red)}.toast p{margin:0;font-size:.75rem;line-height:1.35}.toast button{height:28px;display:grid;place-items:center;border:0;color:var(--ink-faint);background:transparent}.boot-state,.system-state{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center}.boot-state img,.system-state img{width:48px;height:48px;margin-bottom:18px}.boot-state p{margin:10px 0 0;color:var(--ink-faint);font-size:.75rem}.system-state>span{width:47px;height:47px;display:grid;place-items:center;margin-bottom:14px;color:var(--amber);background:var(--amber-soft);border-radius:14px}.system-state h1{margin-bottom:7px;font-size:1.45rem}.system-state p{max-width:490px;color:var(--ink-soft);line-height:1.5}.system-state code{padding:2px 5px;color:var(--cyan-dark);background:var(--cyan-soft);border-radius:4px}@media(max-width:1050px){.app-shell{grid-template-columns:210px minmax(0,1fr)}.sidebar{width:210px}.sidebar nav button small{display:none}.panel-layout,.effects-layout{grid-template-columns:1fr}.fixture-inspector{min-height:0}.room-layout{grid-template-columns:1fr}.room-selection{min-height:260px}.panel-console{grid-template-columns:minmax(280px,.95fr) minmax(0,1.9fr)}.panel-column-runs{grid-column:1 / -1;position:static}.panel-column-runs .run-selection-aid{--card-section-max: 320px}.scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.status-overview{grid-template-columns:1fr 1fr}}@media(max-width:760px){.app-shell{display:block;padding-bottom:71px}.sidebar{display:none}.app-main{width:100%;padding-top:108px}.context-bar{position:fixed;inset:0 0 auto;width:100%;min-height:108px;grid-template-columns:42px minmax(0,1fr);gap:3px 7px;padding:7px 13px}.mobile-menu-button{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;padding:0;border:0;color:var(--ink);background:transparent}.context-selectors{gap:5px;flex:1}.context-selectors label,.context-fact strong{max-width:calc(33vw - 24px)}.context-selectors label span,.context-fact>span{display:none}.context-fact strong{font-size:.74rem}.context-selectors select{max-width:100%;min-height:38px;padding:0 20px 0 0;font-size:.74rem}.context-status{grid-column:1 / -1;width:100%;gap:8px}.control-feedback-slot{display:none}.connected-via{overflow:hidden;text-overflow:ellipsis}.context-blackout{min-height:35px;padding-inline:10px;font-size:.68rem}.context-stream{min-width:0;flex:1 1 auto;min-height:35px;padding:0 8px;font-size:.66rem}.page{min-height:calc(100vh - 108px);padding:16px 14px 31px}.page-name-mobile{display:flex;align-items:center;gap:7px;margin-bottom:18px;color:var(--ink-faint);font-size:.68rem;font-weight:680;text-transform:uppercase;letter-spacing:.09em}.screen-header{display:block;margin-bottom:20px}.screen-header h1{margin-bottom:7px;font-size:2rem}.screen-header>div>p:not(.screen-kicker){font-size:.82rem}.screen-actions{margin-top:14px}.screen-actions .button{width:100%}.surface{border-radius:15px}.card-section{--card-section-max: 35vh;padding:16px}.mobile-dock{position:fixed;inset:auto 0 0;z-index:50;height:70px;display:grid;grid-template-columns:repeat(5,1fr);padding:6px max(6px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));background:color-mix(in srgb,var(--surface-raised) 93%,transparent);border-top:1px solid var(--line);box-shadow:0 -8px 28px #11282b14;backdrop-filter:blur(18px)}.mobile-dock button{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0;border:0;border-radius:9px;color:var(--ink-faint);background:transparent;font-size:.59rem}.mobile-dock button.active{color:var(--cyan-dark);background:var(--cyan-soft)}.mobile-sheet-backdrop{align-items:end;padding:0}.mobile-sheet{width:100%;padding:18px 14px calc(25px + env(safe-area-inset-bottom));background:var(--surface-raised);border-radius:22px 22px 0 0}.mobile-sheet header{display:flex;align-items:center;justify-content:space-between;padding:0 4px 13px}.mobile-screen-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.mobile-screen-grid button{min-height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:12px;color:var(--ink-soft);background:var(--surface);font-size:.65rem}.mobile-screen-grid button.active{color:var(--cyan-dark);background:var(--cyan-soft);border-color:color-mix(in srgb,var(--cyan) 35%,var(--line))}.settings-control-grid,.settings-lower-grid,.status-columns{grid-template-columns:1fr}.controller-list-surface{--card-section-max: 35vh}.bluetooth-control-card{grid-template-columns:43px minmax(0,1fr)}.bluetooth-control-card .button{grid-column:1 / -1;width:100%}.wifi-card{padding:17px}.wifi-status-row{grid-template-columns:43px minmax(0,1fr)}.wifi-status-row .text-button{grid-column:1 / -1;justify-self:start}.now-playing{grid-template-columns:53px 1fr;gap:13px;padding:16px}.now-playing-art{width:51px;height:51px;border-radius:15px}.now-playing .transport-controls{grid-column:1 / -1;justify-content:center;padding-top:13px;border-top:1px solid var(--line)}.score-row{grid-template-columns:41px minmax(0,1fr) auto;padding-inline:5px}.score-row-actions{gap:6px}.fixture-browser{height:500px;padding:16px}.fixture-list>button{grid-template-columns:25px 25px minmax(0,1fr) auto;gap:7px}.fixture-hero{height:155px}.control-stack{padding:17px}.scene-grid{grid-template-columns:1fr 1fr}.room-canvas{min-height:400px;height:58vh}.room-selection{min-height:250px;padding:17px}.panel-room-toolbar{align-items:flex-start;flex-direction:column;padding:12px 13px}.panel-room-tools{width:100%;justify-content:space-between;gap:7px}.panel-room-tools>span{margin-right:auto}.panel-room-canvas{height:52vh;min-height:390px}.panel-console{grid-template-columns:1fr;gap:0}.panel-column-room{order:1}.panel-column-selection{order:2;position:static;margin-top:12px}.panel-column-runs{order:3;position:static;margin-top:12px}.runs-disclosure{display:block;width:100%;min-height:42px;border:1px solid var(--line);border-radius:10px;color:var(--ink-soft);background:var(--surface-muted);font-size:.72rem;font-weight:700}.panel-column-runs-body{display:none}.panel-column-runs-body.open{display:block;margin-top:10px}.selection-summary{padding:16px}.selection-controls{padding:17px}.selection-intensity output{font-size:2.35rem}.panel-fixture-list{max-height:300px}.effect-visual{min-height:250px;grid-template-columns:1fr;gap:9px;text-align:center}.meter-rings{width:118px;height:118px}.effect-stage,.macro-surface,.health-section,.update-section,.endpoint-section,.setting-card,.policy-card,.account-card{padding:17px}.effect-setup-grid{grid-template-columns:1fr}.file-picker{grid-column:auto}.status-overview{grid-template-columns:1fr 1fr}.metric{padding:14px}.remote-live-banner{align-items:flex-start;flex-wrap:wrap}.remote-live-banner .button{width:100%}.operator-activity{top:12px;right:14px;max-width:56%;justify-content:flex-start;overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}.endpoint-table>div{grid-template-columns:1fr auto}.endpoint-table>div span:nth-last-child(-n+2){display:none}.account-card>.button{width:100%}.modal-backdrop{align-items:end;padding:0}.modal{max-height:91vh;border-radius:22px 22px 0 0}.modal-body{max-height:calc(91vh - 63px)}.setup-flow fieldset{grid-template-columns:1fr}.toast-stack{right:12px;bottom:82px;width:calc(100vw - 24px)}}@media(max-width:470px){.signin-shell{align-items:start;padding:18px 14px;background:var(--surface)}.signin-card{padding:22px 18px 28px;border:0;border-radius:0;box-shadow:none}.brand-lockup-large img{width:31px;height:31px}.signin-form{gap:16px}.signin-form header h1{font-size:1.7rem}.scene-grid{grid-template-columns:1fr}.panel-room-tools>.text-button{font-size:.67rem}.status-overview{grid-template-columns:1fr}.update-strip{grid-template-columns:42px 1fr}.update-time{grid-column:2}.mobile-screen-grid{grid-template-columns:repeat(3,1fr)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.busy-overlay-host{position:relative}.busy-content{display:contents}.busy-overlay-host.is-busy>.busy-content{visibility:hidden}.transport-button.main .busy-overlay .spinner{color:#fff}.stream-summary{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:15px 18px}.stream-summary strong{font-size:.76rem}.revoked-controllers{display:grid;gap:8px;padding:0 18px 15px}.controller-list.revoked .controller-row{opacity:.75}.controller-row.static{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:var(--surface-muted);text-align:left}.engine-telemetry{padding:21px}.engine-identity{display:flex;align-items:baseline;flex-wrap:wrap;gap:9px;margin:12px 0 16px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted)}.engine-identity code{color:var(--cyan-dark);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;font-weight:650}.engine-identity span{color:var(--ink-soft);font-size:.76rem}.effect-stage .field-help{margin-top:9px}.audio-input-instrument{margin:12px 0 16px;overflow:hidden;border:1px solid color-mix(in srgb,var(--cyan) 32%,var(--line));border-radius:14px;background:var(--surface-raised);box-shadow:inset 3px 0 var(--cyan)}.audio-db-meters{display:grid;gap:7px;padding:15px 15px 12px}.audio-db-meters>.telemetry-clip{justify-self:end;margin-bottom:2px}.audio-db-row{display:grid;grid-template-columns:38px minmax(0,1fr) 82px;align-items:center;gap:9px}.audio-db-row>span{color:var(--ink-soft);font-size:.63rem;font-weight:700}.audio-db-row>strong{font-size:.69rem;font-variant-numeric:tabular-nums;text-align:right}.audio-db-track{height:8px;overflow:hidden;border-radius:2px;background:var(--surface-muted)}.audio-db-track>i{display:block;height:100%;background:var(--cyan);transition:width .14s linear}.audio-db-row.rms .audio-db-track>i{background:var(--ink-soft)}.audio-db-scale{display:flex;justify-content:space-between;margin-right:91px;margin-left:47px;color:var(--ink-faint);font-size:.52rem;font-variant-numeric:tabular-nums}.audio-level-history{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px 15px 14px;border-top:1px solid var(--line)}.audio-level-history>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px;grid-column:1 / -1}.audio-level-history>div:first-child span{font-size:.67rem;font-weight:720}.audio-level-history>div:first-child small{color:var(--ink-faint);font-size:.58rem}.audio-level-history svg{width:100%;height:86px;overflow:visible;border-radius:7px;background:var(--nav)}.audio-level-history svg line{stroke:#ffffff1c;stroke-width:1;vector-effect:non-scaling-stroke}.audio-level-history svg path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.audio-level-history .history-preroll{fill:url(#audio-history-preroll)}.audio-level-history #audio-history-preroll path{stroke:#9dafac3d;stroke-width:1}.audio-level-history .history-peak{stroke:var(--cyan);stroke-width:1.8}.audio-level-history .history-rms{stroke:#9dafac;stroke-width:1.35}.audio-history-legend{display:grid;align-content:center;gap:7px;color:var(--ink-soft);font-size:.57rem}.audio-history-legend span{display:flex;align-items:center;gap:5px}.audio-history-legend span:before{content:"";width:10px;height:2px;background:currentColor}.audio-history-legend .peak{color:var(--cyan-dark)}.audio-history-legend .rms{color:var(--ink-soft)}.engine-parameters{display:grid;gap:10px;margin:18px 0;padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--surface-muted)}.engine-parameters-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.engine-parameters-head strong{font-size:.8rem}.engine-parameters-head small{color:var(--ink-faint);font-size:.65rem;text-align:right}.engine-parameters .field-help{margin:2px 0 0}.engine-parameter{display:grid;grid-template-columns:minmax(0,1fr) 52px;align-items:center;gap:4px 10px;margin:0}.engine-parameter-name{min-width:0;display:grid;gap:2px;margin:0}.engine-parameter-name code{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;font-weight:620}.engine-parameter-name small{color:var(--ink-faint);font-size:.64rem;font-weight:500;line-height:1.35}.engine-parameter output{display:inline-flex;align-items:center;justify-content:flex-end;gap:5px;color:var(--cyan-dark);font-variant-numeric:tabular-nums;font-size:.74rem;font-weight:720}.engine-parameter input[type=range]{grid-column:1 / -1}.engine-parameter.unsupported{opacity:.48}.audio-preset-description{margin-top:-2px}.engine-blocked{display:grid;gap:12px;padding:15px;border:1px dashed var(--line-strong);border-radius:13px}.engine-blocked p{margin:0;color:var(--ink-soft);font-size:.8rem;line-height:1.5}.engine-blocked small{color:var(--ink-faint);font-size:.68rem;line-height:1.45}.technical-details{color:var(--ink-faint);font-size:.68rem}.technical-details>summary{cursor:pointer;list-style:none;user-select:none}.technical-details>summary::-webkit-details-marker{display:none}.technical-details>summary:before{content:"▸ "}.technical-details[open]>summary:before{content:"▾ "}.technical-details>p{margin:7px 0 0;padding:9px 11px;border-radius:9px;background:var(--surface-muted);color:var(--ink-soft);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.66rem;line-height:1.5;overflow-wrap:anywhere}.engine-note{margin:0 0 12px;color:var(--ink-faint);font-size:.7rem;line-height:1.5}.telemetry-meter{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;margin:12px 0 15px}.telemetry-meter-track{height:9px;overflow:hidden;border-radius:999px;background:var(--surface-muted)}.telemetry-meter-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--cyan-dark),var(--cyan));transition:width .12s linear}.telemetry-meter>div{display:grid;gap:2px;text-align:right}.telemetry-meter small{color:var(--ink-faint);font-size:.61rem}.telemetry-meter strong{font-variant-numeric:tabular-nums;font-size:.78rem}.telemetry-clip{padding:4px 8px;border-radius:999px;color:#fff;background:var(--red);font-size:.62rem;font-weight:730}.beat-engine-readout{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:13px;margin:0 0 13px}.telemetry-internal{display:grid;gap:4px;margin-top:15px;padding:11px;border:1px dashed var(--line-strong);border-radius:10px}.telemetry-internal>div{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr);gap:9px}.telemetry-internal span{color:var(--ink-faint);font-size:.63rem;font-weight:650}.telemetry-internal code{overflow:hidden;color:var(--ink-soft);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.63rem;text-overflow:ellipsis;white-space:nowrap}@media(max-width:900px){.engine-telemetry{padding:17px}}@media(max-width:520px){.audio-db-row{grid-template-columns:32px minmax(0,1fr) 76px}.audio-db-scale{margin-right:85px;margin-left:41px}}
