.studio-edit{display:contents}body[data-studio-mode=listen] .studio-edit,body[data-studio-mode=listen] #detail-panel,body[data-studio-mode=compose] .studio-edit,body[data-studio-mode=compose] #detail-panel,body[data-studio-mode=social] .studio-edit,body[data-studio-mode=social] #detail-panel{display:none!important}.studio-tool{display:none}body[data-studio-mode=listen] .studio-tool,body[data-studio-mode=simulate] .studio-tool,body[data-studio-mode=compose] .studio-tool{display:block}.studio-extract[hidden]{display:none!important}.extract-sheet__summary{cursor:pointer;letter-spacing:.04em;color:var(--ink,#ddd);padding:6px 0;font-size:.72rem;font-weight:700}.extract-sheet__hint{color:var(--mut,#888);margin:4px 0 6px;font-size:.66rem;line-height:1.45}.extract-practice{color:var(--ink,#ddd);cursor:pointer;align-items:center;gap:6px;margin:2px 0;font-size:.68rem;display:flex}.extract-group{margin:8px 0 0}.extract-group__label,.extract-subgroup__label{letter-spacing:.06em;color:var(--mut,#888);margin:6px 0 4px;font-size:.62rem;display:block}.extract-subgroup__label{opacity:.8}.extract-chips{flex-wrap:wrap;gap:4px;display:flex}.extract-chip{border:1px solid var(--line,#333);color:var(--ink,#ddd);cursor:pointer;background:0 0;border-radius:999px;padding:5px 8px;font-size:.66rem;line-height:1}.extract-chip:hover,.extract-chip:focus-visible{border-color:var(--accent-line,#c6ff3a);color:var(--accent-line,#c6ff3a)}.extract-chip:disabled{opacity:.45;cursor:default}.extract-chip__beta{letter-spacing:.04em;vertical-align:1px;opacity:.85;border:1px solid;border-radius:999px;margin-left:4px;padding:1px 4px;font-size:.54rem;font-weight:700;display:inline-block}.speaker-icon--extract{color:var(--accent-line,#c6ff3a)}#listen-viz-toggle{grid-template-columns:1fr 1fr}.compose-dock,.social-panel,.score-panel{display:none}body[data-studio-mode=compose] .compose-dock,body[data-studio-mode=compose] .score-panel{display:flex}body[data-studio-mode=compose] .score-panel:empty{display:none}body[data-studio-mode=social] .social-panel{display:flex}body[data-studio-mode=compose] .hint,body[data-studio-mode=compose] .hint-handle{display:none}.compose-dock{z-index:5;background:var(--surface-overlay);border:1px solid var(--line);backdrop-filter:blur(7px);width:min(720px,100vw - 380px);max-width:calc(100vw - 48px);max-height:calc(100dvh - 140px);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;gap:12px;padding:14px 16px;bottom:78px;left:50%;overflow-y:auto;transform:translate(-50%)}.cmpd__bar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.cmpd__play{appearance:none;background:var(--accent);color:var(--on-accent);font:700 13px/1 var(--font-sans,system-ui);cursor:pointer;border:0;border-radius:999px;padding:9px 18px}.cmpd__play:hover{filter:brightness(1.05)}.cmpd__title{font:700 11px/1 var(--font-sans,system-ui);text-transform:uppercase;letter-spacing:.16em;color:var(--text-muted)}.cmpd__tempo{color:var(--text-soft);align-items:center;gap:8px;font-size:11px;display:flex}.cmpd__tempo input[type=range]{width:96px;accent-color:var(--accent)}.cmpd__tempo>label{align-items:center;gap:8px;display:flex}.cmpd__tap{padding:5px 9px}.cmpd__spacer{flex:1}.cmpd__btn{appearance:none;border:1px solid var(--line-strong,var(--line));background:var(--surface);color:var(--text);font:600 12px/1 var(--font-sans,system-ui);cursor:pointer;border-radius:999px;padding:8px 12px}.cmpd__btn:hover{border-color:var(--accent);color:var(--accent)}.cmpd__btn:disabled,.cmpd__btn:disabled:hover{border-color:var(--line-strong,var(--line));color:var(--text);opacity:.45;cursor:default}.cmpd__preset{appearance:none;border:1px solid var(--line-strong,var(--line));background:var(--surface) url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5'%3E%3Cpath d='M1 1l3 3 3-3' fill='none' stroke='%23888888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center;color:var(--text);font:600 12px/1 var(--font-sans,system-ui);cursor:pointer;border-radius:999px;padding:8px 26px 8px 12px}.cmpd__preset:hover{border-color:var(--accent);color:var(--accent)}.cmpd__nameinput{border:1px solid var(--line-strong,var(--line));background:var(--surface);width:140px;color:var(--text);font:500 12px/1 var(--font-sans,system-ui);text-overflow:ellipsis;border-radius:999px;padding:8px 12px;overflow:hidden}.cmpd__nameinput::placeholder{color:var(--text-muted);text-overflow:ellipsis;overflow:hidden}.cmpd__cloudsave{align-items:center;gap:4px;display:inline-flex}.cmpd__btn.is-rec,.cmpd__btn.is-rec:hover{color:#ff5a5a;border-color:#ff5a5a;animation:1.2s ease-in-out infinite tp-rec-pulse}@media (prefers-reduced-motion:reduce){.cmpd__btn.is-rec,.cmpd__btn.is-rec:hover{animation:none}}.cmpd__btn.is-busy{opacity:.45;cursor:progress}.cmpd__clip-pick{gap:6px;display:inline-flex}.cmpd__clip-pick[hidden]{display:none}.cmpd__msg{color:var(--text-muted);min-width:60px;font-size:11px}.cmpd__grid{flex-direction:column;gap:5px;display:flex;overflow-x:auto}.cmpd__row{grid-template-columns:64px repeat(16,minmax(22px,1fr));align-items:center;gap:4px;width:max-content;min-width:100%;display:grid}.cmpd__name{font:700 11px/1 var(--font-sans,system-ui);white-space:nowrap;text-overflow:ellipsis;z-index:1;background:linear-gradient(var(--surface-overlay), var(--surface-overlay)), var(--bg);align-self:stretch;align-items:center;gap:5px;display:flex;position:sticky;left:0;overflow:hidden}.cmpd__name-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cmpd__mute{appearance:none;border:1px solid color-mix(in srgb, var(--text) 28%, transparent);width:16px;height:16px;color:var(--text-muted);font:700 9px/1 var(--font-sans,system-ui);cursor:pointer;background:0 0;border-radius:4px;flex:none;padding:0;position:relative}.cmpd__mute:after{content:"";position:absolute;inset:-5px}.cmpd__mute:hover{border-color:var(--accent);color:var(--accent)}.cmpd__mute.is-active,.cmpd__mute.is-active:hover{color:#fff;background:#ff5a5a;border-color:#ff5a5a}.cmpd__row.is-muted .cmpd__cell{opacity:.35}.cmpd__row.is-muted .cmpd__name-label{opacity:.5}.cmpd__hdrcell{font:700 10px/1 var(--font-sans,system-ui);color:var(--text-muted);text-align:center}.cmpd__cell{border:1px solid color-mix(in srgb, var(--text) 14%, transparent);background:color-mix(in srgb, var(--text) 4%, transparent);cursor:pointer;border-radius:5px;height:22px;padding:0;transition:background .1s,border-color .1s}.cmpd__cell--beat{border-color:color-mix(in srgb, var(--text) 28%, transparent)}.cmpd__cell.is-on{border-color:#0000}.cmpd__cell.is-accent{filter:brightness(1.35)saturate(1.15);justify-content:center;align-items:center;display:flex}.cmpd__cell.is-accent:after{content:"";background:var(--bg);border-radius:50%;width:38%;min-width:5px;height:38%;min-height:5px}.cmpd__cell.is-playing{outline:2px solid var(--text);outline-offset:-1px}.cmpd__hint{color:var(--text-muted);font-size:11px;line-height:1.5}.cmpd__empty{color:var(--text-muted);margin:0;font-size:11px;line-height:1.5}.score-panel{z-index:4;background:var(--surface-overlay);border:1px solid var(--line);backdrop-filter:blur(7px);width:320px;max-height:calc(100vh - 200px);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:10px;padding:16px;top:96px;left:22px;overflow-y:auto}.score-panel.is-collapsed{max-height:none}.score-panel.is-collapsed>:not(.scp__head){display:none}.scp__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.scp__title{font:700 11px/1 var(--font-sans,system-ui);text-transform:uppercase;letter-spacing:.16em;color:var(--text-muted)}.scp__close{appearance:none;border:1px solid var(--line);background:var(--surface);color:var(--text-soft);cursor:pointer;border-radius:7px;width:26px;height:22px;font-size:12px;line-height:1}.scp__close:hover{border-color:var(--accent);color:var(--accent)}.scp__hint{color:var(--text-muted);font-size:11px;line-height:1.5}.scp__row{align-items:center;gap:10px;display:flex}.scp__label{font:700 10px/1 var(--font-sans,system-ui);text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);white-space:nowrap}.scp__select{appearance:none;background:var(--surface);color:var(--text);border:1px solid var(--line);cursor:pointer;border-radius:8px;flex:1;padding:8px 10px;font-family:inherit;font-size:12px}.scp__select:focus{border-color:var(--accent)}.scp__tabs{flex-wrap:wrap;gap:5px;display:flex}.scp__tab{appearance:none;border:1px solid var(--line);background:var(--surface);color:var(--text-soft);font:600 11px/1 var(--font-sans,system-ui);cursor:pointer;text-transform:capitalize;border-radius:999px;padding:6px 10px;transition:border-color .15s,color .15s,background .15s}.scp__tab:hover{border-color:var(--accent);color:var(--accent)}.scp__tab.is-active{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.scp__cost{color:var(--text-muted);min-height:1em;font-size:11px;line-height:1.5}.scp__make{appearance:none;background:var(--accent);color:var(--on-accent);font:700 13px/1 var(--font-sans,system-ui);cursor:pointer;border:0;border-radius:999px;padding:10px 16px}.scp__make:hover{filter:brightness(1.05)}.scp__make:disabled{opacity:.5;cursor:default}.scp__status{color:var(--text-soft);min-height:1em;margin:0;font-size:11px;line-height:1.5}.scp__status[data-kind=err]{color:var(--danger)}.scp__status[data-kind=ok]{color:var(--accent)}.scp__score{background:#fff;border-radius:10px;max-height:280px;overflow:auto}.scp__score svg{display:block}.scp__score:empty,#score-panel [hidden]{display:none}.scp__exports{flex-wrap:wrap;gap:6px;display:flex}.scp__btn{appearance:none;border:1px solid var(--line-strong,var(--line));background:var(--surface);color:var(--text);font:600 12px/1 var(--font-sans,system-ui);cursor:pointer;border-radius:999px;padding:8px 12px}.scp__btn:hover{border-color:var(--accent);color:var(--accent)}.social-panel{z-index:4;background:var(--surface-overlay);border:1px solid var(--line);backdrop-filter:blur(7px);width:268px;max-height:calc(100vh - 200px);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:14px;padding:16px;top:96px;left:22px;overflow-y:auto}.snp__title{font:700 11px/1 var(--font-sans,system-ui);text-transform:uppercase;letter-spacing:.16em;color:var(--text-muted)}.snp__hint{color:var(--text-muted);font-size:11px;line-height:1.5}.snp__auth{flex-direction:column;gap:6px;display:flex}.snp__auth input{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:7px 9px;font-size:13px}.snp__authrow{gap:6px;display:flex}.snp__authrow button{border:1px solid var(--line-strong,var(--line));background:var(--surface);color:var(--text);font:600 12px/1 var(--font-sans,system-ui);cursor:pointer;border-radius:8px;flex:1;padding:7px 8px}.snp__authrow button:hover{border-color:var(--accent);color:var(--accent)}.snp__who{color:var(--text);font-size:13px;font-weight:700}.snp__guestnote{color:var(--text-muted);font-size:11px;line-height:1.5}.snp__label{font:700 10px/1 var(--font-sans,system-ui);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:6px;display:block}.snp__label em{color:var(--accent);font-style:normal}.snp__inviterow{gap:6px;display:flex}.snp__inviterow input{border:1px solid var(--line);background:var(--surface);min-width:0;color:var(--text);border-radius:8px;flex:1;padding:6px 8px;font-size:11px}.snp__inviterow button{border:1px solid var(--line-strong,var(--line));background:var(--surface);color:var(--text);font:600 12px/1 var(--font-sans,system-ui);cursor:pointer;border-radius:8px;padding:6px 10px}.snp__list{flex-direction:column;gap:5px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.snp__list li{color:var(--text);align-items:center;gap:8px;display:flex}.snp__dot{border-radius:50%;flex:none;width:9px;height:9px}.snp__status{color:var(--text-muted);font-size:11px}.snp__transportrow{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.snp__transportrow button{border:1px solid var(--line-strong,var(--line));background:var(--surface);color:var(--text);font:600 12px/1 var(--font-sans,system-ui);cursor:pointer;border-radius:8px;align-items:center;gap:5px;padding:6px 10px;display:inline-flex}.snp__transportrow button:hover{border-color:var(--accent)}.snp__tempo{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:center;gap:4px;padding:0 8px 0 0;display:inline-flex}.snp__tempo input{width:5.5ch;color:var(--text);font:600 12px/1 var(--font-mono,ui-monospace, monospace);font-variant-numeric:tabular-nums;background:0 0;border:0;padding:6px 0 6px 8px}.snp__tempo input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.snp__unit{font:700 9px/1 var(--font-mono,ui-monospace, monospace);letter-spacing:.08em;color:var(--text-muted)}.snp__chatform{align-items:center;gap:6px;margin-top:6px;display:flex}.snp__chatform input{border:1px solid var(--line);background:var(--surface);min-width:0;color:var(--text);border-radius:8px;flex:1;padding:6px 8px;font-size:11px}.snp__chatform button{border:1px solid var(--line-strong,var(--line));background:var(--surface);color:var(--text);font:600 11px/1 var(--font-sans,system-ui);cursor:pointer;border-radius:8px;flex:none;padding:6px 10px}.snp__chatform input:disabled,.snp__chatform button:disabled{opacity:.5;cursor:not-allowed}@media (width<=820px){.cmpd__collapse{display:none}.compose-dock{width:calc(100vw - 32px);max-height:calc(100dvh - env(safe-area-inset-top,0px) - 126px);bottom:8px}.social-panel{width:auto;max-height:50vh;inset:auto 8px 8px}.score-panel{top:calc(env(safe-area-inset-top,0px) + 118px);width:auto;max-height:42vh;left:8px;right:8px}}html,body{overflow:hidden}.stage{position:fixed;inset:0}.stage__scene{width:100%;max-width:100%;height:100%;max-height:100%;display:block;position:absolute;inset:0}@media (width<=820px){.stage{overflow:clip}}.overlay{z-index:2;pointer-events:auto;position:absolute}.overlay--top{pointer-events:none;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 112px 0 64px;display:flex;top:0;left:0;right:0}.overlay--top>*{pointer-events:auto}.back{letter-spacing:.04em;color:var(--text-soft);border:1px solid var(--line);background:var(--surface-overlay);backdrop-filter:blur(5px);border-radius:999px;align-items:center;padding:8px 12px;font-size:12px;transition:color .15s,border-color .15s;display:inline-flex}.back:hover{color:var(--accent);border-color:var(--accent-line)}.brand{text-align:center;flex-direction:column;gap:2px;margin:0 auto;display:flex}.brand__eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--accent);font-size:10px;font-weight:600}.brand__title{letter-spacing:-.02em;color:var(--text);font-size:clamp(20px,2.4vw,26px);font-weight:800}.top-right{align-items:center;gap:8px;display:flex}.status{color:var(--text-soft);border:1px solid var(--line);background:var(--surface-overlay);backdrop-filter:blur(5px);border-radius:999px;align-items:center;gap:10px;padding:8px 12px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px;display:flex}.status__dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent);border-radius:999px}.status__pos{color:var(--text-muted);white-space:nowrap}.panel{background:var(--surface-overlay);backdrop-filter:blur(7px);border:1px solid var(--line);width:320px;max-height:calc(100vh - 180px);box-shadow:var(--shadow);border-radius:14px;padding:16px;overflow-y:auto}.overlay--right{top:96px;right:22px}.overlay--left{width:300px;bottom:88px;left:22px}.panel__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:12px;padding-bottom:10px;display:flex}.panel__title{letter-spacing:.18em;text-transform:uppercase;color:var(--text);font-size:12px;font-weight:700}.panel__hint{text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-size:10px}.panel__collapse{appearance:none;border:1px solid var(--line);background:var(--surface);color:var(--text-soft);cursor:pointer;border-radius:7px;flex:none;width:26px;height:22px;font-size:12px;line-height:1}.panel__collapse:hover{border-color:var(--accent);color:var(--accent)}@media (width<=820px){.panel__collapse{display:none}}@media (width>=821px){.overlay.is-collapsed>:not(.panel__head):not(.scp__head):not(.cmpd__bar):not([data-panel-head]){display:none}.overlay.is-collapsed{max-height:none}.overlay.is-collapsed .panel__head{border-bottom:0;margin-bottom:0;padding-bottom:0}.panel__head,.scp__head,.cmpd__bar{cursor:grab;touch-action:none}.overlay.is-dragging{user-select:none}.overlay.is-dragging .panel__head,.overlay.is-dragging .scp__head,.overlay.is-dragging .cmpd__bar{cursor:grabbing}}.move-mode{border:1px solid var(--line);background:var(--surface);border-radius:10px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:12px;padding:4px;display:grid}.move-mode__btn{appearance:none;color:var(--text-muted);letter-spacing:.06em;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 6px;font-family:inherit;font-size:11px;font-weight:600;transition:background .15s,color .15s}.move-mode__btn:hover{color:var(--text)}.move-mode__btn.is-active{background:var(--accent);color:var(--on-accent)}.seg-field{margin-bottom:12px}.seg-field__label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:6px;font-size:10px;display:block}.viz-mode{border:1px solid var(--line);background:var(--surface);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.viz-mode__btn{appearance:none;color:var(--text-muted);letter-spacing:.04em;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 6px;font-family:inherit;font-size:11px;font-weight:600;transition:background .15s,color .15s}.viz-mode__btn:hover{color:var(--text)}.viz-mode__btn.is-active{background:var(--accent);color:var(--on-accent)}#shell-mode{grid-template-columns:1fr 1fr}.reverb-knobs{flex-direction:column;gap:8px;display:flex}.reverb-knobs .ctrl-row,.seg-field .ctrl-row{flex-direction:column;gap:4px;display:flex}.seg-field .ctrl-row{margin-top:8px}.obstacle-add{grid-template-columns:1fr 1fr 1fr;gap:6px;display:grid}.chip-btn{border:1px solid var(--line);background:var(--surface);color:var(--text-soft);cursor:pointer;border-radius:6px;padding:6px 4px;font-family:inherit;font-size:11px;transition:border-color .15s,color .15s,background .15s}.chip-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.obstacle-list{flex-direction:column;gap:4px;margin:8px 0 0;padding:0;list-style:none;display:flex}.obstacle-row{border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;padding:5px 8px;display:flex}.obstacle-row.is-selected{background:var(--accent-soft);border-color:var(--accent-line)}.obstacle-name{text-align:left;color:var(--text);cursor:pointer;background:0 0;border:0;flex:1;padding:0;font-family:inherit;font-size:12px}.model-row{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;margin-bottom:12px;display:flex}.model-row__label{text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;max-width:100%;font-size:10px;overflow:hidden}.model-select{appearance:none;background:var(--surface);min-width:0;max-width:100%;color:var(--text);border:1px solid var(--line);cursor:pointer;border-radius:8px;flex:min(160px,100%);padding:8px 10px;font-family:inherit;font-size:12px}.model-row--char{align-items:flex-start}.char-grid{flex:min(160px,100%);grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;min-width:0;display:grid}.char-grid__name{text-overflow:ellipsis;min-width:0;overflow:hidden}.char-grid__btn{background:var(--surface);color:var(--text);border:1px solid var(--line);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:2px;padding:5px 2px;display:flex}.char-grid__btn:hover{border-color:var(--accent,var(--lime))}.char-grid__btn.is-active{border-color:var(--lime);box-shadow:inset 0 0 0 1px var(--lime)}.char-grid__mark{width:20px;height:20px;display:block}.char-grid__name{font-size:8px;font-family:var(--font-mono,monospace);letter-spacing:.02em}.model-select:focus{border-color:var(--accent)}.model-select:focus:not(:focus-visible){outline:none}.model-hint{color:var(--text-muted);margin:-6px 0 12px;font-size:11px;line-height:1.5}.dropzone{border:1.5px dashed var(--accent-line);color:var(--text);cursor:pointer;text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:18px 14px;transition:border-color .15s,background .15s,transform .15s;display:flex;position:relative}.dropzone__input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dropzone:hover,.dropzone.is-hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.dropzone:has(.dropzone__input:focus-visible){border-color:var(--accent);background:var(--accent-soft);outline:2px solid var(--accent);outline-offset:2px}.dropzone__icon{color:var(--accent);font-size:22px}.dropzone__label{font-size:13px;font-weight:600}.dropzone__sub{color:var(--text-muted);font-size:11px;line-height:1.5}.example-switch{border:1px dashed var(--accent-line);background:var(--accent-soft);border-radius:10px;margin-top:12px;padding:10px 12px}.example-switch__label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:8px;font-size:10px;display:block}.example-switch__btns{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.ex-btn{appearance:none;border:1px solid var(--line);background:var(--surface);color:var(--text-soft);cursor:pointer;border-radius:7px;padding:6px 4px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10px;font-weight:600;transition:background .15s,color .15s,border-color .15s}.ex-btn:hover{border-color:var(--accent);color:var(--text)}.ex-btn.is-active{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.stem-legend{text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);grid-template-columns:1fr 1fr;gap:6px 14px;margin-top:12px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10px;list-style:none;display:grid}.stem-legend li{align-items:center;gap:6px;display:flex}.stem-dot{border-radius:999px;width:8px;height:8px}.processing-row{background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:10px;flex-direction:column;gap:6px;margin-bottom:4px;padding:10px 12px;display:flex}.processing-row__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.processing-row__name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.processing-row__tag{text-transform:uppercase;letter-spacing:.16em;color:var(--on-accent);background:var(--accent);border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:9px;font-weight:700;animation:1.4s ease-in-out infinite pulse}.processing-row__status{color:var(--text-soft);font-size:11px;line-height:1.4}.processing-row__bar{background:var(--kbd-bg);border-radius:999px;height:4px;overflow:hidden}.processing-row__fill{background:linear-gradient(90deg, var(--accent), var(--accent-bright));border-radius:999px;height:100%;transition:width .6s}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}.toast-container{z-index:7;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:absolute;top:88px;left:50%;transform:translate(-50%)}.toast{background:var(--surface-overlay);border:1px solid var(--danger);max-width:440px;color:var(--text);backdrop-filter:blur(6px);opacity:0;box-shadow:var(--shadow);border-radius:10px;padding:10px 16px;font-size:12px;line-height:1.5;transition:opacity .3s,transform .3s;transform:translateY(-8px)}.toast.is-visible{opacity:1;transform:translateY(0)}.toast--info{border-color:var(--accent-line)}.speaker-list{flex-direction:column;gap:4px;margin-top:14px;list-style:none;display:flex}.mytracks{border-top:1px solid var(--line,#333);font:500 11px var(--font-mono,monospace);margin-top:10px;padding-top:8px}.mytracks summary{cursor:pointer;font-weight:700}.mytracks__hint{color:var(--mut,#888);margin:4px 0;font-size:10px}.mytracks__list{max-height:180px;margin:0;padding:0;list-style:none;overflow-y:auto}.mytracks__list li{align-items:center;gap:6px;padding:4px 0;display:flex}.mytracks__list .t-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.mytracks__list button{border:1px solid var(--line,#333);color:inherit;cursor:pointer;font:600 10px var(--font-mono,monospace);background:0 0;padding:2px 6px}.speaker-empty{color:var(--text-muted);text-align:center;padding:12px 0;font-size:11px;line-height:1.6}.speaker-row{background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;gap:7px;padding:8px 10px;transition:background .15s,border-color .15s;display:flex}.speaker-row__head{align-items:center;gap:8px;display:flex}.speaker-row__vol{width:100%;height:4px;accent-color:var(--accent);cursor:pointer}.speaker-row.is-selected{background:var(--accent-soft);border-color:var(--accent-line)}.speaker-row:hover{background:var(--surface)}.speaker-dot{border-radius:999px;flex:none;width:10px;height:10px}.speaker-name{text-align:left;color:var(--text);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;flex:1;padding:0;font-family:inherit;font-size:12px;overflow:hidden}.speaker-icon{border:1px solid var(--line);color:var(--text-soft);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:11px;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.speaker-icon:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.speaker-icon--danger:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}.speaker-toggle{border:1px solid var(--accent-line);background:var(--accent-soft);min-width:34px;height:24px;color:var(--accent);letter-spacing:.1em;cursor:pointer;border-radius:6px;flex:none;padding:0 8px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:9px;font-weight:700;transition:border-color .15s,color .15s,background .15s}.speaker-toggle:hover{border-color:var(--accent)}.speaker-toggle.is-off{border-color:var(--line);color:var(--text-muted);background:0 0}.speaker-row.is-muted .speaker-dot{opacity:.3}.speaker-row.is-muted .speaker-name{color:var(--text-muted)}.speaker-solo{border:1px solid var(--line);min-width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;flex:none;padding:0 6px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10px;font-weight:700;transition:border-color .15s,color .15s,background .15s;display:none}body.ss-mxplus .speaker-solo{justify-content:center;align-items:center;display:inline-flex}.speaker-solo:hover{border-color:var(--accent);color:var(--accent)}.speaker-solo.is-on{border-color:var(--accent-line);background:var(--accent);color:var(--on-accent)}.speaker-row__volrow{align-items:center;gap:8px;display:flex}.speaker-row__volrow .speaker-row__vol{flex:1;width:auto;min-width:0}.speaker-db{text-align:right;font-variant-numeric:tabular-nums;min-width:56px;color:var(--text-muted);flex:none;font:500 10px ui-monospace,SF Mono,Menlo,monospace;display:none}body.ss-mxplus .speaker-db{display:inline}.detail-controls{flex-direction:column;gap:12px;display:flex}.ctrl-row{flex-direction:column;gap:6px;display:flex}.ctrl-head{color:var(--text-soft);justify-content:space-between;align-items:baseline;font-size:11px;display:flex}.ctrl-head label{text-transform:uppercase;letter-spacing:.12em;font-weight:600}.ctrl-num{color:var(--accent);font-family:ui-monospace,SF Mono,Menlo,monospace}.ctrl-row input[type=range]{width:100%;accent-color:var(--accent)}.ctrl-note{opacity:.65;margin:.25rem 0 0;font-size:.72rem;line-height:1.35}.ctrl-row label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-soft);font-size:11px;font-weight:600}.ctrl-row select{appearance:none;background:var(--surface);color:var(--text);border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:6px 10px;font-family:inherit;font-size:12px}.ctrl-row select:focus{border-color:var(--accent)}.ctrl-row select:focus:not(:focus-visible){outline:none}.detail-hint{color:var(--text-muted);margin-top:6px;font-size:11px;line-height:1.55}.hint{background:var(--surface-overlay);border:1px solid var(--line);backdrop-filter:blur(5px);width:max-content;max-width:min(940px,100% - 24px);color:var(--text-soft);border-radius:999px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-inline:auto;padding:8px 14px;font-size:11px;display:flex;bottom:78px;left:0;right:0}.hint>span{white-space:nowrap}.hint kbd{background:var(--kbd-bg);border:1px solid var(--kbd-line);color:var(--text);border-radius:4px;margin:0 2px;padding:2px 6px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10px;display:inline-block}.hint .dot{color:var(--text-muted)}.hint.is-hidden{display:none}.hint__close{appearance:none;width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;margin-left:2px;padding:0;font-size:11px;line-height:1;transition:color .15s,background .15s;display:inline-flex}.hint__close:hover{color:var(--text);background:var(--kbd-bg)}.hint-handle{background:var(--surface-overlay);border:1px solid var(--line);backdrop-filter:blur(5px);width:max-content;height:30px;color:var(--text-soft);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:6px;margin-inline:auto;padding:0 12px;font-size:11px;line-height:1;transition:color .15s,border-color .15s;display:inline-flex;bottom:78px;left:0;right:0}.hint-handle:hover{color:var(--text)}.hint-handle .ph{font-size:15px;line-height:1}.hint-handle.is-hidden{display:none}.start-overlay{z-index:10;background:var(--bg);justify-content:center;align-items:center;transition:opacity .5s;display:flex;position:absolute;inset:0}.start-overlay:before{content:"";background:radial-gradient(circle at 30% 20%, var(--accent-soft) 0%, transparent 50%), radial-gradient(circle at 80% 80%, var(--accent-soft) 0%, transparent 50%);opacity:.7;pointer-events:none;position:absolute;inset:0}.start-overlay.is-hidden,body:has(#start-overlay:not(.is-hidden)) #sdmenu{opacity:0;pointer-events:none}.start-overlay__card{text-align:center;background:var(--surface-elevated);border:1px solid var(--line);max-width:480px;box-shadow:var(--shadow-strong);border-radius:18px;padding:44px 36px;position:relative}.start-overlay__eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--accent);font-size:10px;font-weight:600}.start-overlay__title{letter-spacing:-.025em;color:var(--text);margin-top:10px;font-size:clamp(28px,4.4vw,42px);font-weight:800;line-height:1.12}.start-overlay__sub{color:var(--text-soft);margin-top:16px;font-size:13px;line-height:1.75}.start-btn{margin-top:24px}.start-overlay__legal{text-transform:uppercase;letter-spacing:.16em;color:var(--text-muted);margin-top:18px;font-size:10px;display:block}@keyframes splashIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (width<=820px){.start-overlay{align-items:stretch}.start-overlay:before{opacity:.85}.start-overlay__card{text-align:left;width:100%;max-width:none;height:100%;box-shadow:none;padding:max(40px, calc(env(safe-area-inset-top) + 24px)) 24px max(28px, calc(env(safe-area-inset-bottom) + 20px));background:0 0;border:0;border-radius:0;flex-direction:column;display:flex}.start-overlay__eyebrow{font-size:11px}.start-overlay__title{margin-top:14px;font-size:clamp(34px,11vw,46px);line-height:1.08}.start-overlay__sub{max-width:34ch;margin-top:14px;font-size:14px}.start-overlay__sub br{display:none}.start-btn{justify-content:center;width:100%;margin-top:auto;padding:16px 20px;font-size:15px}.start-overlay__legal{text-align:center;margin-top:16px}.start-overlay__eyebrow,.start-overlay__title,.start-overlay__sub,.start-btn,.start-overlay__legal{animation:.5s cubic-bezier(.22,1,.36,1) both splashIn}.start-overlay__title{animation-delay:50ms}.start-overlay__sub{animation-delay:.1s}.start-btn{animation-delay:.16s}.start-overlay__legal{animation-delay:.22s}}@media (width<=820px) and (prefers-reduced-motion:reduce){.start-overlay__eyebrow,.start-overlay__title,.start-overlay__sub,.start-btn,.start-overlay__legal{animation:none}}.joystick{z-index:6;touch-action:none;user-select:none;width:128px;height:128px;display:none;position:absolute;bottom:28px;left:22px}.joystick__base{background:var(--surface-overlay);border:1px solid var(--line);backdrop-filter:blur(5px);box-shadow:var(--shadow);border-radius:999px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.joystick__knob{background:var(--accent);will-change:transform;border-radius:999px;width:54px;height:54px;transition:transform 80ms ease-out;box-shadow:0 4px 14px #0000004d}.joystick.is-active .joystick__knob{transition:none}body[data-studio-mode=compose] .joystick,body[data-studio-mode=social] .joystick{display:none}.joystick.is-user-hidden{display:none!important}.panel-toggle{cursor:pointer;background:0 0;border:0;width:100%;padding:2px 0 8px;display:none}.panel-toggle__grip{background:var(--line);border-radius:999px;width:42px;height:4px;margin:0 auto;display:block}@media (width<=900px) and (width>=821px){.panel{width:300px}.overlay--left{display:none}.brand__title{font-size:18px}}@media (width<=820px){.hint,.hint-handle,.overlay--left{display:none}.joystick{display:block;bottom:96px}#speaker-panel.is-open~#joystick{display:none}.toast-container{top:calc(env(safe-area-inset-top,0px) + 170px)}.panel-toggle{display:block}.overlay--top{gap:8px;padding:12px 92px 0 12px}.brand__title{font-size:16px}.brand__eyebrow{letter-spacing:.16em;font-size:8px}.status{gap:6px;padding:6px 9px;font-size:10px}.status__pos{display:none}.overlay--right{inset:auto 0 0}#speaker-panel{z-index:6}.panel{border-radius:16px 16px 0 0;width:100%;max-width:none;max-height:74vh;padding:6px 16px 16px;transition:transform .28s;transform:translateY(calc(100% - 78px))}.panel.is-open{transform:translateY(0)}}@media (pointer:coarse) and (width>=821px){.hint,.hint-handle{display:none}.joystick{display:block}}.sdmenu{z-index:30;position:fixed;top:14px;right:14px}.sdmenu__btn{border:1px solid var(--line);background:var(--surface-overlay);backdrop-filter:blur(5px);cursor:pointer;border-radius:10px;grid-template-columns:repeat(3,1fr);gap:3px;width:38px;height:38px;padding:9px;transition:border-color .15s,background .15s;display:grid}.sdmenu__btn span{background:var(--text-soft);border-radius:999px;width:4px;height:4px;display:block}.sdmenu__btn:hover{border-color:var(--accent)}.sdmenu__btn:hover span{background:var(--accent)}.sdmenu__cluster{border:1px solid var(--line);background:var(--surface-overlay);backdrop-filter:blur(5px);border-radius:999px;align-items:center;gap:4px;padding:3px;display:flex}.sdmenu__cluster .sdmenu__btn{backdrop-filter:none;background:0 0;border:0;border-radius:999px}.sdmenu__cluster .theme-toggle{background:0 0;border:0;width:34px;min-width:0;height:34px;min-height:0}.sdmenu__cluster .theme-toggle:hover{background:color-mix(in srgb, var(--text,#eaeaea) 8%, transparent);transform:none}.sdmenu__cluster .sdmenu__btn:hover{background:color-mix(in srgb, var(--text,#eaeaea) 8%, transparent)}.sdmenu__tokens{height:34px;color:var(--text,#eaeaea);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:5px;min-width:0;min-height:0;padding:0 10px;font:600 12px ui-monospace,SF Mono,Menlo,monospace;display:inline-flex}.sdmenu__tokens:hover,.sdmenu__tokens[aria-expanded=true]{background:color-mix(in srgb, var(--text,#eaeaea) 8%, transparent)}.sdmenu__panel--tokens{min-width:210px;padding:12px 14px;display:block}.tokpanel__head{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font:500 10px ui-monospace,monospace}.tokpanel__head--recent{margin-top:10px}.tokpanel__total{margin:2px 0 0;font:700 24px ui-monospace,monospace}.tokpanel__split{color:var(--text-soft);margin-top:2px;font-size:11px}.tokpanel__list{margin:4px 0 0;padding:0;list-style:none}.tokpanel__row{color:var(--text-soft);border-bottom:1px dashed color-mix(in srgb, var(--line) 60%, transparent);padding:3px 0;font:500 11px ui-monospace,monospace}.tokpanel__row:last-child{border-bottom:0}.tokpanel__row--empty{color:var(--text-muted)}.tokpanel__billing{color:var(--accent,#c6ff3a);margin-top:10px;font:600 11px ui-monospace,monospace;text-decoration:none;display:block}.tokpanel__billing:hover{text-decoration:underline}@media (width<=820px){.sdmenu{top:calc(env(safe-area-inset-top,0px) + 8px);right:10px}.sdmenu__cluster{padding:2px}.sdmenu__cluster .sdmenu__btn{width:36px;height:36px;padding:8px}.sdmenu__cluster .theme-toggle{width:32px;height:32px}}.sdmenu__panel{border:1px solid var(--line);background:var(--surface-overlay);backdrop-filter:blur(7px);box-shadow:var(--shadow);border-radius:14px;grid-template-columns:repeat(2,1fr);gap:8px;padding:10px;display:grid;position:absolute;top:46px;right:0}.sdmenu__panel[hidden]{display:none}.sdtile{border:1px solid var(--line);background:var(--surface);width:84px;min-height:78px;color:var(--text);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:10px 6px;font-family:inherit;text-decoration:none;transition:transform .12s,border-color .15s,background .15s;display:flex}.sdtile:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-2px)}.sdtile__icon{background:color-mix(in srgb, var(--accent) 16%, transparent);width:36px;height:36px;color:var(--accent);border-radius:9px;justify-content:center;align-items:center;display:flex}.sdtile__label{letter-spacing:.02em;text-align:center;font-size:11px;font-weight:600;line-height:1.2}.tut-grid{z-index:15;background:var(--surface-overlay);border:1px solid var(--line);width:min(940px,100vw - 32px);max-height:min(78vh,100vh - 84px);box-shadow:var(--shadow-strong);backdrop-filter:blur(8px);border-radius:18px;flex-direction:column;display:flex;position:fixed;top:60px;left:50%;overflow:hidden;transform:translate(-50%)}.tut-grid__head{flex:none;justify-content:space-between;align-items:center;padding:16px 18px 12px;display:flex}.tut-grid__title{letter-spacing:-.02em;color:var(--text);font-size:clamp(20px,2.4vw,26px);font-weight:800}.tut-grid__close{border:1px solid var(--line);background:var(--surface-overlay);width:38px;height:38px;color:var(--text-soft);border-radius:10px;justify-content:center;align-items:center;font-size:15px;text-decoration:none;display:inline-flex}.tut-grid__close:hover{border-color:var(--accent);color:var(--accent)}.tut-grid__scroll{flex:auto;padding:0 18px 22px;overflow-y:auto}.tut-cat{margin-bottom:22px}.tut-cat__title{text-transform:uppercase;letter-spacing:.16em;color:var(--accent);margin-bottom:10px;font-size:11px;font-weight:700}.tut-cat__grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;display:grid}.sdtile--term{width:100%;position:relative}.sdtile.is-soon{opacity:.38;cursor:not-allowed}.sdtile.is-soon:hover{border-color:var(--line);background:var(--surface);transform:none}.sdtile__soon{letter-spacing:.1em;color:var(--text-muted);font-size:9px}body:has(.tut-mount) .overlay--top,body:has(.tut-grid) .overlay--top{display:none}.tut-mount{z-index:16;position:fixed;top:14px;left:14px}.tut-back{border:1px solid var(--line);background:var(--surface-overlay);backdrop-filter:blur(5px);color:var(--text-soft);border-radius:999px;align-items:center;gap:4px;padding:8px 13px;font-size:12px;text-decoration:none;display:inline-flex}.tut-back:hover{border-color:var(--accent);color:var(--accent)}.coach{z-index:25;pointer-events:none;position:fixed;inset:0}.coach__spot{box-shadow:0 0 0 9999px color-mix(in srgb, var(--bg) 64%, transparent);outline:2px solid var(--accent);outline-offset:0;pointer-events:none;border-radius:12px;transition:left .18s,top .18s,width .18s,height .18s;position:fixed}.coach__tip{border:1px solid var(--accent-line);background:var(--surface-overlay);backdrop-filter:blur(7px);max-width:320px;box-shadow:var(--shadow-strong);pointer-events:auto;border-radius:14px;padding:14px 16px;position:fixed}.coach__progress{letter-spacing:.1em;color:var(--accent);margin-bottom:6px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10px}.coach__text{color:var(--text);margin-bottom:12px;font-size:13px;line-height:1.6}.coach__actions{justify-content:flex-end;gap:8px;display:flex}.coach__actions button{cursor:pointer;border:1px solid var(--line);color:var(--text-soft);background:0 0;border-radius:8px;padding:7px 13px;font-family:inherit;font-size:12px}.coach__exit:hover,.coach__skip:hover{border-color:var(--text-soft);color:var(--text)}.coach__next{font-weight:700;border-color:var(--accent)!important;background:var(--accent)!important;color:var(--on-accent)!important}.coach__next:disabled{opacity:.4;cursor:not-allowed}.tut-toast{z-index:40;background:var(--surface-overlay);border:1px solid var(--line);backdrop-filter:blur(5px);color:var(--text);border-radius:999px;padding:9px 16px;font-size:12px;animation:.18s tut-toast-in;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}@keyframes tut-toast-in{0%{opacity:0;transform:translate(-50%,6px)}}@media (width<=640px){.sdmenu__panel{grid-template-columns:repeat(2,1fr)}.tut-grid{max-height:calc(100vh - 72px);top:52px}.tut-grid__head{padding:13px 14px 9px}.tut-grid__scroll{padding:0 14px 20px}.tut-cat__grid{grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:8px}.coach__tip{max-width:none;right:12px;top:auto!important;bottom:16px!important;left:12px!important;transform:none!important}}.concept-panel{z-index:18;border:1px solid var(--line);background:var(--surface-overlay);backdrop-filter:blur(7px);width:230px;box-shadow:var(--shadow);border-radius:14px;padding:14px 16px;position:fixed;top:50%;left:22px;transform:translateY(-50%)}.concept-panel__title{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:10px;font-size:11px;font-weight:700}.concept-panel__row{margin-bottom:10px}.concept-panel__head{color:var(--text-soft);justify-content:space-between;align-items:baseline;margin-bottom:4px;font-size:11px;display:flex}.concept-panel__val{color:var(--accent);font-family:ui-monospace,SF Mono,Menlo,monospace}.concept-panel input[type=range]{width:100%;accent-color:var(--accent)}body.concept-active .overlay--right,body.concept-active .overlay--left,body.concept-active .hint{display:none}.concept-panel__row>.concept-panel__selabel{color:var(--text-soft);margin-bottom:4px;font-size:11px;display:block}.concept-panel__select{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--text);font:inherit;border-radius:8px;padding:6px 8px;font-size:12px}.coach__deeper-btn{border:1px solid var(--line);color:var(--accent);font:inherit;cursor:pointer;background:0 0;border-radius:8px;align-self:flex-start;margin:2px 0 0;padding:3px 8px;font-size:12px}.coach__deeper-btn:hover{border-color:var(--accent)}.coach__deeper{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 70%, transparent);border-radius:10px;flex-direction:column;gap:8px;margin:4px 0 2px;padding:10px 12px;display:flex}.coach__deeper-text{color:var(--text);margin:0;font-size:13px;line-height:1.5}.coach__formula{color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);white-space:pre-wrap;border-radius:6px;padding:6px 8px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.coach__deeper-real{color:var(--text-soft);margin:0;font-size:12px}#sub-gate{z-index:2147483000;background:color-mix(in srgb, var(--bg,#0a0a0a) 82%, transparent);-webkit-backdrop-filter:blur(12px);place-items:center;padding:24px;display:grid;position:fixed;inset:0}#sub-gate .sg-card{text-align:center;background:var(--bg,#0c0c0c);border:1px solid color-mix(in srgb, var(--accent,#c6ff3a) 55%, var(--line-strong,#2a2a2a));width:100%;max-width:380px;padding:32px 28px;box-shadow:0 24px 64px #0006}#sub-gate .sg-title{color:var(--text,#eaeaea);margin:0 0 12px;font:800 22px/1.1 Archivo Black,system-ui,sans-serif}#sub-gate .sg-body{color:color-mix(in srgb, var(--text,#eaeaea) 72%, transparent);margin:0 0 14px;font-size:13.5px;line-height:1.6}#sub-gate .sg-price{letter-spacing:.02em;color:var(--accent,#c6ff3a);margin:0 0 18px;font:700 12px DM Mono,ui-monospace,monospace}#sub-gate .sg-links{justify-content:center;gap:16px;display:flex}#sub-gate .sg-cta{background:var(--accent,#c6ff3a);color:#0a0a0a;letter-spacing:.03em;text-transform:uppercase;padding:12px 16px;font:700 13px DM Mono,ui-monospace,monospace;text-decoration:none;display:block}:root[data-character] #sub-gate .sg-cta{color:var(--on-accent,#0a0a0a)}#sub-gate .sg-cta:hover{filter:brightness(1.05)}#sub-gate .sg-back{color:color-mix(in srgb, var(--text,#eaeaea) 60%, transparent);margin-top:14px;font:500 12px DM Mono,ui-monospace,monospace;text-decoration:none;display:inline-block}#sub-gate .sg-back:hover{color:var(--accent,#c6ff3a)}.mode-switcher{z-index:8;background:var(--surface-overlay,color-mix(in srgb, var(--bg,#0a0a0a) 82%, transparent));border:1px solid var(--line,color-mix(in srgb, var(--fg,#fff) 14%, transparent));backdrop-filter:blur(6px);max-width:calc(100vw - 24px);box-shadow:var(--shadow,0 12px 40px #00000080);border-radius:999px;gap:4px;padding:5px;display:flex;position:fixed;bottom:20px;left:50%;overflow-x:auto;transform:translate(-50%)}.mode-switcher .ms-tile{letter-spacing:.02em;white-space:nowrap;color:var(--text-muted,color-mix(in srgb, var(--fg,#eaeaea) 55%, transparent));border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font:600 12px/1 system-ui,sans-serif;text-decoration:none;transition:color .15s,background .15s;display:inline-flex}.mode-switcher .ms-tile:hover{color:var(--text,var(--fg,#eaeaea))}.mode-switcher .ms-tile.is-active{background:var(--accent,#c6ff3a);color:var(--on-accent,#0a0a0a)}.mode-switcher .ms-lock{color:var(--accent,#c6ff3a);align-items:center;display:inline-flex}.mode-switcher .ms-tile.is-active .ms-lock{color:var(--on-accent,#0a0a0a)}body:has(#start-overlay:not(.is-hidden)) .mode-switcher{opacity:0;pointer-events:none}@media (width<=820px){.mode-switcher{bottom:auto;top:calc(env(safe-area-inset-top,0px) + var(--shell-header-h,48px) + var(--studio-topbar-h,62px) + 8px)}.mode-switcher .ms-tile{order:-2;min-height:40px;padding:7px 11px;font-size:11px}.mode-switcher .ms-divider{order:-1}}.studio-transport{align-items:center;gap:2px;display:none}body[data-studio-mode=listen] .studio-transport,body[data-studio-mode=simulate] .studio-transport{display:inline-flex}.ms-divider{background:var(--line,color-mix(in srgb, var(--fg,#fff) 14%, transparent));align-self:stretch;width:1px;margin:4px 8px 4px 6px;display:none}body[data-studio-mode=listen] .ms-divider,body[data-studio-mode=simulate] .ms-divider{display:inline-block}.studio-transport .tp-btn{width:34px;height:34px;color:var(--text-muted,color-mix(in srgb, var(--fg,#eaeaea) 55%, transparent));cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:color .15s,background .15s;display:inline-flex;position:relative}.studio-transport .tp-btn:hover{color:var(--text,var(--fg,#eaeaea));background:color-mix(in srgb, var(--fg,#fff) 8%, transparent)}.studio-transport .tp-btn:disabled{opacity:.4;cursor:default;background:0 0}.studio-transport .tp-play,.studio-transport .tp-play:hover{color:var(--on-accent,#0a0a0a);background:var(--accent,#c6ff3a)}.studio-transport .tp-btn svg.tp-ic-pause,.studio-transport.is-playing .tp-btn svg.tp-ic-play{display:none}.studio-transport.is-playing .tp-btn svg.tp-ic-pause{display:block}.studio-transport:not(.is-recording) .tp-recstop{opacity:.4;cursor:default}.studio-transport:not(.is-recording) .tp-recstop:hover{color:var(--text-muted,color-mix(in srgb, var(--fg,#eaeaea) 55%, transparent));background:0 0}.studio-transport .tp-btn svg{display:block}.studio-transport .tp-lock{color:var(--accent,#c6ff3a);display:inline-flex;position:absolute;top:1px;right:1px}.studio-transport.is-recording .tp-rec,.studio-transport.is-recording .tp-rec:hover{color:#fff;background:#e5484d;animation:1.2s ease-in-out infinite tp-rec-pulse;box-shadow:0 0 0 3px #e5484d52}.studio-transport:not(.is-recording) .tp-recstop{opacity:.4}.studio-transport .tp-clock{font:600 11px/1 var(--font-mono,ui-monospace, monospace);font-variant-numeric:tabular-nums;color:var(--text-muted,color-mix(in srgb, var(--fg,#eaeaea) 55%, transparent));text-align:center;user-select:none;min-width:4.5ch;padding:0 4px}.studio-transport.is-idle .tp-clock{opacity:.4}.studio-transport .tp-recbadge{color:#fff;font:700 10px/1 var(--font-mono,ui-monospace, monospace);font-variant-numeric:tabular-nums;letter-spacing:.06em;white-space:nowrap;background:#e5484d;border-radius:999px;align-items:center;gap:5px;margin-left:2px;padding:4px 8px;display:inline-flex}.studio-transport .tp-recbadge__t{font-weight:700}.studio-transport .tp-recbadge[hidden]{display:none!important}@keyframes tp-rec-pulse{50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.studio-transport.is-recording .tp-rec{animation:none}}.studio-transport .tp-bounce.is-busy{opacity:.45;cursor:progress}body:has(#start-overlay:not(.is-hidden)) .studio-transport{opacity:0;pointer-events:none}@media (width<=820px){.studio-transport .tp-btn{width:40px;height:40px}}@media (width<=820px) and (height>=501px){body[data-studio-mode=listen] .mode-switcher,body[data-studio-mode=simulate] .mode-switcher{padding-right:24px;scroll-padding-right:24px;mask-image:linear-gradient(90deg,#000 calc(100% - 24px),#0000)}}@media (width<=820px) and (height<=500px){.studio-transport{display:none!important}}body:has(#speaker-panel.is-open) .mode-switcher,body:has(#speaker-panel.is-open) .studio-transport,body:has(#speaker-panel.is-open) .compose-dock{opacity:0;pointer-events:none}.ms-divider.ms-divider--always{display:inline-block}.mode-switcher .ms-keymove{width:34px;height:34px;color:var(--text-muted,color-mix(in srgb, var(--fg,#eaeaea) 55%, transparent));cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0;transition:color .15s,background .15s;display:inline-flex;position:relative}.mode-switcher .ms-keymove:hover{color:var(--text,var(--fg,#eaeaea));background:color-mix(in srgb, var(--fg,#fff) 8%, transparent)}.mode-switcher .ms-keymove.is-locked{color:var(--accent,#c6ff3a)}.mode-switcher .ms-keymove .ms-keymove__lock{color:var(--accent,#c6ff3a);display:none;position:absolute;top:1px;right:1px}.mode-switcher .ms-keymove.is-locked .ms-keymove__lock{display:inline-flex}@media (width<=820px){.mode-switcher .ms-keymove{width:40px;height:40px}.mode-switcher .ms-divider--always{order:1}.mode-switcher .ms-keymove{order:2}}.mode-switcher #joystick-lock{display:none}@media (width<=820px){.mode-switcher #joystick-lock{order:2;display:inline-flex}}@media (pointer:coarse) and (width>=821px){.mode-switcher #joystick-lock{display:inline-flex}}body[data-studio-mode=compose] .mode-switcher #joystick-lock,body[data-studio-mode=social] .mode-switcher #joystick-lock{display:none}
