@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/oswald-latin-300-normal-Cl0rPaJv.woff2)format("woff2"),url(/assets/oswald-latin-300-normal-DLdBc7-y.woff)format("woff")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/oswald-latin-500-normal-B-eyT0Dw.woff2)format("woff2"),url(/assets/oswald-latin-500-normal-DM85Di4w.woff)format("woff")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/oswald-latin-600-normal-plFmSr5g.woff2)format("woff2"),url(/assets/oswald-latin-600-normal-DRToI_2E.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-600-normal-BfsvjouI.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.woff)format("woff")}:root{--bg:#1b1f33;--bg-deep:#171a2b;--panel:#232840;--panel-2:#1f2438;--panel-accent:#221d2c;--border:#343a55;--border-strong:#3d445f;--border-mute:#2b3149;--bar:#6c7493;--text:#f8fafc;--text-2:#cbd3e6;--text-3:#94a3b8;--text-4:#8d95b3;--accent:#f97316;--accent-hover:#fb9a4b;--accent-fill:#3d2417;--accent-border:#7c3a12;--clip-1:#f97316;--clip-2:#38bdf8;--clip-3:#a78bfa;--clip-4:#f472b6;--ok:#4ade80;--ok-fill:#12301f;--ok-border:#1e6b3c;--bad:#f87171;--bad-fill:#2f1416;--bad-border:#7f2225;--error:#dc2626;--accent-text:var(--accent);--accent-text-hover:var(--accent-hover);--ok-text:var(--ok);--bad-text:var(--bad);--on-accent:#171a2b;--page-ground:#0d1020;--brand-tile:#2c2036;--panel-glass:#232840d1;--panel-2-glass:#1f2438db;--panel-glass-solid:#232840f5;--wall-plate:#0f1220;--wall-card:#1b2038;--wall-card-border:#333b5e;--wall-title:#8b95bd;--wall-meta:#6d78a0;--wall-line:#6b76a3;--scrim-fade:linear-gradient(180deg, #0f12201a 0%, #0f122047 40%, #0f12209e 100%);--scrim-glow:radial-gradient(120% 80% at 50% 0%, #f9731612 0%, #0000 55%);--scrim-vignette:inset 0 0 200px 30px #090b1459;--drawer-scrim:#090b149e;--dialog-scrim:#090b1475;--shadow-panel:0 24px 60px #090b148c;--shadow-panel-tight:0 18px 44px #090b1499;--shadow-pop:0 18px 40px #00000073;--ring-muted:#f8fafc40;--display:"Oswald", sans-serif;--ui:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--radius-panel:14px;--radius-control:10px;--radius-nav:9px;--radius-tile:9px;--radius-step:6px;--radius-pill:99px;--gutter:26px;--sidebar-w:246px;--header-h:69px}:root[data-theme=light]{--bg:#f6f4f0;--bg-deep:#efece6;--panel:#fff;--panel-2:#faf8f5;--panel-accent:#fff6ef;--page-ground:#efece6;--brand-tile:#fff2e7;--border:#d0cabf;--border-strong:#d0cabf;--border-mute:#e6e2da;--bar:#8f867a;--text:#171a2b;--text-2:#4a4f66;--text-3:#5c6076;--text-4:#63687d;--accent:#ea580c;--accent-hover:#f97316;--accent-fill:#fff2e7;--accent-border:#f6c9a4;--accent-text:#c2410c;--accent-text-hover:#9a3412;--on-accent:#171a2b;--clip-1:#ea580c;--clip-2:#0369a1;--clip-3:#6d28d9;--clip-4:#be185d;--ok:#15803d;--ok-fill:#f0fbf4;--ok-border:#b6e3c8;--ok-text:#15803d;--bad:#dc2626;--bad-fill:#fdeaea;--bad-border:#f5a3a3;--bad-text:#b91c1c;--error:#b91c1c;--panel-glass:#ffffffdb;--panel-2-glass:#ffffffe6;--panel-glass-solid:#fffffff5;--wall-plate:#efece6;--wall-card:#fbfaf8;--wall-card-border:#e0dbd2;--wall-title:#a49c8f;--wall-meta:#bab2a4;--wall-line:#b7afa1;--scrim-fade:linear-gradient(180deg, #f6f4f024 0%, #f6f4f057 40%, #f6f4f09e 100%);--scrim-glow:radial-gradient(120% 80% at 50% 0%, #f973161a 0%, #0000 55%);--scrim-vignette:inset 0 0 200px 30px #f6f4f08c;--drawer-scrim:#3c342857;--dialog-scrim:#3c34283d;--shadow-panel:0 20px 50px #3c34281a;--shadow-panel-tight:0 14px 34px #3c34281f;--shadow-pop:0 18px 40px #3c342829;--ring-muted:#171a2b2e}*{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:clip}body{background:var(--page-ground);color:var(--text);font-family:var(--ui);-webkit-font-smoothing:antialiased;font-size:13px}html{-webkit-tap-highlight-color:transparent}button{font-family:var(--ui);cursor:pointer}button:not(:disabled):active{translate:0 1px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-shell{grid-template-columns:var(--sidebar-w) 1fr;background:var(--bg);min-height:100vh;display:grid}.main-col{flex-direction:column;min-width:0;display:flex}.sidebar{background:var(--bg-deep);border-right:1px solid var(--border);flex-direction:column;align-self:start;height:100dvh;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{height:var(--header-h);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:11px;padding:0 18px;display:flex}.brand-mark{background:var(--brand-tile);border:1px solid var(--accent);width:28px;height:28px;color:var(--accent);border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.brand-name{font:600 20px/1 var(--display);letter-spacing:.1em;text-transform:uppercase;margin:0}.sidebar-group{padding:14px 14px 0}.sidebar-group+.sidebar-group{padding-top:22px}.sidebar-group-label{font:500 10px/1 var(--ui);letter-spacing:.22em;color:var(--text-4);padding:0 10px 10px}.sidebar-nav{flex-direction:column;gap:2px;display:flex}.nav-item{border-radius:var(--radius-nav);width:100%;color:var(--text-2);font:400 13px/1 var(--ui);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:11px;padding:11px;display:flex}.nav-item svg{color:var(--text-3);flex:none}.nav-item:hover:not(:disabled){background:var(--panel);color:var(--text)}.nav-item.active{background:var(--panel);border-color:var(--border-strong);color:var(--accent);font-weight:500}.nav-item.active svg{color:var(--accent)}.nav-counter{border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);font:700 10px/1 var(--ui);margin-left:auto;padding:4px 7px}.sidebar-footer{border-top:1px solid var(--border);margin-top:auto;padding:14px}.user-card{align-items:center;gap:10px;margin-bottom:12px;display:flex}.user-avatar{background:var(--accent-fill);border:1px solid var(--accent-border);width:30px;height:30px;color:var(--accent);font:700 11px/1 var(--ui);border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.user-meta{flex-direction:column;gap:3px;min-width:0;display:flex}.user-email-only{text-overflow:ellipsis;white-space:nowrap;font:500 11px/1.3 var(--ui);color:var(--text-2);overflow:hidden}.sidebar-signout{border:1px solid var(--border);border-radius:var(--radius-nav);width:100%;color:var(--text-3);font:400 12px/1 var(--ui);background:0 0;align-items:center;gap:9px;padding:10px 11px;display:flex}.sidebar-signout:hover{border-color:var(--border-strong);color:var(--text)}.sidebar-signout svg{flex:none}.topbar{height:var(--header-h);padding:0 var(--gutter);background:var(--bg-deep);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:12px;display:flex}.topbar-search{background:var(--panel-2);border:1px solid var(--border-strong);border-radius:var(--radius-pill);flex:1;align-items:center;gap:9px;max-width:340px;padding:9px 14px;display:flex;position:relative}.topbar-search:focus-within{border-color:var(--accent)}.search-results{z-index:30;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-control);max-height:320px;box-shadow:var(--shadow-pop);margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.search-result{border-radius:var(--radius-step);width:100%;color:var(--text-2);text-align:left;background:0 0;border:none;flex-direction:column;gap:3px;padding:9px 11px;display:flex}.search-result.active{background:var(--panel-2);color:var(--text)}.search-result-title{font:500 12px/1.3 var(--ui);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.search-result-performer{font:400 10px/1 var(--ui);color:var(--text-4)}.search-empty{font:400 11px/1.5 var(--ui);color:var(--text-4);padding:12px 11px}.project-sort{color:inherit;font:inherit;letter-spacing:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:flex}.project-sort:hover{color:var(--text-2)}.project-sort.active{color:var(--accent)}.project-sort-arrow{opacity:.45;font-size:11px}.project-sort.active .project-sort-arrow{opacity:1}.topbar-search svg{color:var(--text-4);flex:none}.topbar-search input{min-width:0;color:var(--text);font:400 12px/1 var(--ui);background:0 0;border:none;flex:1}.topbar-search input::placeholder{color:var(--text-4)}.topbar-search input:focus{outline:none}.topbar-meta{font:400 11px/1 var(--ui);color:var(--text-4);flex:none}.topbar-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.icon-button{border-radius:var(--radius-pill);background:var(--panel-2);border:1px solid var(--border-strong);width:36px;height:36px;color:var(--text-3);flex:none;justify-content:center;align-items:center;display:flex;position:relative}.theme-toggle{cursor:pointer;font:inherit;padding:0}.theme-toggle:hover{color:var(--accent);border-color:var(--accent-border)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.landing-header-actions{align-items:center;gap:6px;display:flex}.theme-toggle.landing-theme-toggle{border-radius:var(--radius-pill);width:32px;height:32px;color:var(--text-3);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.content{min-width:0;padding:0 var(--gutter) 30px;flex-direction:column;flex:1;display:flex}.btn-primary{border-radius:var(--radius-control);background:var(--accent);color:var(--on-accent);font:700 13px/1 var(--ui);border:none;justify-content:center;align-items:center;gap:8px;padding:15px 22px;display:inline-flex}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary.pill{border-radius:var(--radius-pill);padding:10px 17px;font-size:12px}.btn-secondary{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--panel-2);color:var(--text-2);font:600 12px/1 var(--ui);padding:12px 18px}.btn-secondary:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:not-allowed}.stepper{min-height:44px;font:400 11px/1 var(--ui);color:var(--text-3);align-items:center;gap:8px;display:flex}.stepper-btn{border:1px solid var(--border-strong);border-radius:var(--radius-step);background:var(--panel-2);width:22px;height:22px;color:var(--text-2);font:600 12px/1 var(--ui);flex:none;justify-content:center;align-items:center;display:flex}.stepper-btn:hover:not(:disabled){border-color:var(--accent);color:var(--text)}.stepper-value{text-align:center;min-width:44px;font:600 11px/1 var(--ui);color:var(--text)}.segmented{background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-pill);gap:6px;width:max-content;padding:5px;display:flex}.tab-button{border-radius:var(--radius-pill);color:var(--text-3);font:400 12px/1 var(--ui);background:0 0;border:none;padding:9px 16px}.tab-button:hover:not(:disabled):not(.active){color:var(--text)}.tab-button.active{background:var(--text);color:var(--bg-deep);font-weight:600}.switch{background:var(--panel-2);border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text-2);font:500 11px/1 var(--ui);cursor:pointer;white-space:nowrap;align-items:center;gap:9px;padding:9px 13px;display:inline-flex}.switch input{opacity:0;width:1px;height:1px;position:absolute}.switch-track{border-radius:var(--radius-pill);background:var(--border-strong);flex:none;justify-content:flex-start;align-items:center;width:30px;height:16px;padding:2px;transition:background .12s;display:flex}.switch-knob{border-radius:var(--radius-pill);background:var(--text-3);width:12px;height:12px;transition:background .12s;display:block}.switch input:checked+.switch-track{background:var(--accent);justify-content:flex-end}.switch input:checked+.switch-track .switch-knob{background:var(--bg-deep)}.switch input:focus-visible+.switch-track{outline:2px solid var(--accent);outline-offset:2px}input[type=range]{appearance:none;border-radius:var(--radius-pill);background:var(--panel-2);cursor:pointer;height:5px}input[type=range]::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-pill);background:var(--text);border:none;width:13px;height:13px}input[type=range]::-moz-range-thumb{border-radius:var(--radius-pill);background:var(--text);border:none;width:13px;height:13px}input[type=range]:disabled{opacity:.45;cursor:not-allowed}input[type=checkbox]{accent-color:var(--accent);cursor:pointer}select{background:var(--panel-2);border:1px solid var(--border-strong);color:var(--text);font:500 11px/1.3 var(--ui);border-radius:8px;padding:8px 10px}select:hover{border-color:var(--accent)}.step-label{font:500 11px/1 var(--ui);letter-spacing:.2em;color:var(--accent);margin-bottom:14px}.hero{padding-top:34px}.hero h1{max-width:820px;font:300 62px/.98 var(--display);letter-spacing:.005em;text-transform:uppercase;margin:0 0 12px}.hero h1 strong{font-weight:600}.hero-lede{max-width:620px;font:400 13px/1.6 var(--ui);color:var(--text-3);margin:0 0 4px}.upload-note{max-width:620px;font:400 11px/1.5 var(--ui);color:var(--text-4);margin:12px 0 0}.upgrade-panel{text-align:left;background:var(--panel);border:1px solid var(--accent-border);border-radius:var(--radius-panel);max-width:620px;margin:14px 0;padding:16px 18px}.upgrade-panel-title{font:500 18px/1.2 var(--display);letter-spacing:.02em;text-transform:uppercase;color:var(--text);margin:0}.upgrade-panel-body{font:400 12.5px/1.6 var(--ui);color:var(--text-2);margin:6px 0 0}.upgrade-panel-lines{grid-template-columns:repeat(3,1fr);gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.upgrade-panel-lines li{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-control);flex-direction:column;gap:4px;padding:9px 10px;display:flex}.upgrade-panel-lines li.is-next{border-color:var(--accent);background:var(--accent-fill)}.upgrade-panel-plan{font:600 10px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3)}.upgrade-panel-lines li.is-next .upgrade-panel-plan{color:var(--accent-text)}.upgrade-panel-value{font:500 12px/1.35 var(--ui);color:var(--text)}.upgrade-panel-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.upgrade-panel-go{text-decoration:none}@media (width<=620px){.upgrade-panel-lines{grid-template-columns:1fr}}.upgrade-headsup{font:400 12px/1.6 var(--ui);color:var(--text-3);margin:10px 0}.user-plan{font:400 10.5px/1.3 var(--ui);color:var(--text-4);margin-top:2px;text-decoration:none;display:block}.user-plan-up{color:var(--accent-text);font-weight:600}.user-plan:hover .user-plan-up{color:var(--accent-text-hover)}.upgrade-link{color:var(--accent-text);white-space:nowrap;font-weight:600}.upgrade-link:hover{color:var(--accent-text-hover)}.storage-bar{max-width:620px;margin:14px 0 0}.storage-bar-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:6px;display:flex}.storage-bar-label{font:400 10px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--text-4)}.storage-bar-figure{font:400 11px/1 var(--ui);color:var(--text-3)}.storage-bar-track{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-pill);height:8px;overflow:hidden}.storage-bar-fill{background:var(--text-4);border-radius:var(--radius-pill);height:100%}.storage-bar.is-nearly-full .storage-bar-fill{background:var(--text)}.storage-bar.is-full .storage-bar-fill{background:var(--bad)}.storage-bar-note{font:400 11px/1.5 var(--ui);color:var(--text-4);margin:6px 0 0}.storage-bar.is-full .storage-bar-note{color:var(--bad)}.section{padding-top:28px}.file-upload{padding:34px var(--gutter);background:var(--bg-deep);border:1px dashed var(--bar);border-radius:var(--radius-panel);cursor:pointer;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:26px;margin-top:14px;display:flex}.file-upload.dragging{border-style:solid;border-color:var(--accent);background:var(--panel-accent)}.file-upload.disabled{opacity:.6;cursor:not-allowed}.upload-lead{align-items:center;gap:20px;min-width:0;display:flex}.upload-icon{background:var(--accent-fill);border:1px solid var(--accent-border);width:52px;height:52px;color:var(--accent);border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.upload-text{font:500 28px/1.05 var(--display);letter-spacing:.02em;text-transform:uppercase;margin:0 0 7px}.upload-hint{font:400 12px/1.4 var(--ui);color:var(--text-4);margin:0}.upload-error{font:400 11px/1.4 var(--ui);color:var(--bad);flex-basis:100%;margin:8px 0 0}.youtube-input{padding:26px var(--gutter);background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-panel);flex-wrap:wrap;align-items:center;gap:20px;margin-top:14px;display:flex}.youtube-input.disabled{opacity:.6}.youtube-icon{background:var(--accent-fill);border:1px solid var(--accent-border);width:52px;height:52px;color:var(--accent);border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.youtube-input-container{flex:1;gap:10px;min-width:260px;display:flex}.youtube-url-input{background:var(--panel-2);border:1px solid var(--border-strong);border-radius:var(--radius-control);min-width:0;color:var(--text);font:400 13px/1 var(--ui);flex:1;padding:14px 16px}.youtube-url-input::placeholder{color:var(--text-4)}.youtube-url-input:focus{border-color:var(--accent);outline:none}.youtube-submit-button{border-radius:var(--radius-control);background:var(--accent);color:var(--on-accent);font:700 13px/1 var(--ui);border:none;flex:none;padding:14px 22px}.youtube-submit-button:hover:not(:disabled){background:var(--accent-hover)}.youtube-error,.youtube-hint{font:400 11px/1.4 var(--ui);flex-basis:100%;margin:0}.youtube-error{color:var(--bad)}.youtube-hint{color:var(--text-4)}.project-list{padding-top:28px}.project-list-page{min-height:100dvh}.project-list-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.project-list-title{font:500 28px/1.1 var(--display);letter-spacing:.01em;text-transform:uppercase;color:var(--text);margin:0}.project-list-count{font:500 11px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--text-4)}.project-table{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);overflow:hidden}.project-row{border:none;border-bottom:1px solid var(--border-mute);text-align:left;width:100%;color:var(--text);background:0 0;grid-template-columns:1fr 80px minmax(130px,250px) 80px 140px 44px;align-items:center;gap:14px;padding:15px 18px;display:grid}.project-body .project-row{cursor:pointer}.project-row.head{background:var(--panel-2);border-bottom:1px solid var(--border);font:500 10px/1 var(--ui);letter-spacing:.14em;color:var(--text-4);padding:14px 18px}.project-body .project-row:last-child{border-bottom:none}.project-body .project-row:hover{background:var(--panel-2)}.project-body .project-row:hover .project-name{color:var(--accent)}.project-name{min-width:0;color:inherit;text-align:left;font:500 13px/1.3 var(--ui);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;padding:0;overflow:hidden}.project-name:hover{color:var(--accent)}.project-cell{font:400 12px/1 var(--ui);color:var(--text-3)}.project-cell.muted{color:var(--text-4)}.project-mode-badge,.project-format-badge{border-radius:var(--radius-pill);background:var(--panel-2);border:1px solid var(--border-strong);color:var(--text-2);font:600 10px/1 var(--ui);letter-spacing:.1em;justify-self:start;padding:6px 10px}.project-analyses{flex-wrap:wrap;gap:5px;min-width:0;display:flex}.project-delete{width:34px;height:34px;color:var(--text-4);background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;justify-self:end;align-items:center;display:flex}.project-delete:hover{border-color:var(--bad-border);color:var(--bad)}.project-empty{font:400 12px/1.5 var(--ui);color:var(--text-4);padding:18px}.project-failed{color:var(--text-2);flex-direction:column;align-items:flex-start;gap:12px;display:flex}.project-failed p{margin:0}.processing{max-width:720px;padding-top:34px}.processing-title{font:500 28px/1.1 var(--display);letter-spacing:.02em;text-transform:uppercase;overflow-wrap:anywhere;margin:0 0 7px}.processing-meta{font:400 12px/1 var(--ui);color:var(--text-4);margin:0 0 22px}.progress-bar{background:var(--panel-2);border-radius:var(--radius-pill);height:14px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:var(--radius-pill);height:100%;transition:width .3s}.progress-legend{font:600 12px/1 var(--ui);justify-content:space-between;align-items:baseline;margin-top:10px;display:flex}.progress-step{color:var(--text-4)}.stage-list{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);margin-top:20px;overflow:hidden}.stage-row{border-bottom:1px solid var(--border-mute);font:400 13px/1.3 var(--ui);color:var(--text-4);align-items:center;gap:14px;padding:15px 18px;display:flex}.stage-row:last-child{border-bottom:none}.stage-row.done{color:var(--text-2)}.stage-row.running{background:var(--panel-accent);color:var(--text)}.stage-box{border:1px solid var(--bar);border-radius:var(--radius-pill);color:#0000;flex:none;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.stage-row.done .stage-box{background:var(--text);border-color:var(--text);color:var(--bg-deep)}.stage-row.running .stage-box{border:3px solid var(--accent)}.stage-now{font:600 10px/1 var(--ui);letter-spacing:.12em;color:var(--accent);margin-left:auto}.results{padding-bottom:calc(var(--dock-h,210px) + 18px);flex-direction:column;flex:1;gap:16px;display:flex}.manual-tempo{border-top:1px solid var(--border-mute);flex-direction:column;gap:9px;padding-top:11px;display:flex}.manual-tempo-note{font:400 11px/1.5 var(--ui);color:var(--text-3);margin:0}.manual-tempo-row{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.tap-button{-webkit-user-select:none;user-select:none;min-width:104px}.manual-tempo-field{font:400 11px/1 var(--ui);color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:7px;display:inline-flex}.manual-tempo-field input{background:var(--panel-2);border:1px solid var(--border-strong);border-radius:var(--radius-control);width:66px;color:var(--text);font:500 13px/1 var(--ui);font-variant-numeric:tabular-nums;text-align:center;padding:9px 10px}.manual-tempo-field input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.manual-tempo-state{font:500 11px/1 var(--ui);font-variant-numeric:tabular-nums;color:var(--text-2);margin:0}.btn-ghost{border:1px solid var(--border-mute);border-radius:var(--radius-control);color:var(--text-3);font:400 11px/1 var(--ui);cursor:pointer;background:0 0;padding:9px 13px}.btn-ghost:hover{color:var(--text);border-color:var(--border-strong)}.song-header{flex-direction:column;min-width:0;padding:22px 0 0;display:flex}.song-performer{font:400 12px/1.4 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);margin:0 0 5px}.song-title{font:500 30px/1.2 var(--display);letter-spacing:.02em;color:var(--text);overflow-wrap:anywhere;margin:0}.song-meta{min-width:0;font:400 11px/1.4 var(--ui);color:var(--text-4);flex-wrap:wrap;align-items:center;gap:8px;margin:9px 0 0;display:flex}.song-fact{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.song-meta-dot{color:var(--border-strong)}@media (width<=720px){.song-title{font-size:24px}}.answer-row{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;padding-top:24px;display:grid}.stat-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);padding:18px}.stat-card.emphasis{background:var(--panel-accent);border-color:var(--accent)}.stat-card-top{justify-content:space-between;align-items:flex-start;gap:10px;min-height:34px;margin-bottom:16px;display:flex}.stat-card-icon{border-radius:var(--radius-tile);background:var(--panel-2);border:1px solid var(--border-strong);width:34px;height:34px;color:var(--text-3);flex:none;justify-content:center;align-items:center;display:flex}.stat-card.emphasis .stat-card-icon{background:var(--accent-fill);border-color:var(--accent-border);color:var(--accent)}.stat-delta{border-radius:var(--radius-pill);font:700 10px/1 var(--ui);align-items:center;gap:5px;padding:5px 8px;display:flex}.stat-delta.up{background:var(--ok-fill);border:1px solid var(--ok-border);color:var(--ok)}.stat-delta.down{background:var(--bad-fill);border:1px solid var(--bad-border);color:var(--bad)}.stat-value{font:500 36px/1 var(--display);letter-spacing:.01em;margin-bottom:8px}.stat-card.emphasis .stat-value{color:var(--accent)}.stat-card-body{margin-bottom:8px}.stat-label{font:500 12px/1 var(--ui);margin-bottom:6px}.stat-note{font:400 11px/1.4 var(--ui);color:var(--text-4)}.stat-card.emphasis .stat-note{color:var(--text-3)}@media (width<=900px),(pointer:coarse){.answer-row{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:6px;padding-top:10px}.stat-card{align-items:flex-start;gap:7px;padding:7px 8px;display:flex}.stat-card-top{flex-direction:column;flex:none;align-items:center;gap:4px;min-height:0;margin-bottom:0}.stat-card-icon{border-radius:5px;width:18px;height:18px}.stat-card-icon svg{width:11px;height:11px}.stat-delta{gap:3px;padding:2px 5px;font-size:9px}.stat-card-main{flex:1;min-width:0}.stat-value{margin-bottom:3px;font-size:18px}.stat-card-body{margin-bottom:3px}.stat-label{margin-bottom:2px;font-size:10px}.stat-note{font-size:9px;line-height:1.3}.chord-chip{background:0 0;border:none;border-radius:0;padding:0;font-size:12px}.chord-chips{gap:3px 7px}}@media (width<=620px){.answer-row{grid-template-columns:1fr 1fr}.answer-row>.stat-card:last-child:nth-child(odd){grid-column:1/-1}}.chord-chips{flex-wrap:wrap;gap:6px;display:flex}.chord-chip{background:var(--panel-2);border:1px solid var(--border-strong);font:700 15px/1 var(--ui);border-radius:8px;padding:6px 9px}.metronome-panel.is-collapsed{padding-top:10px;padding-bottom:10px}.metronome-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;display:flex}.metronome-row{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.metronome-volume{flex:0 0 190px}.metronome-note{font:400 11px/1.5 var(--ui);color:var(--text-4);margin:0}.beat-dots{align-items:center;gap:6px;display:flex}.beat-dot{border-radius:var(--radius-pill);background:var(--panel-2);border:1px solid var(--border-strong);width:30px;height:30px;color:var(--text-4);font:600 12px/1 var(--ui);justify-content:center;align-items:center;display:flex}.beat-dot.downbeat{border-color:var(--bar);color:var(--text-2)}.beat-dot.active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.analysis-switch{background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-pill);flex-wrap:wrap;gap:8px;width:max-content;max-width:100%;padding:6px;display:flex}.analysis-tab{border-radius:var(--radius-pill);color:var(--text-3);font:400 13px/1 var(--ui);background:0 0;border:1px solid #0000;align-items:center;gap:9px;padding:10px 18px;display:flex}.analysis-tab:hover:not(.active){color:var(--text)}.analysis-tab.active{background:var(--accent-fill);border-color:var(--accent-border);color:var(--accent);font-weight:600}.analysis-tab-icon{color:var(--text-4);align-items:center;display:flex}.analysis-tab.active .analysis-tab-icon{color:var(--accent)}.view-switch-hint{font:400 11px/1.4 var(--ui);color:var(--text-3);max-width:30ch}.graph-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);flex-direction:column;display:flex;overflow:hidden}.graph-card-header{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:14px;padding:14px 18px;display:flex}.graph-card-label{font:500 11px/1 var(--ui);letter-spacing:.16em;color:var(--text-4)}.graph-legend{font:400 11px/1 var(--ui);color:var(--text-3);align-items:center;gap:16px;margin-left:auto;display:flex}.legend-item{align-items:center;gap:7px;display:flex}.legend-swatch{border-radius:2px;width:16px;height:3px;display:block}.legend-swatch.song{background:var(--text-2)}.legend-swatch.you{background:var(--accent)}.legend-swatch.match{background:var(--ok)}.graph-window{border-left:1px solid var(--border);align-items:center;gap:6px;padding-left:16px;display:flex}.pitch-visualizer,.chord-visualizer{height:var(--graph-h,400px);background:var(--bg-deep);flex:none;overflow:hidden}.chord-visualizer.is-strip{height:var(--chord-h,112px)}@media (width<=900px),(pointer:coarse){.chord-visualizer:not(.is-strip){height:min(var(--graph-h,400px), 140px)}.graph-card-header{gap:8px;padding:8px 10px}.graph-card .graph-legend{gap:8px}.graph-card .view-switch-hint{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.graph-card .segmented{gap:3px;padding:3px}.graph-card .tab-button{padding:6px 10px;font-size:11px}}.chord-visualizer canvas{touch-action:pan-y}.pitch-visualizer canvas,.chord-visualizer canvas{cursor:pointer;width:100%;height:100%;display:block}.panel-resizer{cursor:ns-resize;background:var(--panel);border-top:1px solid var(--border-mute);touch-action:none;flex:none;justify-content:center;align-items:center;height:12px;display:flex}.panel-resizer:hover .panel-resizer-grip,.panel-resizer:focus-visible .panel-resizer-grip{background:var(--accent)}.panel-resizer:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.panel-resizer-grip{border-radius:var(--radius-pill);background:var(--bar);width:46px;height:3px}.minimap-strip{border-top:1px solid var(--border);background:var(--panel-2)}.minimap-strip-header{font:500 10px/1 var(--ui);letter-spacing:.16em;color:var(--text-4);justify-content:space-between;align-items:center;gap:12px;padding:9px 18px 0;display:flex}.minimap-hint{font:400 10px/1 var(--ui);letter-spacing:0;color:var(--text-4)}.track-minimap{flex:none;padding:9px 18px 12px;overflow:hidden}.track-minimap canvas{cursor:zoom-in;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:8px;width:100%;height:56px;display:block}.transport-dock{bottom:0;left:var(--sidebar-w);z-index:20;padding:16px var(--gutter);background:var(--bg);border-top:1px solid var(--border);grid-template-columns:1fr 372px;gap:16px;display:grid;position:fixed;right:0}.transport-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);flex-direction:column;gap:16px;padding:16px 18px;display:flex;position:relative}.dock-collapse{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--panel-2);width:50px;height:24px;color:var(--text-3);justify-content:center;align-items:center;display:flex;position:absolute;top:-13px;left:50%;transform:translate(-50%)}.dock-collapse:hover{border-color:var(--accent);color:var(--accent)}.transport-dock.collapsed{grid-template-columns:1fr}.transport-dock.collapsed .transport-extra,.transport-dock.collapsed .mic-panel{display:none}.audio-player{align-items:center;gap:14px;display:flex}.audio-player.disabled{opacity:.5}.play-button{border-radius:var(--radius-pill);background:var(--accent);width:44px;height:44px;color:var(--on-accent);border:none;flex:none;justify-content:center;align-items:center;display:flex}.play-button:hover:not(:disabled){background:var(--accent-hover)}.time-display{min-width:40px;font:600 12px/1 var(--ui);flex:none}.time-display.total{color:var(--text-4)}.seek-bar{flex:1;min-width:0;height:6px}.transport-extra{border-top:1px solid var(--border-mute);flex-wrap:wrap;align-items:center;gap:18px;padding-top:14px;display:flex}.loop-button{border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--panel-2);color:var(--text-3);font:600 11px/1 var(--ui);align-items:center;gap:7px;padding:9px 14px;display:flex}.loop-button.active{border-color:var(--accent-border);color:var(--accent)}.transport-spacer{margin-left:auto}.audio-mixer{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.audio-mixer.disabled{opacity:.5}.mixer-control{font:400 11px/1 var(--ui);color:var(--text-3);align-items:center;gap:10px;display:flex}.mixer-control label{align-items:center;gap:7px;display:flex}.mixer-control input[type=range]{width:110px}.volume-value{text-align:right;min-width:26px;font:600 11px/1 var(--ui);color:var(--text)}.volume-control{font:400 11px/1 var(--ui);color:var(--text-3);flex:0 190px;align-items:center;gap:8px;display:flex}.volume-control label{text-transform:capitalize;min-width:62px}.stem-mute{border:1px solid var(--border);width:18px;height:18px;color:var(--text-4);font:600 9px/1 var(--ui);cursor:pointer;background:0 0;border-radius:5px;flex:none;padding:0}.stem-mute:hover:not(:disabled){border-color:var(--bar);color:var(--text-2)}.stem-mute.muted{border-color:var(--accent-border);background:var(--accent-fill);color:var(--accent)}.stem-mute:disabled{opacity:.4;cursor:not-allowed}.mixer-mode{border-right:1px solid var(--border);gap:4px;margin-right:6px;padding-right:6px;display:flex}.mixer-mode-btn{border:1px solid var(--border);border-radius:var(--radius-nav);color:var(--text-3);font:500 10px/1 var(--ui);cursor:pointer;white-space:nowrap;background:0 0;padding:5px 9px}.mixer-mode-btn:hover{color:var(--text-2);border-color:var(--bar)}.mixer-mode-btn.active{border-color:var(--accent-border);background:var(--accent-fill);color:var(--accent)}.mic-panel{background:var(--panel-accent);border:1px solid var(--accent);border-radius:var(--radius-panel);flex-direction:column;gap:14px;padding:16px 18px;display:flex}.mic-panel.idle{background:var(--panel);border-color:var(--border)}.mic-panel-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.mic-panel-title{font:500 18px/1 var(--display);letter-spacing:.08em;text-transform:uppercase}.mic-status{font:600 10px/1 var(--ui);letter-spacing:.1em;color:var(--accent);align-items:center;gap:6px;display:flex}.mic-status.off{color:var(--text-4)}.mic-status-dot{border-radius:var(--radius-pill);background:currentColor;width:7px;height:7px;display:block}.mic-meter-row{align-items:flex-end;gap:10px;height:38px;display:flex}.mic-meter{flex:1;align-items:flex-end;gap:3px;height:100%;display:flex}.mic-meter-bar{background:var(--border);border-radius:2px;flex:1;max-width:8px;transition:background 80ms linear}.mic-meter-bar.lit{background:var(--bar)}.mic-meter-bar.peak{background:var(--accent)}.mic-note{text-align:right;min-width:58px;font:500 26px/1 var(--display);letter-spacing:.02em;flex:none}.mic-note.empty{color:var(--text-4)}.microphone-controls{flex-direction:column;gap:9px;display:flex}.microphone-controls.disabled{opacity:.5}.mic-control{font:400 11px/1 var(--ui);color:var(--text-3);align-items:center;gap:10px;display:flex}.mic-control select,.mic-control input[type=range]{background:var(--bg);flex:1;min-width:0}.mic-enable-button{border:1px solid var(--accent-border);border-radius:var(--radius-control);background:var(--accent-fill);color:var(--accent);font:600 12px/1 var(--ui);align-items:center;gap:8px;padding:11px 16px;display:flex}.mic-enable-button:hover:not(:disabled){border-color:var(--accent)}.mic-unavailable,.mic-denied{font:400 11px/1.4 var(--ui);color:var(--text-4);align-items:center;gap:8px;display:flex}.mic-denied{color:var(--bad)}.chord-fix{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);padding:14px 18px}.chord-fix-header{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.chord-fix-label{font:500 11px/1 var(--ui);letter-spacing:.08em;color:var(--text-4)}.chord-fix-shape{flex-wrap:wrap;align-items:flex-end;gap:18px;margin-bottom:14px;display:flex}.chord-shape-name{font:400 12px/1.4 var(--ui);color:var(--text-3);margin-bottom:6px}.chord-shape-name strong{color:var(--text);font-size:14px;font-weight:600}.chord-shape-capo-note{color:var(--text-4)}.chord-shape-svg{display:block}.chord-shape-empty{max-width:46ch;font:400 11px/1.6 var(--ui);color:var(--text-4);margin:0}.chord-shape-nut{stroke:var(--text-2);stroke-width:3px}.chord-shape-fret{stroke:var(--bar);stroke-width:1px}.chord-shape-string{stroke:var(--border-strong);stroke-width:1px}.chord-shape-position{fill:var(--text-4);font:500 10px/1 var(--ui)}.chord-shape-mute{fill:var(--text-4);font:400 11px/1 var(--ui)}.chord-shape-open{fill:none;stroke:var(--text-3);stroke-width:1.4px}.chord-shape-dot{fill:var(--text-2)}.chord-shape-dot.is-root{fill:var(--accent)}.chord-fix-row{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.chord-fix-at{font:400 12px/1.4 var(--ui);color:var(--text-3)}.chord-fix-at strong{color:var(--text);font-weight:600}.chord-fix-yours{color:var(--accent-text)}.chord-fix-function{color:var(--text-4)}.chord-fix-field{flex-direction:column;gap:5px;display:flex}.chord-fix-field>span{font:500 10px/1 var(--ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-4)}.chord-fix-undo,.chord-fix-reset{background:var(--panel-2);border:1px solid var(--border-strong);border-radius:var(--radius-step);color:var(--text-2);font:500 11px/1 var(--ui);cursor:pointer;padding:7px 12px}.chord-fix-undo:hover,.chord-fix-reset:hover{border-color:var(--accent-border);color:var(--accent-text)}.chord-fix-reset{margin-top:12px}.chord-fix-empty{font:400 11px/1.6 var(--ui);color:var(--text-4);margin:0}.error-message{background:var(--bad-fill);border:1px solid var(--error);border-radius:var(--radius-panel);align-items:center;gap:14px;margin-top:20px;padding:15px 18px;display:flex}.error-message p{font:400 12px/1.5 var(--ui);color:var(--bad);flex:1;margin:0}.spinner,.spinner-small{border-radius:var(--radius-pill);border:2px solid var(--ring-muted);border-top-color:var(--bg-deep);animation:.7s linear infinite spin;display:inline-block}.spinner{border-top-color:var(--accent);width:24px;height:24px}.spinner-small{width:14px;height:14px}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.sidebar{transition:none}.landing-wall-row{animation:none!important}.landing-scrim,.landing-dialog{animation:none}.spinner,.spinner-small{animation-duration:2s}.progress-fill,.switch-track,.switch-knob,.mic-meter-bar{transition:none}}.nav-item-short{display:none}@media (width<=1100px){:root{--sidebar-w:64px}.brand-name,.sidebar-group-label,.nav-counter,.user-meta,.sidebar-legal{display:none}.nav-item-text{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sidebar-signout{justify-content:center}.sidebar-signout span,.sidebar-signout{font-size:0}.sidebar-signout svg{font-size:initial}.sidebar-brand,.nav-item,.user-card{justify-content:center}.sidebar-group{padding:10px 8px 0}.hero h1{font-size:46px}}.landing{background:var(--bg-deep);min-height:100vh;color:var(--text);position:relative;overflow:hidden}.landing-wall.is-still .landing-wall-row{animation-play-state:paused}.landing-wall{background:var(--wall-plate);position:fixed;inset:0;overflow:hidden}.landing-wall-rows{flex-direction:column;justify-content:center;gap:26px;width:min(70.7214vw + 70.7214vh,3560px);height:min(70.7214vw + 70.7214vh,3560px);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-45deg)}.landing-wall-row{will-change:transform;gap:26px;width:max-content;padding-right:26px;display:flex}@keyframes op-drift-a{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes op-drift-b{0%{transform:translate(-50%)}to{transform:translate(0)}}.landing-tab{border:1px solid var(--wall-card-border);border-radius:var(--radius-control);background:var(--wall-card);flex:none;width:300px;padding:16px 18px}.landing-tab-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.landing-tab-title{font:500 15px/1 var(--display);letter-spacing:.06em;color:var(--wall-title)}.landing-tab-meta{font:400 9px/1 var(--ui);letter-spacing:.16em;color:var(--wall-meta)}.landing-tab-lines{flex-direction:column;gap:5px;display:flex}.landing-tab-lines span{font:400 11px/1 var(--ui);letter-spacing:.06em;color:var(--wall-line);white-space:pre}.landing-scrim-fade,.landing-scrim-glow,.landing-scrim-vignette{position:absolute;inset:0}.landing-scrim-fade{background:var(--scrim-fade)}.landing-scrim-glow{background:var(--scrim-glow)}.landing-scrim-vignette{box-shadow:var(--scrim-vignette)}.landing-content{flex-direction:column;min-height:100vh;display:flex;position:relative}.landing-header{flex:none;justify-content:space-between;align-items:center;gap:20px;padding:20px 34px;display:flex}.landing-brand{color:inherit;align-items:center;gap:11px;text-decoration:none;display:flex}.landing-brand-mark{border-radius:var(--radius-nav);background:var(--accent);width:30px;height:30px;color:var(--on-accent);justify-content:center;align-items:center;display:flex}.landing-brand-name{font:600 20px/1 var(--display);letter-spacing:.02em}.landing-signin-link{color:var(--text-2);font:500 11px/1 var(--ui);letter-spacing:.16em;background:0 0;border:none;padding:11px 4px}.landing-signin-link:hover{color:var(--text)}.landing-pricing-link{margin-right:10px;text-decoration:none}.landing-pricing-link.is-on{color:var(--accent)}.pricing{flex-direction:column;align-items:center;gap:54px;width:100%;max-width:1040px;padding-top:26px;display:flex}.pricing-hero{text-align:center;flex-direction:column;align-items:center;display:flex}.pricing-title{font:300 clamp(34px, 5vw, 60px) / 1.02 var(--display);letter-spacing:.005em;text-transform:uppercase;text-wrap:balance;margin:14px 0 0}.pricing-billing{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--panel-glass);gap:4px;margin-top:28px;padding:4px;display:inline-flex}.pricing-billing-option{border-radius:var(--radius-pill);font:600 12px/1 var(--ui);color:var(--text-3);background:0 0;border:none;align-items:center;gap:8px;padding:10px 18px;display:inline-flex}.pricing-billing-option.on{background:var(--text);color:var(--bg-deep)}.pricing-save{border-radius:var(--radius-pill);background:var(--ok-fill);font:600 9.5px/1 var(--ui);letter-spacing:.06em;color:var(--ok);padding:4px 7px}.pricing-plans{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:16px;width:100%;display:grid}.pricing-plan{text-align:left;background:var(--panel-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);flex-direction:column;padding:28px 24px 24px;display:flex;position:relative}.pricing-plan.is-highlight{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), var(--shadow-panel);translate:0 -8px}.pricing-badge{border-radius:var(--radius-pill);background:var(--accent);font:700 10px/1 var(--ui);letter-spacing:.14em;color:var(--on-accent);padding:6px 10px;position:absolute;top:-11px;left:24px}.pricing-plan-name{font:500 24px/1.1 var(--display);letter-spacing:.02em;text-transform:uppercase;color:var(--text);margin:0}.pricing-plan-pitch{min-height:3.2em;font:400 12.5px/1.6 var(--ui);color:var(--text-3);margin:8px 0 0}.pricing-price{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:18px 0 0;display:flex}.pricing-figure{font:600 44px/1 var(--display);color:var(--text)}.pricing-per{font:400 12px/1.3 var(--ui);color:var(--text-3)}.pricing-price-note{min-height:1.5em;font:400 11px/1.5 var(--ui);color:var(--text-4);margin:8px 0 0}.pricing-cta{border-radius:var(--radius-control);background:var(--accent);font:700 13px/1 var(--ui);color:var(--on-accent);border:none;justify-content:center;align-items:center;margin-top:20px;padding:14px 18px;display:flex}.pricing-cta:hover{background:var(--accent-hover)}.pricing-cta.is-soon{background:var(--panel-2);border:1px dashed var(--border-strong);color:var(--text-3)}.pricing-limits{border-top:1px solid var(--border-mute);font:400 12.5px/1.4 var(--ui);color:var(--text-2);flex-direction:column;gap:10px;margin:22px 0 0;padding:18px 0 0;list-style:none;display:flex}.pricing-limits strong{color:var(--text);font-weight:700}.pricing-every{font:500 11px/1.4 var(--ui);color:var(--ok);margin:12px 0 0}.pricing-block{flex-direction:column;align-items:center;width:100%;max-width:940px;display:flex}.pricing-block-title{font:300 clamp(24px, 3vw, 32px) / 1.1 var(--display);text-transform:uppercase;color:var(--text);margin:0 0 22px}.pricing-features{text-align:left;background:var(--panel-glass);border:1px solid var(--border-mute);border-radius:var(--radius-panel);grid-template-columns:repeat(2,1fr);gap:12px 28px;width:100%;margin:0;padding:24px 28px;list-style:none;display:grid}.pricing-features li{font:400 12.5px/1.5 var(--ui);color:var(--text-2);align-items:flex-start;gap:10px;display:flex}.pricing-tick{background:var(--ok-fill);width:20px;height:20px;color:var(--ok);border-radius:50%;flex:none;place-items:center;margin-top:-1px;display:grid}.pricing-table{text-align:left;background:var(--panel-glass);border:1px solid var(--border-mute);border-radius:var(--radius-panel);width:100%;overflow:hidden}.pricing-row{border-bottom:1px solid var(--border-mute);grid-template-columns:1.6fr repeat(3,1fr);display:grid}.pricing-row:last-child{border-bottom:none}.pricing-row>span{font:400 12.5px/1.4 var(--ui);color:var(--text-2);padding:14px 18px}.pricing-row>span:not(:first-child){text-align:center;color:var(--text);font-weight:600}.pricing-row>.is-highlight{background:var(--accent-fill)}.pricing-row-head>span{font:600 11px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3)}.pricing-faq{text-align:left;flex-direction:column;gap:8px;width:100%;display:flex}.pricing-question{background:var(--panel-glass);border:1px solid var(--border-mute);border-radius:var(--radius-control);padding:0 20px}.pricing-question summary{font:500 13px/1.4 var(--ui);color:var(--text);cursor:pointer;padding:16px 0}.pricing-question p{font:400 12.5px/1.7 var(--ui);color:var(--text-3);margin:0 0 16px}.pricing-start{flex-direction:column;align-items:center;gap:4px;padding-bottom:20px;display:flex}.pricing-start p{font:300 clamp(22px, 2.6vw, 30px) / 1.1 var(--display);text-transform:uppercase;margin:0}.pricing-start .pricing-cta{min-width:240px}@media (width<=860px){.pricing-plans{grid-template-columns:1fr;max-width:440px}.pricing-plan.is-highlight{translate:none}.pricing-features{grid-template-columns:1fr;padding:20px}.pricing-row{grid-template-columns:1.3fr repeat(3,1fr)}.pricing-row>span{padding:12px 8px;font-size:11px}.pricing-row-head>span{letter-spacing:.06em;font-size:9.5px}.landing-pricing-link{margin-right:2px}}.landing-main{flex-direction:column;flex:1;align-items:center;padding:26px 24px 70px;display:flex}.landing-offer{border:1px solid var(--accent-border);border-radius:var(--radius-pill);background:var(--accent-fill);font:600 11px/1 var(--ui);letter-spacing:.16em;color:var(--accent-text-hover);align-items:center;gap:9px;padding:7px 14px 7px 9px;display:flex}.landing-offer-tick{border-radius:var(--radius-pill);background:var(--accent);width:18px;height:18px;color:var(--on-accent);justify-content:center;align-items:center;display:flex}.landing-headline{text-align:center;max-width:24ch;font:300 clamp(40px, 6vw, 72px) / .98 var(--display);letter-spacing:.005em;text-transform:uppercase;text-wrap:balance;margin:22px 0 14px}.landing-headline strong{font-weight:600}.landing-lede{text-align:center;max-width:58ch;font:400 13px/1.8 var(--ui);color:var(--text-2);text-wrap:pretty;margin:0 0 34px}.landing-card{background:var(--panel-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:var(--radius-panel);width:100%;max-width:660px;box-shadow:var(--shadow-panel);padding:26px}.landing-card-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.landing-card-label{font:500 11px/1 var(--ui);letter-spacing:.2em;color:var(--accent)}.landing-card-credits{white-space:nowrap;font:400 11px/1 var(--ui);color:var(--text-4);flex:none}.landing-upload-title{font:500 clamp(20px, 2.4vw, 26px) / 1.1 var(--display);letter-spacing:.02em;text-align:left;text-transform:uppercase;color:var(--text);margin:0}.landing-upload{border:1px solid var(--border-mute);border-radius:var(--radius-panel);background:var(--bg-deep);overflow:hidden}.landing-mock-graph.landing-upload-graph{--graph-h:170px}.landing-card.landing-upload-card{max-width:940px}.landing-upload-cta{border-radius:var(--radius-control);background:var(--accent);width:100%;color:var(--on-accent);font:700 14px/1 var(--ui);border:none;margin-top:16px;padding:15px 22px}.landing-upload-cta:hover{background:var(--accent-hover)}.landing-card-note,.landing-field-note,.landing-terms{font:400 11px/1.7 var(--ui);color:var(--text-4);text-wrap:pretty;margin:16px 0 0}.landing-divider{align-items:center;gap:14px;width:100%;max-width:660px;padding:34px 0 26px;display:flex}.landing-divider.small{padding:18px 0}.landing-divider>span:first-child,.landing-divider>span:last-child{background:var(--border);flex:1;height:1px}.landing-divider.small>span:first-child,.landing-divider.small>span:last-child{background:var(--border-mute)}.landing-divider-label{font:400 10px/1 var(--ui);letter-spacing:.2em;color:var(--text-4)}.landing-signin{background:var(--panel-2-glass);scroll-margin-top:24px}.landing-scrim{z-index:45;background:var(--dialog-scrim);-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);appearance:none;cursor:pointer;border:none;padding:0;animation:.16s dialog-scrim-in;position:fixed;inset:0}.landing-dialog{z-index:46;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--panel-glass-solid);width:calc(100% - 32px);max-width:480px;max-height:88vh;box-shadow:var(--shadow-panel);padding:26px;animation:.18s dialog-in;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.landing-dialog:focus{outline:none}.landing-dialog .landing-signin-title{margin-right:40px}.landing-dialog-close{border-radius:var(--radius-pill);width:32px;height:32px;color:var(--text-4);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:18px;right:18px}.landing-dialog-close:hover{background:var(--border-mute);color:var(--text)}@keyframes dialog-scrim-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,-46%)}}.landing-signin-title{font:300 30px/1.05 var(--display);letter-spacing:.005em;text-transform:uppercase;margin:0 0 6px}.landing-signin-sub{font:400 12px/1.7 var(--ui);color:var(--text-3);margin:0 0 22px}.landing-field-label{font:500 11px/1 var(--ui);letter-spacing:.16em;color:var(--text-4);margin-bottom:9px;display:block}.landing-field{flex-wrap:wrap;gap:10px;display:flex}.landing-signin-form{flex-direction:column;gap:14px;display:flex}.landing-field-error{color:var(--bad);font-size:12px}.landing-inline-link{font:inherit;color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.landing-inline-link:hover{color:var(--text)}.landing-social:disabled{opacity:.45;cursor:not-allowed}.sidebar-legal{font:400 10px/1.5 var(--ui);color:var(--text-4);margin:10px 0 0;padding-left:8px}.sidebar-legal a{color:var(--text-4);text-decoration:none}.sidebar-legal a:hover{color:var(--text-2);text-decoration:underline}.youtube-rights{max-width:520px;font:400 12px/1.6 var(--ui);color:var(--text-3);text-align:left;cursor:pointer;align-items:flex-start;gap:10px;margin:14px auto 0;display:flex}.youtube-rights input{accent-color:var(--accent);cursor:pointer;flex:none;margin-top:2px}.youtube-rights a{color:var(--accent);text-underline-offset:2px}.auth-confirm{max-width:480px;margin:48px auto;padding:0 16px}.auth-confirm-action{margin-top:18px;text-decoration:none;display:inline-block}.doc-shell{background:var(--bg-deep);min-height:100vh;color:var(--text-2)}.doc-topbar{border-bottom:1px solid var(--border-mute);justify-content:space-between;align-items:center;gap:16px;max-width:820px;margin:0 auto;padding:22px 24px;display:flex}.doc-home{font:500 13px/1 var(--ui);letter-spacing:.04em;color:var(--text-3);text-decoration:none}.doc-home:hover{color:var(--text)}.doc-nav{gap:18px;display:flex}.doc-nav a{font:500 11px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--text-4);text-decoration:none}.doc-nav a:hover,.doc-nav a[aria-current=page]{color:var(--accent)}.doc-body{max-width:680px;font:400 15px/1.75 var(--ui);text-wrap:pretty;margin:0 auto;padding:8px 24px 96px}.doc-body h1{font:300 34px/1.15 var(--display);letter-spacing:-.01em;color:var(--text);margin:36px 0 8px}.doc-body h2{border-top:1px solid var(--border-mute);font:500 21px/1.25 var(--display);color:var(--text);margin:44px 0 10px;padding-top:20px}.doc-body h3{font:600 13px/1.3 var(--ui);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin:28px 0 6px}.doc-body p{margin:0 0 14px}.doc-body strong{color:var(--text);font-weight:600}.doc-body ul{margin:0 0 16px;padding-left:22px}.doc-body li{margin-bottom:7px}.doc-body a{color:var(--accent);text-underline-offset:2px}.doc-body code{border:1px solid var(--border-mute);background:var(--panel-2);font:400 13px/1 var(--ui);color:var(--text-2);border-radius:4px;padding:1px 5px}.doc-body blockquote{border-left:2px solid var(--accent-border);background:var(--panel-2);margin:0 0 18px;padding:14px 18px}.doc-body blockquote p{margin:0 0 2px}.doc-body hr{border:0;border-top:1px solid var(--border-mute);margin:32px 0}.doc-table-wrap{border:1px solid var(--border-mute);border-radius:8px;margin:0 0 20px;overflow-x:auto}.doc-body table{border-collapse:collapse;width:100%;font-size:14px}.doc-body th,.doc-body td{border-bottom:1px solid var(--border-mute);text-align:left;vertical-align:top;padding:11px 14px}.doc-body th{font:600 11px/1.3 var(--ui);letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);background:var(--panel-2)}.doc-body tr:last-child td{border-bottom:0}.doc-contents{background:var(--panel);border:1px solid var(--border-mute);border-radius:var(--radius-control);margin:28px 0 44px;padding:20px 22px}.doc-contents-label{font:500 10px/1 var(--ui);letter-spacing:.22em;text-transform:uppercase;color:var(--text-4);margin:0 0 12px}.doc-contents-list{columns:2;font:400 13px/1.9 var(--ui);column-gap:28px;margin:0;padding:0;list-style:none}.doc-contents-list li{break-inside:avoid}.doc-contents-list a{color:var(--text-2);text-decoration:none}.doc-contents-list a:hover{color:var(--accent-text-hover);text-decoration:underline}@media (width<=560px){.doc-contents-list{columns:1}}.doc-placeholder{border:1px dashed var(--bad-border);background:var(--bad-fill);color:var(--bad);border-radius:4px;padding:1px 6px;font-size:.9em}.doc-warning{border:1px solid var(--bad-border);background:var(--bad-fill);max-width:820px;color:var(--bad);font:400 13px/1.5 var(--ui);border-radius:8px;margin:18px auto 0;padding:12px 16px}.app-booting{background:var(--bg-deep);min-height:100vh}.landing-field input{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--bg-deep);min-width:220px;color:var(--text);font:400 13px/1 var(--ui);flex:1;padding:15px 16px}.landing-field input:focus{border-color:var(--accent)}.landing-continue{border-radius:var(--radius-control);background:var(--accent);color:var(--on-accent);font:700 13px/1 var(--ui);border:none;padding:15px 22px}.landing-continue:hover{background:var(--accent-hover)}.landing-socials{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.landing-social{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--panel);min-height:48px;color:var(--text-2);font:600 12px/1 var(--ui);align-items:center;gap:10px;padding:12px 14px;display:flex}.landing-social:hover{border-color:var(--accent);color:var(--text)}.landing-social-mark{border-radius:var(--radius-step);background:var(--border-mute);width:22px;height:22px;color:var(--text-4);font:700 11px/1 var(--ui);flex:none;justify-content:center;align-items:center;display:flex}.landing-footer{border-top:1px solid var(--border-mute);font:400 11px/1.6 var(--ui);color:var(--text-4);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:20px 34px;display:flex}.landing-footer-links{gap:20px;display:flex}.landing-footer a,.landing-terms a{color:var(--accent);text-decoration:none}.landing-footer a:hover,.landing-terms a:hover{color:var(--accent-text-hover)}.landing-section{text-align:center;width:100%;max-width:940px;padding:46px 0 0}.landing-section-label{font:500 11px/1 var(--ui);letter-spacing:.2em;color:var(--accent)}.landing-section-title{font:300 clamp(26px, 3.4vw, 38px) / 1.08 var(--display);letter-spacing:.005em;text-transform:uppercase;text-wrap:balance;margin:14px 0 0}.landing-section-lede,.landing-section-foot{max-width:62ch;font:400 13px/1.8 var(--ui);color:var(--text-2);text-wrap:pretty;margin:14px auto 0}.landing-section-foot{color:var(--text-3);font-size:12px}.landing-grid{text-align:left;gap:14px;margin-top:24px;display:grid}.landing-grid.three{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.landing-grid.two{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.landing-feature,.landing-control{background:var(--panel-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:var(--radius-panel);padding:20px}.landing-feature h3,.landing-control h3{font:500 18px/1.2 var(--display);letter-spacing:.01em;margin:0 0 8px}.landing-feature p,.landing-control p{font:400 12px/1.75 var(--ui);color:var(--text-3);text-wrap:pretty;margin:0}.landing-facts{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;width:100%;max-width:940px;margin-top:40px;display:grid}.landing-facts p{border-left:2px solid var(--border-strong);font:400 12px/1.75 var(--ui);color:var(--text-3);text-wrap:pretty;margin:0;padding:16px 18px}.landing-facts strong{color:var(--text-2);font-weight:500;display:block}.landing-mock{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-control);margin-top:24px;padding:16px}.landing-mock-svg{width:100%;display:block}.landing-mock-graph{--graph-h:clamp(220px, 26vw, 280px);border-radius:var(--radius-control);pointer-events:none;overflow:hidden}.landing-mock-graph .pitch-visualizer,.landing-mock-graph .chord-visualizer{min-width:0;min-height:0}.landing-mock-card{margin:0 0 16px;padding:10px}.landing-mock-graph-small{--graph-h:200px}.landing-mock-score{border-top:1px solid var(--border-mute);flex-wrap:wrap;align-items:baseline;gap:10px 14px;margin-top:12px;padding-top:14px;display:flex}.landing-mock-score-label{font:400 11px/1 var(--ui);letter-spacing:.12em;text-transform:uppercase;color:var(--text-4)}.landing-mock-score-value{font:600 26px/1 var(--display);color:var(--accent)}.landing-mock-score-delta{border:1px solid var(--ok-border);border-radius:var(--radius-pill);background:var(--ok-fill);font:500 11px/1 var(--ui);color:var(--ok);padding:4px 9px}.landing-mock-tuner .tuner-readout{background:var(--bg-deep);padding:14px 10px 12px}.landing-mock-tuner .tuner-note-name{font-size:40px}.landing-mock-tuner .tuner-note-octave{font-size:14px}.landing-mock-tuner .tuner-cents{font-size:13px}.landing-mock-tuner .tuner-strings{flex-wrap:nowrap;gap:5px;margin-top:10px}.landing-mock-tuner .tuner-string{flex:1;min-width:0;padding:7px 2px}.landing-mock-caption{font:500 11px/1.3 var(--ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin:0 0 8px}.landing-mock-songs{min-height:252px}.landing-mock-songs .topbar-search{max-width:none}.landing-mock-query{font:400 12px/1 var(--ui);color:var(--text)}.landing-mock-query.is-empty{color:var(--text-4)}.landing-mock-caret{vertical-align:-2px;background:var(--accent);width:1px;height:13px;margin-left:1px;display:inline-block}.landing-mock-results{box-shadow:none;margin-top:8px;position:static}.landing-mock-library{margin-top:8px}.landing-mock-song{border-bottom:1px solid var(--border-mute);flex-direction:column;gap:6px;padding:9px 4px;display:flex}.landing-mock-song:last-child{border-bottom:none}.landing-mock-song-name{font:500 12px/1.3 var(--ui);color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.landing-mock-song .project-mode-badge{padding:4px 8px;font-size:9px}.landing-tabwin{text-align:left;padding:0;overflow:hidden}.landing-tabwin-modes{border-bottom:1px solid var(--border-mute);display:flex}.landing-tabwin-mode{font:500 12px/1 var(--ui);letter-spacing:.06em;text-align:center;color:var(--text-4);flex:1;padding:13px 8px;position:relative}.landing-tabwin-mode.on{color:var(--accent)}.landing-tabwin-mode-bar{background:var(--accent);transform-origin:0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.landing-tabwin-stage{height:400px;padding:18px;overflow:hidden}.landing-tabwin-head,.landing-tabwin-library-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 14px;margin-bottom:12px;display:flex}.landing-tabwin-title{font:500 20px/1.1 var(--display);text-transform:uppercase;color:var(--text)}.landing-tabwin-facts{font:400 11px/1.5 var(--ui);color:var(--text-4)}.landing-tabwin-grid{--tab-cell:25px;overflow:hidden}.landing-tabwin-chord{font:500 11px/1 var(--ui);color:var(--text-2)}.landing-tabwin-keypad{margin-top:12px}.landing-tabwin-keypad .tab-key{place-items:center;display:inline-grid}.landing-tabwin-keypad .tab-key.is-pressed{border-color:var(--accent);background:var(--accent-fill);color:var(--accent)}.landing-tabwin-photo{justify-content:center;align-items:center;gap:40px;height:100%;display:flex}.landing-tabwin-phone{background:var(--bg-deep);border:2px solid var(--border-strong);border-radius:26px;flex:0 0 230px;height:100%;padding:10px}.landing-tabwin-phone-screen{background:var(--panel-2);border-radius:18px;height:100%;position:relative;overflow:hidden}.landing-tabwin-paper{height:100%;padding:18px 14px;position:relative;rotate:-2deg;scale:1.04}.landing-tabwin-paper-title{font:italic 500 13px/1.2 var(--display);color:var(--text-2);margin-bottom:8px;display:block}.landing-tabwin-hand{font:italic 400 8px/1.45 var(--mono);color:var(--text-3);white-space:pre;margin:0 0 12px}.landing-tabwin-scan{background:var(--accent);height:2px;box-shadow:0 0 12px 4px var(--accent-fill);position:absolute;left:0;right:0}.landing-tabwin-review{flex-direction:column;gap:10px;height:100%;padding:16px 12px;display:flex}.landing-tabwin-review-label,.landing-tabwin-soon{font:500 10px/1 var(--ui);letter-spacing:.14em;color:var(--accent)}.landing-tabwin-review-tab{margin:0;font-size:8px;overflow:hidden}.landing-tabwin-review-actions{gap:6px;margin-top:auto;display:flex}.landing-tabwin-review-actions .pill{padding:8px 10px;font-size:10px}.landing-tabwin-photo-note p{max-width:34ch;font:400 13px/1.6 var(--ui);color:var(--text-2);margin:10px 0 0}.landing-tabwin-play{width:fit-content;max-width:100%;margin:0 auto}.landing-tabwin-transport{align-items:center;gap:14px;margin-bottom:12px;display:flex}.landing-tabwin-count{font:500 12px/1 var(--ui);color:var(--text-4);gap:8px;margin-left:auto;display:flex}.landing-tabwin-count .on{color:var(--accent)}.landing-tabwin-page{height:330px;overflow:hidden}.landing-tabwin-scroll{width:fit-content;font-size:var(--tab-zoom);margin:0 auto}.landing-tabwin-scroll .tab-player-line{height:11.6em;margin:0;overflow:hidden}.landing-tabwin-library .tab-list{margin-bottom:12px}.landing-tabwin-library .tab-list-open{flex-direction:column;gap:3px;display:flex}.landing-tabwin-fresh{border-color:var(--accent)}@media (width<=760px){.landing-tabwin-stage{height:470px;padding:12px}.landing-tabwin-mode{letter-spacing:.02em;padding:12px 4px;font-size:10px}.landing-tabwin-grid{--tab-cell:17px}.landing-tabwin-grid .tab-lane>.tab-bar-group:is(:nth-child(2),:nth-child(3)){display:none}.landing-tabwin-photo{flex-direction:column;align-items:stretch;gap:12px}.landing-tabwin-phone{flex:auto;width:220px;margin:0 auto}.landing-tabwin-photo-note p{display:none}.landing-tabwin-play{--tab-zoom:9px!important}.landing-tabwin-page{height:380px}}.landing-studio{text-align:left;pointer-events:none;padding:16px}.landing-studio-bar{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:14px;display:flex}.landing-studio .studio-timeline{border:1px solid var(--border);border-radius:6px;overflow:hidden}.landing-studio-status{font:500 12px/1 var(--ui);color:var(--text-2)}.landing-studio-status.is-recording{color:var(--accent)}.landing-studio-facts{font:400 11px/1 var(--ui);color:var(--text-4);margin-left:auto}@media (width<=760px){.landing-studio{padding:10px}.landing-studio-facts,.landing-studio .studio-timeline-controls{display:none}}.landing-course{text-align:left;grid-template-columns:minmax(220px,.8fr) 1.4fr;gap:18px;padding:18px;display:grid}.landing-course-list{flex-direction:column;gap:10px;min-width:0;display:flex}.landing-course-list .lesson-list-open{padding:10px 12px}.landing-course-list .lesson-list-title{font-size:12px}.landing-course-list .lesson-list-open.landing-course-current{border-color:var(--accent);background:var(--accent-fill)}.landing-course-current .lesson-list-mark{color:var(--accent)}.landing-course-lesson{background:var(--bg-deep);border:1px solid var(--border-mute);border-radius:var(--radius-panel);flex-direction:column;gap:14px;min-width:0;height:540px;padding:18px 20px;display:flex;overflow:hidden}.landing-course-lesson .lesson-title{font-size:30px}.landing-course-lesson .lesson-body{font-size:12.5px;line-height:1.65}.landing-course-lesson .fig-chord svg{width:128px}.landing-course-page{flex:1;min-height:0;overflow:hidden}.landing-course-page.has-figure{grid-template-columns:auto 1fr;align-content:start;align-items:start;gap:12px 18px;display:grid}.landing-course-page.has-figure .lesson-step-title{grid-column:1/-1}.landing-course-page.has-figure .fig-chord-row{grid-row:span 3}.landing-course-cheer{flex:none;align-self:flex-start}.landing-course-lesson .lesson-pager{margin-top:auto}.landing-course-lesson .is-pressed{box-shadow:0 0 0 4px var(--accent-fill);translate:0 1px}.landing-course-lesson .is-disabled{opacity:.4}@media (width<=760px){.landing-course{grid-template-columns:1fr;padding:12px}.landing-course-list{display:none}.landing-course-lesson{height:800px;padding:16px}.landing-course-page.has-figure{flex-direction:column;display:flex}.landing-course-lesson .lesson-body{font-size:12px}.landing-course-lesson .fig-chord svg{width:104px}}.landing-reveal{flex-direction:column;align-items:center;width:100%;display:flex}.landing-first-screen .landing-offer{padding:calc(7px * var(--fit,1)) 14px calc(7px * var(--fit,1)) 9px;font-size:max(9px, calc(11px * var(--fit,1)))}.landing-first-screen .landing-headline{margin:calc(22px * var(--fit,1)) 0 calc(14px * var(--fit,1));font-size:calc(clamp(40px, 6vw, 72px) * var(--fit,1))}.landing-first-screen .landing-lede{margin-bottom:calc(34px * var(--fit,1));font-size:max(10.5px, calc(13px * var(--fit,1)));line-height:calc(1.8 - (1 - var(--fit,1)) * .5)}.landing-first-screen .landing-card.landing-upload-card{padding:calc(26px * var(--fit,1))}.landing-first-screen .landing-card-head{margin-bottom:calc(18px * var(--fit,1))}.landing-first-screen .landing-upload-title{font-size:calc(clamp(20px, 2.4vw, 26px) * var(--fit,1))}.landing-first-screen .landing-mock-graph.landing-upload-graph{--graph-h:max(150px, calc(170px * var(--fit,1)))}.landing-first-screen .landing-upload-cta{margin-top:calc(16px * var(--fit,1));padding:calc(15px * var(--fit,1)) 22px}.landing-first-screen .landing-card-note{margin-top:calc(16px * var(--fit,1));font-size:max(9.5px, calc(11px * var(--fit,1)));line-height:1.55}.landing-first-screen .landing-tools{margin-top:calc(22px * var(--fit,1));gap:calc(8px * var(--fit,1))}.landing-first-screen .landing-tools li{padding:calc(6px * var(--fit,1)) 12px;font-size:max(9.5px, calc(11px * var(--fit,1)))}.landing-first-screen .landing-next{margin:calc(26px * var(--fit,1)) 0 calc(8px * var(--fit,1))}@media (height<=740px){.landing-first-screen .landing-card-note,.landing-first-screen .landing-tools{display:none}.landing-main{padding-top:8px}}.landing-first-screen{min-height:calc(100svh - 96px)}.landing-first-body{flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;display:flex}.landing-tools{flex-wrap:wrap;justify-content:center;gap:8px;max-width:660px;margin:22px 0 0;padding:0;list-style:none;display:flex}.landing-tools li{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--panel-2-glass);font:500 11px/1.2 var(--ui);letter-spacing:.06em;color:var(--text-2);padding:6px 12px}.landing-next{font:500 10px/1 var(--ui);letter-spacing:.2em;text-transform:uppercase;color:var(--text-3);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;margin:26px 0 8px;padding:6px 10px;display:inline-flex}.landing-next:hover{color:var(--text)}@media (prefers-reduced-motion:no-preference){.landing-reveal{opacity:0;transition:opacity .7s ease-out,translate .7s cubic-bezier(.2,.7,.2,1);translate:0 28px}.landing-reveal.is-in{opacity:1;translate:none}.landing-next svg{animation:2.2s ease-in-out infinite landing-next-nod}.landing-reveal .landing-feature,.landing-reveal .landing-control{opacity:0;transition:opacity .6s ease-out,translate .6s cubic-bezier(.2,.7,.2,1);translate:0 16px}.landing-reveal.is-in .landing-feature,.landing-reveal.is-in .landing-control{opacity:1;translate:none}.landing-reveal.is-in :is(.landing-feature,.landing-control):nth-child(2){transition-delay:80ms}.landing-reveal.is-in :is(.landing-feature,.landing-control):nth-child(3){transition-delay:.16s}.landing-reveal.is-in :is(.landing-feature,.landing-control):nth-child(4){transition-delay:.24s}.landing-reveal.is-in :is(.landing-feature,.landing-control):nth-child(5){transition-delay:.32s}.landing-mock-score-delta{animation:.5s ease-out mock-score-land;display:inline-block}.landing-studio-rec{animation:1.2s ease-in-out infinite studio-rec-pulse}.landing-tabwin-stage{animation:.4s ease-out course-page-in}.landing-tabwin-scroll{transition:transform .6s ease-in-out}.landing-tabwin-mode-bar{transition:transform .1s linear}.landing-tabwin-fresh{animation:.6s ease-out .3s backwards course-page-in}.landing-course-page,.landing-course-cheer{animation:.45s ease-out course-page-in}.landing-course-page .fig-chord g{transform-box:fill-box;transform-origin:50%;animation:.5s ease-out backwards mock-finger}.landing-course-page .fig-chord g:first-of-type{animation-delay:.6s}.landing-course-page .fig-chord g:nth-of-type(2){animation-delay:1.05s}.landing-course-page .fig-chord g:nth-of-type(3){animation-delay:1.5s}.landing-course-lesson .btn-primary,.landing-course-lesson .btn-secondary{transition:translate .12s ease-out,box-shadow .12s ease-out}}@keyframes mock-finger{0%{opacity:0;scale:.4}10%{opacity:1;scale:1.12}16%,82%{opacity:1;scale:1}92%,to{opacity:0;scale:1}}@keyframes course-page-in{0%{opacity:0;translate:14px}to{opacity:1;translate:0}}@keyframes studio-rec-pulse{0%,to{box-shadow:0 0 0 0 var(--accent-fill)}50%{box-shadow:0 0 0 7px var(--accent-fill)}}@keyframes landing-next-nod{0%,to{translate:0}50%{translate:0 5px}}@keyframes mock-score-land{0%{opacity:0;scale:.9}60%{opacity:1;scale:1.08}to{opacity:1;scale:1}}@media (width<=620px){.landing-header,.landing-footer{padding:18px 20px}.landing-socials{grid-template-columns:1fr}.landing-section{padding-top:34px}.landing-dialog{border-radius:var(--radius-panel) var(--radius-panel) 0 0;width:100%;max-width:none;max-height:none;animation:.18s dialog-sheet-in;inset:24px 0 0;transform:none}.landing-dialog.feedback-dialog{top:auto}@keyframes dialog-sheet-in{0%{transform:translateY(12px)}}}.practice-room,.practice-screen{flex-direction:column;gap:20px;max-width:1400px;padding:22px 0 200px;display:flex}.practice-title{font:500 34px/1.05 var(--display);letter-spacing:.01em;text-transform:uppercase;margin:10px 0 8px}.practice-sub,.practice-hint{max-width:66ch;font:400 12px/1.7 var(--ui);color:var(--text-3);margin:0}.practice-step0{padding:22px var(--gutter);background:var(--panel-accent);border:1px solid var(--accent);border-radius:var(--radius-panel);grid-template-columns:auto 1fr auto;align-items:center;gap:20px;display:grid}.practice-step0.done{background:var(--panel-2);border-color:var(--border)}.practice-step0-tile{border-radius:var(--radius-tile);background:var(--accent-fill);border:1px solid var(--accent-border);width:44px;height:44px;color:var(--accent);justify-content:center;align-items:center;display:flex}.practice-step0.done .practice-step0-tile{background:var(--panel);border-color:var(--border-strong);color:var(--text-3)}.practice-step0-body{min-width:0}.practice-step0-label{font:500 10px/1 var(--ui);letter-spacing:.2em;color:var(--accent);align-items:center;gap:9px;margin-bottom:8px;display:flex}.practice-step0.done .practice-step0-label{color:var(--text-4)}.practice-step0-tick{border-radius:var(--radius-pill);background:var(--ok-fill);border:1px solid var(--ok-border);color:var(--ok);font:700 9px/1 var(--ui);letter-spacing:.12em;padding:4px 8px}.practice-step0-heading{font:500 22px/1.15 var(--display);letter-spacing:.02em;text-transform:uppercase;color:var(--text);margin:0 0 8px}.practice-step0-heading strong{color:var(--accent);font-weight:500}.practice-step0-text{max-width:62ch;font:400 12px/1.6 var(--ui);color:var(--text-2);margin:0}.practice-step0-go{white-space:nowrap}.practice-disciplines{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-top:30px;display:grid}.practice-discipline{text-align:left;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);width:100%;color:var(--text);padding:20px;display:block}.practice-discipline:hover:not(:disabled):not(.not-built){border-color:var(--bar)}.practice-discipline-top{justify-content:space-between;align-items:center;min-height:34px;margin-bottom:16px;display:flex}.practice-discipline-icon{border-radius:var(--radius-tile);background:var(--panel-2);border:1px solid var(--border-strong);width:34px;height:34px;color:var(--text-3);justify-content:center;align-items:center;display:flex}.practice-discipline-title{font:500 24px/1.05 var(--display);letter-spacing:.02em;text-transform:uppercase;margin-bottom:8px;display:block}.practice-discipline-desc{font:400 12px/1.65 var(--ui);color:var(--text-3);margin:0}.practice-discipline.not-built{background:var(--panel-2);cursor:default;border-style:dashed}.practice-discipline.not-built .practice-discipline-title,.practice-discipline.not-built .practice-discipline-desc{color:var(--text-4)}.practice-discipline-pending{border-radius:var(--radius-pill);background:var(--panel);border:1px solid var(--border-strong);color:var(--text-4);font:700 9px/1 var(--ui);letter-spacing:.14em;padding:5px 9px}.practice-discipline-note{font:500 10px/1 var(--ui);letter-spacing:.12em;text-transform:uppercase;color:var(--text-4);margin:10px 0 0}.practice-clock{font:500 11px/1 var(--ui);color:var(--text-4);margin-left:auto}.practice-screen .pitch-visualizer{min-height:760px}.practice-answers{padding:16px var(--gutter);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);flex-wrap:wrap;align-items:flex-end;gap:26px;display:flex}.practice-stat{flex-direction:column;gap:7px;display:flex}.practice-stat-label{font:500 10px/1 var(--ui);letter-spacing:.14em;color:var(--text-4);text-transform:uppercase}.practice-stat-value{font:500 30px/1 var(--display);color:var(--text-2)}.practice-stat-value.live{color:var(--accent)}.practice-stat-value.on-note{color:var(--ok-text)}.practice-delta{border-radius:var(--radius-pill);font:600 11px/1 var(--ui);padding:6px 11px}.practice-delta.up{background:var(--ok-fill);border:1px solid var(--ok-border);color:var(--ok)}.practice-delta.down{background:var(--bad-fill);border:1px solid var(--bad-border);color:var(--bad)}.practice-result{padding:18px var(--gutter);background:var(--panel);border:1px solid var(--accent-border);border-radius:var(--radius-panel)}.practice-result.thin{border-color:var(--border)}.practice-result-summary{max-width:70ch;font:400 13px/1.7 var(--ui);color:var(--text-2);margin:0}.practice-overlaps{flex-direction:column;gap:8px;margin:16px 0 0;padding:0;list-style:none;display:flex}.practice-overlaps li{grid-template-columns:140px 1fr 44px;align-items:center;gap:12px;display:grid}.practice-overlap-name{font:500 12px/1 var(--ui);color:var(--text-2)}.practice-overlap-bar{border-radius:var(--radius-pill);background:var(--bg-deep);border:1px solid var(--border);height:6px;overflow:hidden}.practice-overlap-bar span{background:var(--accent);height:100%;display:block}.practice-overlap-share{font:500 11px/1 var(--ui);color:var(--text-4);text-align:right}.practice-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.practice-controls{padding:16px var(--gutter);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-panel);flex-wrap:wrap;align-items:flex-end;gap:18px;display:flex}.practice-control{min-width:0;font:500 10px/1 var(--ui);letter-spacing:.14em;color:var(--text-4);text-transform:uppercase;flex-direction:column;gap:7px;display:flex}.practice-control select,.practice-control input[type=range],.practice-control input[type=file]{max-width:230px}.practice-link{color:var(--accent);font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.timing-lane{background:var(--panel-2);border-radius:var(--radius-panel);width:100%;padding:10px 0;overflow:hidden}.timing-lane-canvas{width:100%;display:block}.tuner{flex-direction:column;gap:22px;max-width:900px;padding:22px 0 60px;display:flex}.tuner-title{font:500 34px/1.05 var(--display);letter-spacing:.01em;text-transform:uppercase;margin:10px 0 8px}.tuner-sub,.tuner-note-input{max-width:60ch;font:400 12px/1.7 var(--ui);color:var(--text-3);margin:0}.tuner-note-input{border-top:1px solid var(--border-mute);color:var(--text-4);padding-top:14px}.tuner-permission{padding:26px var(--gutter);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);flex-direction:column;align-items:flex-start;gap:16px;display:flex}.tuner-permission p{max-width:56ch;font:400 13px/1.7 var(--ui);color:var(--text-2);margin:0}.tuner-readout{padding:26px var(--gutter) 20px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);flex-direction:column;align-items:center;gap:4px;display:flex}.tuner-note{color:var(--text-2);align-items:baseline;gap:4px;display:flex}.tuner-note.in-tune{color:var(--ok)}.tuner-note-name{font:500 76px/1 var(--display);letter-spacing:.02em}.tuner-note-octave{font:400 22px/1 var(--ui);color:var(--text-4)}.tuner-dial{width:100%;max-width:760px;height:auto}.tuner-dial-window{fill:var(--ok-fill);stroke:var(--ok-border);stroke-width:1px}.tuner-tick{stroke:var(--bar);stroke-width:2px}.tuner-tick.zero{stroke:var(--text-2);stroke-width:3px}.tuner-tick-label{fill:var(--text-4);font:500 10px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase}.tuner-needle line{stroke:var(--accent);stroke-width:4px;stroke-linecap:round}.tuner-needle{transition:transform 90ms linear}.tuner-dial.in-tune .tuner-needle line{stroke:var(--ok)}.tuner-dial.idle .tuner-needle line{stroke:var(--bar)}.tuner-dial.idle .tuner-dial-window{fill:var(--panel-2);stroke:var(--border)}.tuner-pivot{fill:var(--text-2)}.tuner-dial.idle+.tuner-figures,.tuner-figures{align-items:baseline;gap:14px;display:flex}.tuner-cents{font:600 17px/1 var(--ui);color:var(--accent)}.tuner-cents.in-tune{color:var(--ok)}.tuner-cents.idle{color:var(--text-4);font-weight:400}.tuner-target{font:400 11px/1 var(--ui);color:var(--text-4)}.tuner-strings{flex-wrap:wrap;gap:9px;display:flex}.tuner-string{background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-control);min-width:62px;color:var(--text-2);flex-direction:column;align-items:center;gap:3px;padding:11px 9px;display:flex}.tuner-string:hover{border-color:var(--bar);color:var(--text)}.tuner-string.active{background:var(--accent-fill);border-color:var(--accent);color:var(--accent)}.tuner-string-note{font:600 15px/1 var(--ui)}.tuner-string-index{font:400 10px/1 var(--ui);color:var(--text-4)}.tuner-string.active .tuner-string-index{color:var(--accent)}.tuner-controls{padding:16px var(--gutter);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-panel);flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.tuner-control{min-width:0;font:500 10px/1 var(--ui);letter-spacing:.14em;color:var(--text-4);text-transform:uppercase;flex-direction:column;gap:7px;display:flex}.tuner-control select,.tuner-control input[type=range]{max-width:220px}.tuner-level{border-radius:var(--radius-pill);background:var(--bg-deep);border:1px solid var(--border);flex:1;min-width:80px;height:6px;overflow:hidden}.tuner-level-fill{background:var(--accent);height:100%;transition:width 80ms linear;display:block}.tuner-error{font:400 12px/1.6 var(--ui);color:var(--bad);margin:0}@media (width<=980px){.transport-dock{grid-template-columns:1fr}.results{padding-bottom:calc(var(--dock-h,340px) + 18px)}}@media (width<=860px){:root{--gutter:16px}.app-shell{grid-template-columns:1fr}.transport-dock{left:0}.hero h1{font-size:36px}.file-upload{flex-direction:column;align-items:flex-start}.graph-card{overflow-x:auto}.pitch-visualizer{min-width:700px;min-height:320px}.practice-step0{grid-template-columns:auto 1fr}.practice-step0-go{grid-column:2;justify-self:start}.project-row{grid-template-columns:1fr 70px 120px 44px}.project-format,.project-date{display:none}}@media (width<=620px){.project-row{grid-template-columns:auto 1fr 34px;gap:7px 10px;padding:12px 14px}.project-name{white-space:normal;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;grid-area:1/1/auto/3;font-size:14px;display:-webkit-box}.project-body .project-cell{grid-area:2/1}.project-analyses{grid-area:2/2}.project-delete{grid-area:1/3/3;align-self:center}.project-mode-badge{letter-spacing:.06em;padding:4px 7px}.project-row.head{gap:16px;padding:11px 14px;display:flex}.project-knows-head{display:none}.hero h1{font-size:30px}}.topbar-menu{display:none}@media (width<=900px),(pointer:coarse){.app-shell{grid-template-columns:1fr}.topbar{gap:8px;padding:0 12px}.topbar-search{min-width:0}.topbar .btn-primary{padding:12px 14px}.topbar-menu{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-control);width:40px;height:40px;color:var(--text-2);flex:none;justify-content:center;align-items:center;margin-right:2px;padding:0;display:flex}.topbar-menu:hover{border-color:var(--accent);color:var(--text)}.sidebar{z-index:40;border-right:1px solid var(--border);width:246px;max-width:82vw;transition:transform .22s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.app-shell.menu-open .sidebar{transform:none}.nav-item-text{clip-path:none;width:auto;height:auto;position:static;overflow:visible}.sidebar-legal{display:block}.brand-name,.sidebar-group-label,.nav-counter,.user-meta{display:revert}.nav-item-short{display:none}.sidebar-brand,.nav-item,.user-card,.sidebar-signout{justify-content:flex-start}.sidebar-signout,.sidebar-signout span{font-size:revert}.menu-scrim{z-index:35;background:var(--drawer-scrim);border:none;padding:0;position:fixed;inset:0}}.tab-editor{flex-direction:column;gap:18px;padding:22px 0 200px;display:flex}.tab-editor-head-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.tab-autosave{font:400 10px/1 var(--ui);letter-spacing:.12em;text-transform:uppercase;color:var(--text-4);align-self:center}.tab-editor-head h2{font:300 30px/1.05 var(--display);letter-spacing:.005em;text-transform:uppercase;margin:0 0 8px}.tab-editor-head p{max-width:76ch;font:400 12px/1.75 var(--ui);color:var(--text-3);margin:0 0 6px}.tab-editor-head strong{color:var(--accent);font-weight:500}.tab-editor-caveat{color:var(--text-4)}.tab-offer{background:var(--panel-accent);border-color:var(--accent-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.tab-offer-text{min-width:0;font:400 12px/1.7 var(--ui);color:var(--text-2);flex:32ch;margin:0}.tab-offer-actions{flex-wrap:wrap;gap:8px;display:flex}.tab-list-pending{color:var(--text-4)}.tab-note{max-width:76ch;font:400 12px/1.7 var(--ui);color:var(--text-3);margin:0}.tab-warning{background:var(--bad-fill);border:1px solid var(--bad-border);border-radius:var(--radius-step);max-width:76ch;font:400 12px/1.6 var(--ui);color:var(--bad);margin:0;padding:9px 12px}.tab-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);padding:18px}.tab-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.tab-panel-head h3{font:500 11px/1 var(--ui);letter-spacing:.2em;text-transform:uppercase;color:var(--text-4);margin:0}.tab-panel-actions{flex-wrap:wrap;gap:8px;display:flex}.tab-meta-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.tab-meta-grid .wide{grid-column:1/-1}.tab-meta-grid label,.tab-setup label{flex-direction:column;gap:6px;display:flex}.tab-meta-grid span,.tab-setup span,.tab-bend-target span{font:400 10px/1 var(--ui);letter-spacing:.18em;color:var(--text-4)}.tab-meta-grid input,.tab-meta-grid textarea,.tab-setup input,.tab-setup select,.tab-bend-target input{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-control);color:var(--text);font:400 12px/1.4 var(--ui);padding:9px 11px}.tab-meta-grid textarea{resize:vertical}.tab-setup{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.tab-grid{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-control);flex-direction:column;gap:16px;padding:12px;display:flex;overflow-x:auto}.tab-system{min-width:fit-content}.tab-bar-head{flex-direction:column;gap:3px;display:flex}.tab-bar-number{font:400 10px/1 var(--ui);letter-spacing:.18em;color:var(--text-4)}.tab-section-input{background:var(--panel);border:1px dashed var(--border);border-radius:var(--radius-step);width:100%;color:var(--accent-text-hover);font:500 11px/1 var(--ui);padding:4px 6px}.tab-section-input::placeholder{color:var(--text-4)}.tab-section-input:focus{border-style:solid;border-color:var(--accent)}.tab-lane{align-items:center;display:flex}.tab-lane-bars{margin-bottom:6px}.tab-bar-group{align-items:center;display:flex}.tab-bar-divider{width:2px;height:calc(var(--tab-cell,30px) * .87);background:var(--border-strong);flex:none}.tab-lane-mute .tab-bar-divider,.tab-lane-count .tab-bar-divider{background:0 0;height:12px}.tab-lane-bars .tab-bar-divider{background:0 0;align-self:stretch;height:auto}.tab-lane-label{width:28px;font:500 12px/1 var(--ui);color:var(--text-3);flex:none}.tab-cell{width:var(--tab-cell,30px);height:calc(var(--tab-cell,30px) * .87);background:linear-gradient(to bottom, transparent 47%, var(--bar) 47%, var(--bar) 53%, transparent 53%);font:500 12px/1 var(--ui);color:var(--text);cursor:pointer;flex:none;justify-content:center;align-items:center;display:flex;position:relative}.tab-cell.filled{background:radial-gradient(circle at 50% 50%, var(--panel-2) 0 11px, transparent 11px), linear-gradient(to bottom, transparent 47%, var(--bar) 47%, var(--bar) 53%, transparent 53%)}.tab-cell.cursor{border-radius:var(--radius-step);outline:1px solid var(--accent);outline-offset:-1px;color:var(--accent)}.tab-cell-link{font:500 9px/1 var(--ui);color:var(--accent-text-hover);position:absolute;top:1px;right:-3px}.tab-lane-mute{margin-bottom:4px}.tab-mute-cell{width:var(--tab-cell,30px);border:none;border-bottom:2px dotted var(--border-strong);background:0 0;flex:none;height:12px;padding:0}.tab-mute-cell.on{border-bottom-color:var(--accent)}.tab-lane-count{margin-top:4px}.tab-count-cell{width:var(--tab-cell,30px);font:400 10px/1 var(--ui);color:var(--text-4);text-align:center;flex:none}.tab-palette{border-top:1px solid var(--border-mute);margin-top:14px;padding-top:14px}.tab-keypad{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.tab-key{background:var(--panel-2);border:1px solid var(--border-strong);border-radius:var(--radius-control);min-width:38px;min-height:38px;color:var(--text);font:500 14px/1 var(--ui);padding:0 10px}.tab-key-wide{color:var(--text-3);font-size:11px}.tab-key:hover{border-color:var(--accent);color:var(--accent-text-hover)}.tab-key:active{background:var(--accent-fill)}@media (pointer:coarse){.tab-key{min-width:46px;min-height:46px;font-size:16px}}.tab-palette-label{font:400 11px/1.5 var(--ui);color:var(--text-4);margin-bottom:10px;display:block}.tab-palette-buttons,.tab-palette-bend{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.tab-palette-bend{margin-top:10px}.tab-chip{background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text-2);font:400 10px/1 var(--ui);box-shadow:0 1px 0 var(--border-mute);align-items:center;gap:6px;padding:4px 8px 4px 4px;display:inline-flex}.tab-chip-symbol{border-radius:var(--radius-pill);background:var(--panel-2);min-width:20px;height:20px;color:var(--accent);font:500 11px/1 var(--ui);justify-content:center;align-items:center;padding:0 4px;display:inline-flex}.tab-chip-label{white-space:nowrap}.tab-chip:hover:not(:disabled){border-color:var(--accent);color:var(--text)}.tab-chip.on{background:var(--accent-fill);border-color:var(--accent);color:var(--accent-text-hover)}.tab-chip.on .tab-chip-symbol{background:var(--accent);color:var(--on-accent)}.tab-chip:disabled{opacity:.45;cursor:default;box-shadow:none}.tab-chord-panel{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-control);flex-direction:column;gap:8px;margin-top:10px;padding:12px;display:flex}.tab-chord-where{font:400 11px/1.5 var(--ui);color:var(--text-4);margin:0}.tab-chord-row{flex-wrap:wrap;gap:4px;display:flex}.tab-orientation{gap:4px;margin-right:4px;display:inline-flex}.tab-mode{gap:4px;margin-right:auto;display:inline-flex}.tab-bend-target{flex-direction:column;gap:5px;display:flex}.tab-bend-target input{width:70px}.tab-sheet{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-control);padding:20px}.tab-sheet-title{font:500 24px/1.1 var(--display);letter-spacing:.01em;text-transform:uppercase;margin:0}.tab-sheet-performer{font:400 13px/1.4 var(--ui);color:var(--accent);margin:4px 0 0}.tab-sheet-facts{font:400 11px/1.6 var(--ui);color:var(--text-4);margin:6px 0 0}.tab-sheet-systems{margin-top:18px}.tab-sheet-system{break-inside:avoid;font:400 12px/1.45 var(--ui);color:var(--text-2);white-space:pre;margin:0 0 18px;overflow-x:auto}.tab-player{--tab-zoom:12px}.tab-player.is-playing{padding-bottom:68vh}.tab-player-transport{flex-wrap:wrap;align-items:center;gap:14px;padding-bottom:12px;display:flex}.tab-player-settings{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.tab-player-panel{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-control);margin-bottom:14px;padding:12px 14px 14px}.tab-player-panel-title{font:500 11px/1 var(--ui);letter-spacing:.2em;text-transform:uppercase;color:var(--text-4);margin:0 0 12px}.tab-player-field{align-items:center;gap:8px;display:inline-flex}.tab-player-field-label{min-width:68px;font:400 10px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--text-4);white-space:nowrap;flex:none}.tab-player-tempo{font:400 12px/1 var(--ui);color:var(--text-2)}.tab-player-tempo strong{color:var(--text);font-weight:500}.tab-player-of{color:var(--text-4)}.tab-player-group{gap:4px;display:inline-flex}.tab-player-loop select{background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-pill);min-height:30px;color:var(--text-2);font:400 11px/1 var(--ui);padding:4px 8px}.tab-player-count{font:400 11px/1 var(--ui);color:var(--text-4);margin-left:auto}.tab-player-sections{flex-wrap:wrap;align-items:center;gap:4px;margin-top:12px;display:flex}.tab-player-sections .tab-player-field-label{margin-right:4px}.tab-player-lines{touch-action:pan-x pan-y;margin-top:16px}.tab-player-line{font:400 var(--tab-zoom) / 1.45 var(--mono);color:var(--text-2);white-space:pre;margin:0 0 18px;overflow-x:auto}.tab-player-bar{padding-block:.08em}.tab-player-bar.on{background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--text)}.tab-player-bar.in-loop{background:color-mix(in srgb, var(--text) 7%, transparent)}.tab-player-bar.in-loop.on{background:color-mix(in srgb, var(--accent) 22%, transparent)}.tab-player-probe{visibility:hidden;pointer-events:none;white-space:pre;font:400 var(--tab-zoom) / 1.45 var(--mono);position:absolute}.tab-player .tab-sheet-legend{margin-top:56px}@media (width>=901px) and (pointer:fine){.tab-chord-row .tab-chip,.tab-mode .tab-chip,.tab-player .tab-chip{min-height:34px;padding:6px 13px;font-size:13px}.tab-player .btn-primary.pill{min-height:34px;padding:8px 22px;font-size:13px}.tab-player-loop select{min-height:34px;padding:6px 12px;font-size:12px}}.tab-print-only{display:none}.tab-sheet-notes h3,.tab-sheet-legend h3{font:500 11px/1 var(--ui);letter-spacing:.2em;text-transform:uppercase;color:var(--text-4);margin:18px 0 8px}.tab-sheet-notes p{font:400 12px/1.7 var(--ui);color:var(--text-3);white-space:pre-wrap;margin:0}.tab-sheet-comments{font:400 12px/1.7 var(--ui);color:var(--text-3);white-space:pre-wrap;margin:0 0 18px}.tab-sheet-legend dl{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:6px 18px;margin:0;display:grid}.tab-sheet-legend dl>div{gap:10px;display:flex}.tab-sheet-legend dt{min-width:34px;font:500 12px/1.6 var(--ui);color:var(--accent)}.tab-sheet-legend dd{font:400 11px/1.6 var(--ui);color:var(--text-4);margin:0}.tab-sheet-legend strong{color:var(--text-3);font-weight:500}.tab-sheet-foot{border-top:1px solid var(--border-mute);font:400 10px/1.6 var(--ui);color:var(--text-4);flex-wrap:wrap;gap:16px;margin-top:18px;padding-top:12px;display:flex}.tab-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tab-list li{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-control);align-items:center;gap:10px;padding:8px 10px;display:flex}.tab-list li.current{border-color:var(--accent-border)}.tab-list-open{text-align:left;background:0 0;border:none;flex-direction:column;flex:1;gap:4px;padding:0;display:flex}.tab-list-title{font:500 13px/1 var(--ui);color:var(--text)}.tab-list-meta{font:400 11px/1 var(--ui);color:var(--text-4)}.tab-list-delete{border:1px solid var(--border);border-radius:var(--radius-control);color:var(--text-4);font:400 11px/1 var(--ui);background:0 0;padding:6px 10px}.tab-list-delete:hover{border-color:var(--bad-border);color:var(--bad)}.tab-empty{font:400 12px/1.6 var(--ui);color:var(--text-4);margin:0}.lesson-course,.lesson-screen{max-width:880px;padding:26px var(--gutter) 60px;flex-direction:column;gap:22px;display:flex}.lesson-course-title{font:400 30px/1.15 var(--display);color:var(--text);margin:6px 0 0}.lesson-course-sub{max-width:62ch;font:400 13px/1.6 var(--ui);color:var(--text-3);margin:8px 0 0}.lesson-next{padding:18px var(--gutter);background:var(--panel);border:1px solid var(--accent-border);border-radius:var(--radius-panel);align-items:center;gap:18px;display:flex}.lesson-next.done{border-color:var(--border)}.lesson-next-tile{background:var(--panel-2);border-radius:var(--radius-panel);flex:none;place-items:center;width:64px;height:64px;display:grid}.lesson-next-body{flex:auto;min-width:0}.lesson-next-label{font:500 10px/1 var(--ui);letter-spacing:.14em;color:var(--accent-text);text-transform:uppercase;margin-bottom:6px;display:inline-block}.lesson-next.done .lesson-next-label{color:var(--text-4)}.lesson-next-heading{font:500 17px/1.25 var(--display);color:var(--text);margin:0 0 4px}.lesson-next-text{max-width:58ch;font:400 12px/1.6 var(--ui);color:var(--text-3);margin:0}.lesson-next-go{flex:none}.lesson-section{flex-direction:column;gap:4px;display:flex}.lesson-section-title{font:500 15px/1.3 var(--display);color:var(--text-2);margin:0}.lesson-section-blurb{font:400 12px/1.5 var(--ui);color:var(--text-4);margin:0 0 10px}.lesson-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.lesson-list-open{width:100%;padding:13px var(--gutter);background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-panel);text-align:left;justify-content:space-between;align-items:baseline;gap:14px;display:flex}button.lesson-list-open:hover{border-color:var(--accent-border)}.lesson-list-open.not-built{opacity:.62;background:0 0;border-style:dashed}.lesson-list-title{font:500 13px/1.3 var(--ui);color:var(--text);flex:auto}.lesson-list-open.not-built .lesson-list-title{color:var(--text-3)}.lesson-list-meta{font:400 11px/1.3 var(--ui);color:var(--text-4);flex:none}.lesson-course-note{max-width:64ch;font:400 11px/1.6 var(--ui);color:var(--text-4);margin:4px 0 0}.lesson-head{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.lesson-title{font:400 27px/1.15 var(--display);color:var(--text);margin:4px 0 0}.lesson-sub{font:400 12px/1.5 var(--ui);color:var(--text-4);margin:0}.lesson-loading{font:400 13px/1.6 var(--ui);color:var(--text-3);margin:0}.lesson-steps{flex-direction:column;gap:18px;display:flex}.lesson-body{max-width:64ch;font:400 14px/1.75 var(--ui);color:var(--text-2)}.lesson-body h2{font:500 18px/1.25 var(--display);color:var(--text);margin:10px 0 8px}.lesson-body h3{font:600 12px/1.3 var(--ui);letter-spacing:.1em;color:var(--text-3);text-transform:uppercase;margin:8px 0 6px}.lesson-body p{margin:0 0 12px}.lesson-body strong{color:var(--text);font-weight:600}.lesson-body ul{margin:0 0 14px;padding-left:20px}.lesson-body li{margin-bottom:6px}.lesson-body a{color:var(--accent);text-underline-offset:2px}.lesson-body code{font:400 12px/1.5 var(--mono);background:var(--panel-2);border-radius:4px;padding:1px 5px}.lesson-chord{display:flex}.lesson-unknown{font:400 12px/1.5 var(--ui);color:var(--text-3);background:var(--panel-2);border:1px dashed var(--border-strong);border-radius:var(--radius-panel);margin:0;padding:10px 14px}.lesson-unknown code{font:400 11px/1.4 var(--mono);color:var(--text-2)}.lesson-progress{gap:4px;max-width:64ch;display:flex}.lesson-progress-step{background:var(--panel-2);border-radius:var(--radius-pill);cursor:pointer;border:none;flex:1 1 0;height:6px;padding:0}.lesson-progress-step.passed{background:var(--bar)}.lesson-progress-step.current{background:var(--accent)}.lesson-step-title{font:500 20px/1.25 var(--display);color:var(--text);margin:0}.lesson-pager{border-top:1px solid var(--border-mute);justify-content:space-between;align-items:center;gap:12px;max-width:64ch;padding-top:6px;display:flex}.lesson-tool{background:var(--panel);border:1px solid var(--accent-border);border-radius:var(--radius-panel);flex-wrap:wrap;align-items:center;gap:12px;max-width:64ch;padding:14px 16px;display:flex}.lesson-tool-note{font:400 12px/1.5 var(--ui);color:var(--text-3)}.lesson-tool-screen{flex-direction:column;display:flex}.lesson-tool-bar{top:env(safe-area-inset-top,0px);z-index:5;padding:12px var(--gutter);background:var(--bg);border-bottom:1px solid var(--border-mute);position:sticky}.lesson-tab{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-panel);max-width:100%;margin:0;padding:14px 16px;overflow-x:auto}.lesson-tab pre{font:400 13px/1.45 var(--mono);color:var(--text);white-space:pre;margin:0}.lesson-tab .fig-caption{margin:0 0 8px}.lesson-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;max-width:64ch;display:flex}.lesson-cheer{max-width:64ch;font:400 13px/1.5 var(--ui);color:var(--text-2);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);align-items:center;gap:14px;padding:14px 16px;display:flex}.lesson-cheer p{margin:0 0 8px}.lesson-meter{background:var(--panel-2);border-radius:var(--radius-pill);max-width:280px;height:5px;margin-top:10px;overflow:hidden}.lesson-meter span{background:var(--bar);height:100%;display:block}.lesson-section-number{width:22px;height:22px;font:500 11px/1 var(--ui);color:var(--text-3);border:1px solid var(--border);border-radius:var(--radius-pill);vertical-align:2px;place-items:center;margin-right:10px;display:inline-grid}.lesson-section-count{font:400 11px/1 var(--ui);color:var(--text-4);margin-left:10px}.lesson-list-mark{font:500 12px/1.3 var(--ui);color:var(--ok);flex:0 0 14px}.lesson-list-open.is-done .lesson-list-title{color:var(--text-3)}.fig-chord-row{flex-wrap:wrap;gap:14px;display:flex}.fig-chord{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-panel);margin:0;padding:8px 6px 2px}.fig-chord svg{width:148px;height:auto;display:block}.fig-chord-name{font:500 16px/1 var(--display);fill:var(--text)}.fig-chord-name.small{font-size:17px}.fig-chord-name.home{fill:var(--accent-text)}.fig-string{stroke:var(--text-3);stroke-width:1.2px}.fig-string.thin{stroke:var(--text-2);stroke-width:.8px}.fig-fret{stroke:var(--border-strong);stroke-width:1.2px}.fig-nut{stroke:var(--text);stroke-width:4px}.fig-open{fill:none;stroke:var(--text-2);stroke-width:1.5px}.fig-mark{font:500 13px/1 var(--ui);fill:var(--text-3)}.fig-dot{fill:var(--text)}.fig-dot.hollow{fill:var(--panel);stroke:var(--text-2);stroke-width:1.5px}.fig-dot.root{fill:var(--text)}.fig-dot.current{fill:var(--accent);stroke:none}.fig-dot.hit{fill:var(--ok);stroke:none}.fig-dot.wrong{fill:var(--bad);stroke:none}.fig-dot.dim,.fig-dot.dim+.fig-dot-label{opacity:.45}.fig-dot.pos{fill:var(--accent);stroke:none}.fig-dot.pos.root{stroke:var(--text);stroke-width:2.5px}.fig-dot-label{font:600 10px/1 var(--ui);fill:var(--bg-deep)}.fig-dot-label.dark{fill:var(--text)}.fig-small{font:400 10px/1 var(--ui);fill:var(--text-3)}.fig-sharp{font:400 8px/1 var(--ui);fill:var(--text-4)}.fig-inlay{fill:var(--border)}.fig-neck-wrap{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-panel);max-width:100%;padding:10px 8px 4px;overflow-x:auto}.fig-neck{width:100%;height:auto;display:block}.fig-scale{flex-direction:column;gap:8px;margin:0;display:flex}.fig-caption{font:400 11px/1.5 var(--ui);color:var(--text-4)}.fig-fixed{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-panel);flex-direction:column;gap:8px;max-width:640px;margin:0;padding:12px;display:flex}.fig-fixed svg{width:100%;height:auto;display:block}.fig-guitar,.fig-hand,.fig-strings{max-width:640px}.fig-circle{max-width:360px;margin:0 auto}.fig-body{fill:var(--panel);stroke:var(--text-3);stroke-width:1.5px}.fig-hole{fill:var(--bg-deep);stroke:var(--text-3);stroke-width:1.5px}.fig-bridge,.fig-head,.fig-neck-shape{fill:var(--panel-2);stroke:var(--text-3);stroke-width:1.5px}.fig-peg{fill:var(--text-3)}.fig-leader{stroke:var(--text-4);stroke-width:1px;stroke-dasharray:2 3}.fig-label{font:500 12px/1 var(--ui);fill:var(--text)}.fig-ring{fill:none;stroke:var(--border);stroke-width:1px}.fig-key{max-width:100%;overflow-x:auto}.fig-key-row{gap:6px;display:flex}.fig-key-cell{background:var(--panel-2);border:1px solid var(--border-mute);border-radius:var(--radius-panel);flex-direction:column;flex:1 0 64px;align-items:center;gap:6px;padding:10px 6px;display:flex}.fig-key-cell.home{border-color:var(--accent-border)}.fig-key-numeral{font:500 11px/1 var(--ui);color:var(--text-4)}.fig-key-chord{font:500 17px/1 var(--display);color:var(--text)}.course-mascot-button{transform-origin:48px 36px;transition:transform .26s}.course-mascot.pleased .course-mascot-button{transform:rotate(-11deg)}@media (prefers-reduced-motion:reduce){.course-mascot-button{transition:none}}@media (width<=900px),(pointer:coarse){.lesson-next{flex-wrap:wrap}.lesson-next-go{flex:100%}}.update-bar{z-index:60;background:var(--panel-glass-solid);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--accent-border);border-radius:var(--radius-panel);max-width:520px;box-shadow:var(--shadow-panel-tight);flex-wrap:wrap;align-items:center;gap:12px;margin:0 auto;padding:14px 16px;display:flex;position:fixed;bottom:16px;left:16px;right:16px}.update-bar-text{min-width:170px;font:400 12px/1.5 var(--ui);color:var(--text-2);flex:1}.update-bar-dismiss{border:1px solid var(--border);border-radius:var(--radius-control);color:var(--text-4);font:400 11px/1 var(--ui);background:0 0;padding:8px 12px}.update-bar-dismiss:hover{border-color:var(--border-strong);color:var(--text-2)}.metronome{flex-direction:column;gap:22px;max-width:980px;padding:22px 0 60px;display:flex}.metronome-title{font:500 34px/1.05 var(--display);letter-spacing:.01em;text-transform:uppercase;margin:10px 0 8px}.metronome-sub{max-width:62ch;font:400 12px/1.7 var(--ui);color:var(--text-3);margin:0}.metronome-stage{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);grid-template-columns:260px 1fr;align-items:center;gap:26px;padding:22px;display:grid}.metronome-pendulum{width:100%;height:auto}.metronome-case{fill:var(--panel-2);stroke:var(--border-strong);stroke-width:1.5px}.metronome-case-inner{fill:var(--bg-deep);stroke:none}.metronome-scale{stroke:var(--bar);stroke-width:2px}.metronome-arm{animation-iteration-count:infinite;animation-fill-mode:none}@keyframes metronome-swing-a{0%{animation-timing-function:cubic-bezier(.39,.575,.565,1);transform:rotate(0)}25%{transform:rotate(calc(-1 * var(--metronome-swing,24deg)));animation-timing-function:cubic-bezier(.47,0,.745,.715)}50%{animation-timing-function:cubic-bezier(.39,.575,.565,1);transform:rotate(0)}75%{transform:rotate(var(--metronome-swing,24deg));animation-timing-function:cubic-bezier(.47,0,.745,.715)}to{transform:rotate(0)}}@keyframes metronome-swing-b{0%{animation-timing-function:cubic-bezier(.39,.575,.565,1);transform:rotate(0)}25%{transform:rotate(calc(-1 * var(--metronome-swing,24deg)));animation-timing-function:cubic-bezier(.47,0,.745,.715)}50%{animation-timing-function:cubic-bezier(.39,.575,.565,1);transform:rotate(0)}75%{transform:rotate(var(--metronome-swing,24deg));animation-timing-function:cubic-bezier(.47,0,.745,.715)}to{transform:rotate(0)}}.metronome-rod{stroke:var(--text-3);stroke-width:3px;stroke-linecap:round}.metronome-weight{fill:var(--accent);stroke:none;transition:y .22s}.metronome-tip{fill:var(--text-2)}.metronome-pivot{fill:var(--border-strong);stroke:var(--panel-2);stroke-width:2px}.metronome-pendulum.idle .metronome-weight{fill:var(--bar)}.metronome-pendulum.muted .metronome-weight{fill:var(--text-4)}.metronome-readout{flex-direction:column;gap:14px;min-width:0;display:flex}.metronome-bpm{align-items:baseline;gap:10px;display:flex}.metronome-bpm-value{font:500 66px/1 var(--display);letter-spacing:.01em;font-variant-numeric:tabular-nums}.metronome-bpm-unit{font:500 12px/1 var(--ui);letter-spacing:.2em;color:var(--text-4)}.metronome-leds{flex-wrap:wrap;gap:8px;display:flex}.metronome-led{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-control);cursor:pointer;flex-direction:column;align-items:center;gap:6px;min-width:46px;padding:9px 11px;display:flex;position:relative}.metronome-led:hover{border-color:var(--border-strong)}.metronome-led-lamp{border-radius:var(--radius-pill);background:var(--bg-deep);border:1px solid var(--border-strong);width:18px;height:18px;transition:background .24s,border-color .24s,box-shadow .24s}.metronome-led.accent-accent .metronome-led-lamp{border-color:var(--accent-border)}.metronome-led.accent-soft .metronome-led-lamp{border-color:var(--border-mute)}.metronome-led.accent-silent .metronome-led-lamp{border-style:dashed}.metronome-led-number{font:500 11px/1 var(--ui);color:var(--text-4);font-variant-numeric:tabular-nums}.metronome-led.lit .metronome-led-lamp{background:var(--text-3);border-color:var(--text-2);transition-duration:0s}.metronome-led.lit.accent-accent .metronome-led-lamp{background:var(--accent);border-color:var(--accent)}.metronome-led.lit.accent-soft .metronome-led-lamp{background:var(--text-4)}.metronome-led.lit.accent-silent .metronome-led-lamp{border-color:var(--text-4);background:0 0}.metronome-led.lit .metronome-led-number{color:var(--text)}.metronome-led.silenced.lit .metronome-led-lamp{border-color:var(--accent-border);background:0 0}.metronome-led-flash{z-index:1;white-space:nowrap;background:var(--panel-glass-solid);border:1px solid var(--accent-border);border-radius:var(--radius-step);color:var(--accent-text);font:500 10px/1 var(--ui);letter-spacing:.08em;text-transform:uppercase;pointer-events:none;padding:3px 7px;animation:1.4s ease-out forwards metronome-led-flash;position:absolute;bottom:calc(100% + 4px);left:50%}@keyframes metronome-led-flash{0%{opacity:0;transform:translate(-50%,4px)}12%{opacity:1;transform:translate(-50%)}70%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-4px)}}.metronome-hint,.metronome-note{font:400 11px/1.6 var(--ui);color:var(--text-4);margin:0}.metronome-transport{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.metronome-start{min-width:108px}.metronome-section{flex-direction:column;gap:12px;display:flex}.metronome-section-title{font:500 18px/1 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);margin:0}.metronome-panels{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.metronome-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);flex-direction:column;gap:10px;padding:16px 18px;display:flex}.metronome-panel-title{font:500 11px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--text-4)}.tempo-wheel{align-items:stretch;gap:6px;margin-bottom:10px;display:flex}.tempo-wheel-end{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-step);width:38px;color:var(--text-2);font:500 16px/1 var(--ui);flex:none}.tempo-wheel-end:hover{border-color:var(--accent-border);color:var(--accent-text)}.tempo-wheel-drum{border:1px solid var(--border);border-radius:var(--radius-step);background:var(--bg-deep);cursor:ew-resize;touch-action:none;flex:1;min-width:0;height:44px;position:relative;overflow:hidden}.tempo-wheel-drum:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tempo-wheel-drum.is-gripped{border-color:var(--accent-border)}.tempo-wheel-ridges{transform:translateX(var(--drum-offset,0px));background:repeating-linear-gradient(90deg, var(--panel) 0 1px, color-mix(in srgb, var(--panel-2) 70%, var(--bg-deep)) 1px 6px, var(--bg-deep) 6px 7px, color-mix(in srgb, var(--panel-2) 40%, var(--bg-deep)) 7px 12px);position:absolute;inset:0 -24px 0 -12px}.tempo-wheel-shade{pointer-events:none;background:linear-gradient(90deg, var(--bg-deep) 0%, color-mix(in srgb, var(--bg-deep) 55%, transparent) 8%, transparent 26%, transparent 74%, color-mix(in srgb, var(--bg-deep) 55%, transparent) 92%, var(--bg-deep) 100%), linear-gradient(180deg, color-mix(in srgb, var(--bg-deep) 70%, transparent) 0%, transparent 42%, transparent 58%, color-mix(in srgb, var(--bg-deep) 80%, transparent) 100%);position:absolute;inset:0}.tempo-wheel-mark{pointer-events:none;background:var(--accent);opacity:.55;width:1px;position:absolute;top:6px;bottom:6px;left:50%}.tempo-wheel-drum.is-gripped .tempo-wheel-mark{opacity:1}.metronome-tempo-row{align-items:center;gap:6px;display:flex}.metronome-step{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-step);color:var(--text-2);font:500 12px/1 var(--ui);flex:none;padding:8px 10px}.metronome-step:hover{border-color:var(--accent-border);color:var(--accent-text)}.metronome-bpm-input{background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-step);min-width:0;color:var(--text);font:500 14px/1 var(--ui);text-align:center;font-variant-numeric:tabular-nums;flex:1;padding:8px 10px}.metronome-slider{width:100%;accent-color:var(--accent)}.metronome-field,.metronome-check{font:400 12px/1.4 var(--ui);color:var(--text-2);justify-content:space-between;align-items:center;gap:10px;display:flex}.metronome-check{cursor:pointer;justify-content:flex-start}.metronome-check input{accent-color:var(--accent)}.metronome-field input,.metronome-field select{background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-step);width:96px;color:var(--text);font:400 12px/1 var(--ui);flex:none;padding:7px 9px}.metronome-field input[type=range]{width:120px;accent-color:var(--accent);background:0 0;border:none;padding:0}.metronome-pair{flex-wrap:wrap;gap:10px;display:flex}.metronome-pair .metronome-field{color:var(--text-4);flex-direction:column;flex:96px;align-items:flex-start;gap:5px;font-size:11px}.metronome-pair .metronome-field input{width:100%}@media (width<=720px){.metronome-stage{grid-template-columns:1fr}.metronome-pendulum{max-width:210px;margin:0 auto}.metronome-bpm-value{font-size:52px}}@media (prefers-reduced-motion:reduce){.metronome-arm{animation:none!important}.metronome-led-flash{animation-name:metronome-led-flash-still}@keyframes metronome-led-flash-still{0%,70%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%)}}}.studio{flex-direction:column;gap:22px;padding:22px 0 60px;display:flex}.studio-head{flex-direction:column;gap:8px;display:flex}.studio-title{font:500 34px/1.05 var(--display);letter-spacing:.01em;text-transform:uppercase;margin:0}.studio-sub{max-width:62ch;font:400 12px/1.7 var(--ui);color:var(--text-3);margin:0}.studio-library{gap:18px}.studio-library-head-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.studio-library-note{max-width:74ch;font:400 12px/1.6 var(--ui);color:var(--text-3);margin:0}.studio-library-empty{font:400 12px/1.6 var(--ui);color:var(--text-4);margin:0}.studio-library-list{flex-direction:column;gap:6px;max-width:900px;margin:0;padding:0;list-style:none;display:flex}.studio-library-row{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-control);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.studio-library-open{text-align:left;background:0 0;border:none;flex-direction:column;flex:1;gap:5px;min-width:0;padding:0;display:flex}.studio-library-open:hover .studio-library-title{color:var(--accent-text)}.studio-library-title{font:500 14px/1.2 var(--ui);color:var(--text);overflow-wrap:anywhere}.studio-library-meta{font:400 11px/1.3 var(--ui);color:var(--text-4)}.studio-library-pending{color:var(--text-3)}.studio-library-rename{background:var(--panel-2);border:1px solid var(--accent-border);border-radius:var(--radius-step);min-width:0;font:500 13px/1.2 var(--ui);color:var(--text);flex:1;padding:7px 9px}.studio-library-actions,.studio-library-confirm{font:400 11px/1.4 var(--ui);color:var(--text-3);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.studio-library-action,.studio-library-delete{border:1px solid var(--border);border-radius:var(--radius-control);color:var(--text-3);font:400 11px/1 var(--ui);background:0 0;padding:6px 10px}.studio-library-action:hover{border-color:var(--border-strong);color:var(--text)}.studio-library-delete:hover,.studio-library-confirm .studio-library-delete{border-color:var(--bad-border);color:var(--bad)}.studio-project{flex-direction:column;padding-top:22px;display:flex}.studio-project-name{width:12em;min-width:5ch;max-width:18em;font:500 18px/1.1 var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--text);background:0 0;border:none;border-bottom:1px dashed #0000;flex:0 auto;margin:0;padding:2px 0}@supports (field-sizing:content){.studio-project-name{field-sizing:content;width:auto}}.studio-project-name:hover{border-bottom-color:var(--border-strong)}.studio-project-name:focus{border-bottom-color:var(--accent);outline:none}.studio-project .studio{padding-top:0}.studio-section{flex-direction:column;gap:12px;display:flex}.studio-section-title{font:500 18px/1 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);margin:0}.studio-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);flex-direction:column;gap:12px;max-width:820px;padding:16px 18px;display:flex}.studio-field{font:400 11px/1 var(--ui);color:var(--text-3);align-items:center;gap:10px;display:flex}.studio-field select{flex:auto;min-width:0;max-width:380px}.studio-note{max-width:74ch;font:400 11px/1.6 var(--ui);color:var(--text-4);margin:0}.studio-notes{flex-direction:column;gap:8px;display:flex}.studio-notes-toggle{color:var(--text-4);font:400 11px/1.6 var(--ui);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0}.studio-notes-toggle:hover{color:var(--text-3)}.studio-notes-body{flex-direction:column;gap:8px;display:flex}.studio-error{background:var(--bad-fill);border:1px solid var(--bad-border);border-radius:var(--radius-step);font:400 11px/1.5 var(--ui);color:var(--bad);margin:0;padding:9px 12px}.studio-frame{background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel-tight);flex-direction:column;display:flex}.studio-bar{background:var(--panel);border-bottom:1px solid var(--border);border-radius:var(--radius-panel) var(--radius-panel) 0 0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:10px 12px;display:flex}.studio-title-row{background:var(--panel);border-radius:var(--radius-panel) var(--radius-panel) 0 0;align-items:center;gap:10px;min-width:0;padding:12px 12px 2px;display:flex}.studio-bar.under-title{border-radius:0}.studio-title-row .studio-project-name{max-width:100%;font-size:24px}.studio-bar-group{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.studio-bar-centre{flex-wrap:nowrap}.studio-bar-join{gap:4px;display:flex}.studio-icon-button{border:1px solid var(--border-strong);background:var(--panel-2);width:28px;height:28px;color:var(--text-2);font:500 13px/1 var(--ui);cursor:pointer;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.studio-icon-button:hover:not(:disabled){border-color:var(--bar);color:var(--text)}.studio-icon-button:disabled{opacity:.45;cursor:default}.studio-bar .studio-menubar .studio-menu-button{background:0 0;border-color:#0000}.studio-bar .studio-menubar .studio-menu-button:hover,.studio-bar .studio-menubar .studio-menu-button.is-on{border-color:var(--border-strong);background:var(--panel-2)}.studio-transport{border:1px solid var(--border-strong);background:var(--panel-2);border-radius:6px;flex:none;height:28px;display:flex;overflow:hidden}.studio-transport-key{border:none;border-left:1px solid var(--border);width:34px;color:var(--text-2);font:500 11px/1 var(--ui);cursor:pointer;background:0 0;padding:0}.studio-transport-key:first-child{border-left:none}.studio-transport-key:hover:not(:disabled){color:var(--text)}.studio-transport-key.is-on{background:var(--accent-fill);color:var(--accent)}.studio-transport-key:disabled{opacity:.45;cursor:default}.studio-position{border:1px solid var(--border-mute);background:var(--page-ground);font-variant-numeric:tabular-nums;border-radius:6px;align-items:center;gap:12px;height:32px;padding:0 12px;display:flex}.studio-position-bars{min-width:6ch;font:600 14px/1 var(--ui);color:var(--text)}.studio-position-clock{min-width:6ch;font:400 11px/1 var(--ui);color:var(--text-4)}.studio-menubar{align-items:center;gap:8px;margin:4px 0 6px;display:flex;position:relative}@media (width<=700px){.studio-menubar .studio-menu{position:static}}.studio-menu-panel.is-wide{width:min(560px,100vw - 32px)}.studio-settings-input{flex-direction:column;gap:12px;padding:4px 0;display:flex}.studio-menu{position:relative}.studio-menu-button{align-items:center;gap:6px;display:inline-flex}.studio-menu-panel{z-index:25;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-control);min-width:250px;box-shadow:var(--shadow-pop);flex-direction:column;gap:4px;padding:8px;display:flex;position:absolute;top:calc(100% + 6px);left:0}.studio-menu-item{border-radius:var(--radius-step);font:500 12px/1 var(--ui);color:var(--text);text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.studio-menu-item:hover{background:var(--panel-2)}.studio-menu-sub{border-top:1px solid var(--border-mute);flex-direction:column;gap:8px;padding:6px 10px;display:flex}.studio-menu-field{font:400 11px/1 var(--ui);color:var(--text-3);justify-content:space-between;align-items:center;gap:10px;display:flex}.studio-menu-field select{flex:1;min-width:0}.studio-menu-go{margin-top:2px}.studio-bar .studio-record{min-width:84px;height:28px;font:700 11px/1 var(--ui);border-radius:6px;padding:0 12px}.studio-add{flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;display:flex}.studio-add-button{border:1px dashed var(--border-strong);height:28px;color:var(--text-2);font:500 11px/1 var(--ui);cursor:pointer;background:0 0;border-radius:6px;padding:0 10px}.studio-add-button:hover:not(:disabled){border-color:var(--bar);color:var(--text)}.studio-add-button:disabled{opacity:.45;cursor:default}.studio-add-count{font:400 10px/1.4 var(--ui);color:var(--text-4)}.studio-countin{border:1px solid var(--border-strong);background:var(--panel-2);border-radius:6px;align-items:stretch;height:28px;display:flex;overflow:hidden}.studio-countin-label{font:400 9px/1 var(--ui);letter-spacing:.08em;color:var(--text-4);align-items:center;padding:0 8px;display:flex}.studio-countin-choice{border:none;border-left:1px solid var(--border);width:26px;color:var(--text-4);font:600 10px/1 var(--ui);cursor:pointer;background:0 0;padding:0}.studio-countin-choice:hover:not(:disabled){color:var(--text-2)}.studio-countin-choice.on{background:var(--accent-fill);color:var(--accent)}.studio-countin-choice:disabled{opacity:.4;cursor:not-allowed}.studio-timeline{background:var(--bg-deep);grid-template-columns:240px minmax(0,1fr);align-items:stretch;display:grid}.studio-timeline-controls{background:var(--bg);border-right:1px solid var(--border);flex-direction:column;min-width:0;display:flex}.studio-lane-head{box-sizing:border-box;height:var(--studio-ruler-h,26px);border-bottom:1px solid var(--border-mute);font:500 10px/1 var(--ui);letter-spacing:.14em;color:var(--text-4);flex:none;align-items:center;padding:0 12px;display:flex}.studio-timeline-row{box-sizing:border-box;height:calc(var(--studio-row-h) + var(--studio-row-gap));background:var(--bg);border-bottom:var(--studio-row-gap) solid var(--border-mute);flex:none;grid-template-columns:4px minmax(0,1fr) 10px;gap:10px;min-width:0;padding:10px 10px 10px 0;display:grid}.studio-timeline-row.armed{background:var(--panel-accent)}.studio-lane-hue{background:var(--lane-hue,var(--clip-1));border-radius:0 2px 2px 0}.studio-lane-main{flex-direction:column;justify-content:space-between;min-width:0;display:flex}.studio-lane-top,.studio-lane-bottom{align-items:center;gap:4px;min-width:0;display:flex}.studio-lane-top{gap:6px}.studio-lane-num{font:600 10px/1 var(--ui);color:var(--text-4);font-variant-numeric:tabular-nums;flex:none}.studio-track-name{min-width:0;color:var(--text);font:500 12px/1.2 var(--ui);background:0 0;border:1px solid #0000;border-radius:4px;flex:auto;padding:2px 4px}.studio-track-name:hover{border-color:var(--border)}.studio-track-name:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.studio-lane-menu .studio-menu-button{width:24px;height:22px;color:var(--text-4);font:600 13px/1 var(--ui);background:0 0;border-color:#0000;justify-content:center;padding:0}.studio-lane-menu .studio-menu-button:hover,.studio-lane-menu .studio-menu-button.is-on{border-color:var(--border-strong);background:var(--panel-2);color:var(--text)}.studio-lane-menu .studio-menu-panel{min-width:180px;left:auto;right:0}.studio-menu-item:disabled{opacity:.45;cursor:default}.studio-arm,.studio-solo,.studio-timeline-row .stem-mute{border:1px solid var(--border-strong);background:var(--panel-2);width:24px;height:24px;color:var(--text-2);font:600 10px/1 var(--ui);cursor:pointer;border-radius:5px;flex:none;padding:0}.studio-arm{color:var(--text-4);font-weight:700}.studio-arm:hover:not(:disabled),.studio-solo:hover:not(:disabled),.studio-timeline-row .stem-mute:hover:not(:disabled){border-color:var(--bar);color:var(--text)}.studio-arm.on,.studio-solo.on,.studio-timeline-row .stem-mute.muted{border-color:var(--accent-border);background:var(--accent-fill);color:var(--accent)}.studio-arm:disabled,.studio-solo:disabled,.studio-timeline-row .stem-mute:disabled{opacity:.4;cursor:not-allowed}.studio-track-level{flex:auto;align-items:center;min-width:40px;margin:0 2px 0 6px;display:flex}.studio-track-level input{width:100%;min-width:0;height:20px}.studio-lane-db{text-align:right;width:34px;font:400 10px/1 var(--ui);color:var(--text-3);font-variant-numeric:tabular-nums;flex:none}.studio-lane-meter{background:var(--page-ground);border-radius:2px;position:relative;overflow:hidden}.studio-lane-meter-fill{background:linear-gradient(0deg, var(--bar) 0%, var(--bar) 70%, var(--accent) 100%);height:0;position:absolute;bottom:0;left:0;right:0}.studio-track-local{font:400 9px/1.2 var(--ui);color:var(--text-4);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.studio-lanes{flex-direction:column;min-width:0;display:flex}.studio-timeline-box{min-width:0;overflow:hidden}.studio-timeline-box canvas{touch-action:pan-y;display:block}.studio-minimap{margin:10px}.studio-minimap canvas{cursor:zoom-in;-webkit-user-select:none;user-select:none;touch-action:none;width:100%;display:block}.studio-timeline-hint{max-width:74ch;font:400 10px/1.4 var(--ui);color:var(--text-4);margin:0}.studio-minimap-hint{font:400 10px/1.4 var(--ui);color:var(--text-4);margin:4px 0 0}.studio-status{background:var(--page-ground);border-top:1px solid var(--border-mute);border-radius:0 0 var(--radius-panel) var(--radius-panel);min-height:26px;font:400 10px/1.3 var(--ui);color:var(--text-4);flex-wrap:wrap;align-items:center;gap:4px 14px;padding:5px 12px;display:flex}.studio-status-input{letter-spacing:.1em;align-items:center;gap:6px;font-weight:600;display:inline-flex}.studio-status-input.is-live,.studio-status-input.is-recording{color:var(--accent)}.studio-status-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.studio-status-note{font-variant-numeric:tabular-nums;min-width:0}.studio-status-keys{flex-wrap:wrap;gap:4px 14px;margin-left:auto;display:flex}@media (width<=900px),(pointer:coarse){.studio{gap:16px;padding-bottom:40px}.studio-title{font-size:24px}.studio-timeline{grid-template-columns:1fr}.studio-timeline-controls{border-right:none;border-bottom:1px solid var(--border)}.studio-status-keys,.studio-clip-bar-esc{display:none}.studio-bar-centre{flex-wrap:wrap}.studio-bar{justify-content:flex-start}}@media print{@page{size:A4 landscape;margin:12mm}body{color:#000;background:#fff}.sidebar,.topbar,.transport-dock,.update-bar,.tab-editor-head,.tab-panel-head,.tab-grid,.tab-palette,.tab-meta-grid,.tab-setup,.tab-list,.tab-empty,.tab-player{display:none}.tab-print-only{display:block}.app-shell,.content,.tab-editor,.tab-panel-output{background:#fff;border:none;max-width:none;margin:0;padding:0;display:block}.tab-panel:not(.tab-panel-output){display:none}.tab-sheet{background:#fff;border:none;padding:0}.tab-sheet-title,.tab-sheet-system,.tab-sheet-comments,.tab-sheet-notes p,.tab-sheet-legend strong{color:#000}.tab-sheet-performer,.tab-sheet-legend dt{color:#333}.tab-sheet-facts,.tab-sheet-legend dd,.tab-sheet-foot{color:#444}.tab-sheet-system{white-space:pre-wrap;font-size:10.5px;line-height:1.5;overflow-x:visible}.tab-sheet-legend,.tab-sheet-foot{break-inside:avoid}}.stem-loading{font-family:var(--ui);color:var(--text-2);margin:6px 0 0;font-size:12px}.upload-note{font:400 11px/1.4 var(--ui);color:var(--text-2);margin:4px 0 0}.upload-note-spent{color:var(--accent)}.song-loading{min-height:320px;padding:60px var(--gutter);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.song-loading-spinner{border-width:3px;width:26px;height:26px}.song-loading-lead{font-family:var(--display);letter-spacing:.01em;color:var(--text);margin:0;font-size:20px}.song-loading-hint{font:400 12px/1.5 var(--ui);color:var(--text-2);margin:0}.audio-sources{margin-top:14px}.audio-sources-toggle{cursor:pointer;font-family:var(--ui);color:var(--text-2);letter-spacing:.02em;background:0 0;border:none;padding:4px 0;font-size:12px}.audio-sources-toggle:hover{color:var(--text)}.audio-sources-body{border:1px solid var(--border);background:var(--panel-2);font-family:var(--ui);color:var(--text-2);border-radius:8px;margin-top:8px;padding:14px 16px;font-size:12px;line-height:1.65}.audio-sources-body p{margin:0 0 10px}.audio-sources-body ul{margin:0 0 10px;padding-left:18px}.audio-sources-body li{margin-bottom:6px}.audio-sources-body strong{color:var(--text);font-weight:600}.audio-sources-note{border-top:1px solid var(--border);color:var(--text-3,var(--text-2));padding-top:8px;margin-bottom:0!important}.studio-fades{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.studio-fade{font:400 11px/1 var(--ui);color:var(--text-2);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.studio-fade input[type=range]{width:140px}.studio-fade-name{width:230px;max-width:100%}.studio-fade-value{font-variant-numeric:tabular-nums;min-width:52px;color:var(--text-3)}.studio-fades-hint{font:400 11px/1.5 var(--ui);color:var(--text-4);flex-basis:100%}.studio-clip-panel{background:var(--panel);border-top:1px solid var(--border-strong);flex-direction:column;display:flex}.studio-clip-bar{border-bottom:1px solid var(--border);min-height:38px;font:400 11px/1 var(--ui);color:var(--text-2);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:6px 14px;display:flex}.studio-clip-swatch{border-radius:2px;flex:none;width:10px;height:10px}.studio-clip-bar-esc{font:400 10px/1 var(--ui);color:var(--text-4);margin-left:auto}.studio-clip-bar-label{letter-spacing:.14em;color:var(--accent);font-weight:500}.studio-clip-bar-name{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.studio-clip-close{border:1px solid var(--border-strong);width:26px;height:26px;color:var(--text-2);font:400 11px/1 var(--ui);cursor:pointer;background:0 0;border-radius:6px;flex:none}.studio-clip-body{grid-template-columns:1fr 1.4fr 1fr 1fr;display:grid}@media (width<=1240px){.studio-clip-body{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}.studio-clip-group{border-right:1px solid var(--border-mute);flex-direction:column;gap:10px;min-width:0;padding:14px;display:flex}.studio-clip-group:last-child{border-right:none}.studio-clip-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.studio-clip-grid .studio-clip-move{grid-column:1/-1}.studio-clip-delete{color:var(--text-3);background:0 0;margin-top:auto}.studio-clip-group-next{margin-top:8px}.studio-clip-row{font:400 11px/1 var(--ui);color:var(--text-2);justify-content:space-between;align-items:center;gap:8px;display:flex}.studio-nudge{border:1px solid var(--border-strong);background:var(--panel-2);border-radius:6px;height:28px;display:flex;overflow:hidden}.studio-nudge-step{width:28px;color:var(--text-2);font:500 12px/1 var(--ui);cursor:pointer;background:0 0;border:none;padding:0}.studio-nudge-step:hover:not(:disabled){color:var(--text)}.studio-nudge-step:disabled{opacity:.4;cursor:default}.studio-nudge-value{border-left:1px solid var(--border);border-right:1px solid var(--border);font-variant-numeric:tabular-nums;min-width:58px;color:var(--text);justify-content:center;align-items:center;display:flex}.studio-clip-key{font:400 9px/1 var(--ui);color:var(--text-4);margin-left:8px}.studio-clip-group .studio-fade{grid-template-columns:76px minmax(0,1fr) 52px;gap:10px;width:100%;display:grid}.studio-clip-group .studio-fades{align-items:stretch}.studio-clip-group .studio-fade-name{width:auto;line-height:1.3}.studio-clip-group .studio-fade input[type=range]{width:100%;min-width:0}.studio-clip-group .studio-fade-value{text-align:right;min-width:0}.studio-clip-group-title{font:500 10px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin:0}.studio-clip-action{border:1px solid var(--border-strong);background:var(--panel-2);height:28px;color:var(--text-2);font:500 11px/1 var(--ui);white-space:nowrap;cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;padding:0 10px;display:inline-flex}.studio-clip-action:hover:not(:disabled){border-color:var(--bar);color:var(--text)}.studio-clip-action.is-on{border-color:var(--accent-border);background:var(--accent-fill);color:var(--accent)}.studio-clip-action:disabled{opacity:.45;cursor:default}.studio-clip-sound,.studio-clip-details{flex-direction:column;gap:10px;display:flex}.studio-clip-actions{flex-wrap:wrap;gap:8px;display:flex}.studio-clip-hint{font:400 11px/1.5 var(--ui);color:var(--text-4);margin:0}.studio-clip-bar-length{font:400 11px/1 var(--ui);color:var(--text-3);flex:none}.studio-clip-name{box-sizing:border-box;background:var(--panel-2);border:1px solid var(--border);width:220px;min-width:0;max-width:100%;height:26px;color:var(--text);font:400 11px/1 var(--ui);border-radius:6px;flex:0 220px;padding:0 8px}.studio-clip-name:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.studio-clip-facts{font:400 11px/1.4 var(--ui);grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;display:grid}.studio-clip-facts dt{color:var(--text-4)}.studio-clip-facts dd{color:var(--text-2);font-variant-numeric:tabular-nums;margin:0}.lesson-narration{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);flex-wrap:wrap;align-items:center;gap:10px 12px;max-width:520px;margin:2px 0 18px;padding:10px 14px;display:flex}.lesson-narration-play{background:var(--accent);width:38px;height:38px;color:var(--on-accent);font:500 13px/1 var(--ui);cursor:pointer;border:none;border-radius:50%;flex:none}.lesson-narration-play:disabled{opacity:.6;cursor:default}.lesson-narration-track{flex-direction:column;flex:180px;gap:4px;min-width:0;display:flex}.lesson-narration-track input[type=range]{width:100%}.lesson-narration-time{font:400 11px/1 var(--ui);font-variant-numeric:tabular-nums;color:var(--text-3)}.lesson-narration-again{border:1px solid var(--border);width:30px;height:30px;color:var(--text-2);font:400 13px/1 var(--ui);cursor:pointer;background:0 0;border-radius:50%;flex:none}.lesson-narration-again:disabled{opacity:.4;cursor:default}.lesson-narration-auto{font:400 11px/1.4 var(--ui);color:var(--text-3);cursor:pointer;flex-basis:100%;align-items:center;gap:6px;display:flex}.studio-delay{flex-wrap:wrap}.studio-delay-step{border:1px solid var(--border);width:26px;height:26px;color:var(--text-2);font:400 13px/1 var(--ui);cursor:pointer;background:0 0;border-radius:50%}.studio-delay-step:disabled{opacity:.4;cursor:default}.studio-delay-value{text-align:center;font-variant-numeric:tabular-nums;min-width:58px;color:var(--text)}.studio-delay-note{color:var(--text-4)}.studio-tempo{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.studio-tempo-join{border:1px solid var(--border-strong);background:var(--panel-2);border-radius:6px;align-items:stretch;height:28px;display:flex;overflow:hidden}.studio-tempo-bpm{width:44px;color:var(--text);font:600 12px/1 var(--ui);font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:none;padding:0 4px 0 10px}.studio-tempo-bpm::-webkit-inner-spin-button{appearance:none;margin:0}.studio-tempo-bpm::-webkit-outer-spin-button{appearance:none;margin:0}.studio-tempo-unit{font:400 9px/1 var(--ui);color:var(--text-4);align-items:center;padding-right:8px;display:flex}.studio-tempo-metre{font:400 11px/1 var(--ui);padding:3px 4px}.studio-tempo-join .studio-tempo-metre,.studio-tempo-join .studio-clip-action{border:none;border-left:1px solid var(--border);height:auto;color:var(--text-2);background:0 0;border-radius:0}.studio-tempo-join .studio-tempo-metre{padding:0 6px}.studio-clip-repeat{align-items:center;gap:4px;min-width:0;display:flex}.studio-clip-repeat .studio-clip-action{flex:auto}.practice-voice-type{flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0 0 8px;display:flex}.practice-voice-type-label{font:500 10px/1 var(--ui);letter-spacing:.14em;color:var(--text-3);flex-basis:100%}.practice-voice-type-name{font:600 30px/1.1 var(--display);color:var(--accent)}.practice-voice-type-range{font:400 12px/1 var(--ui);color:var(--text-3)}.landing-stores{flex-direction:column;align-items:center;gap:12px;margin:28px 0 8px;display:flex}.landing-stores-title{font:500 11px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin:0}.landing-stores-row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.landing-store{background:var(--panel-glass);border:1px solid var(--border);min-width:168px;color:var(--text);border-radius:12px;align-items:center;gap:10px;padding:9px 16px 9px 12px;display:inline-flex}.landing-store-icon{flex:none;width:26px;height:26px}.landing-store-text{flex-direction:column;gap:3px;display:flex}.landing-store-soon{font:500 9px/1 var(--ui);letter-spacing:.14em;color:var(--accent)}.landing-store-name{font:600 17px/1 var(--display);letter-spacing:.02em}.guitar-practice-neck{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);flex-wrap:wrap;align-items:center;gap:16px 28px;padding:16px 18px;display:flex}.guitar-practice-neck .fig-neck-wrap{flex:420px;min-width:0;overflow-x:auto}.guitar-practice-now{flex-direction:column;flex:140px;align-items:center;gap:6px;min-width:140px;display:flex}.guitar-practice-next,.guitar-practice-count{font:500 44px/1 var(--display);color:var(--accent)}.guitar-practice-count{color:var(--text-2)}.guitar-practice-where{font:400 12px/1.3 var(--ui);color:var(--text-2)}.guitar-practice-heard{min-height:14px;font:400 11px/1.3 var(--ui);color:var(--text-4)}.guitar-practice-tab{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-panel);font:500 12px/1 var(--mono);flex-direction:column;padding:12px 14px;display:flex;overflow-x:auto}.guitar-practice-tab-row{background:linear-gradient(var(--border-mute), var(--border-mute)) 0 50% / 100% 1px no-repeat;align-items:center;height:20px;display:flex}.guitar-practice-tab-name{background:var(--panel-2);width:20px;color:var(--text-4);flex:none}.guitar-practice-tab-cell{text-align:center;width:26px;color:var(--text-2);flex:none}.guitar-practice-tab-cell.is-pending,.guitar-practice-tab-cell.is-current,.guitar-practice-tab-cell.is-hit,.guitar-practice-tab-cell.is-wrong,.guitar-practice-tab-cell.is-missed{background:var(--panel-2);border-radius:4px;padding:2px 0}.guitar-practice-tab-cell.is-current{background:var(--accent);color:var(--on-accent)}.guitar-practice-tab-cell.is-hit{color:var(--ok-text);background:var(--ok-fill)}.guitar-practice-tab-cell.is-wrong{color:var(--bad-text);background:var(--bad-fill)}.guitar-practice-tab-cell.is-missed{color:var(--text-4);text-decoration:line-through}.guitar-practice-summary{font:400 12px/1.5 var(--ui);color:var(--text-2);flex-direction:column;gap:4px;display:flex}.guitar-practice-summary p{margin:0}.guitar-practice-wrong{color:var(--text-3)}.guitar-practice-input{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.guitar-practice-input .practice-hint{flex-basis:100%;margin:0}.guitar-practice-level{background:var(--panel-2);border:1px solid var(--border);border-radius:3px;width:120px;height:6px;position:relative;overflow:hidden}.guitar-practice-level span{background:var(--accent);position:absolute;inset:0 auto 0 0}.guitar-path{flex-direction:column;gap:22px;margin:0;padding:0;list-style:none;display:flex}.guitar-path-section{flex-direction:column;gap:8px;display:flex}.guitar-path-title{font:500 18px/1.2 var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--text);margin:0}.guitar-path-desc{max-width:70ch;font:400 12px/1.5 var(--ui);color:var(--text-3);margin:0}.guitar-path-steps{flex-wrap:wrap;gap:8px;display:flex}.guitar-path-step{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--panel-2);color:var(--text-2);font:500 12px/1 var(--ui);cursor:pointer;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.guitar-path-step:hover{border-color:var(--bar);color:var(--text)}.guitar-path-step.is-done{border-color:var(--ok-border);color:var(--text)}.guitar-path-step.is-chosen{border-color:var(--accent-border);background:var(--accent-fill);color:var(--accent)}.guitar-path-tick{border:1px solid var(--border-strong);width:16px;height:16px;font:600 9px/1 var(--ui);color:var(--text-3);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.guitar-path-step.is-done .guitar-path-tick,.guitar-stage-tab.is-done .guitar-path-tick{border-color:var(--ok-border);background:var(--ok-fill);color:var(--ok-text)}.guitar-path-part{font:400 10px/1 var(--ui);color:var(--text-4)}.guitar-stage-tabs{flex-wrap:wrap;gap:8px;display:flex}.guitar-stage-tab{border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--panel-2);color:var(--text-2);font:500 12px/1 var(--ui);cursor:pointer;align-items:center;gap:8px;padding:8px 14px;display:inline-flex}.guitar-stage-tab.is-on{border-color:var(--accent-border);background:var(--accent-fill);color:var(--accent)}.guitar-run{flex-direction:column;gap:18px;display:flex}.guitar-practice-overview{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);padding:16px 18px;overflow-x:auto}.guitar-practice-verdict{font:600 13px/1.3 var(--ui);text-align:center}.guitar-practice-verdict.is-good{color:var(--ok-text)}.guitar-practice-verdict.is-off{color:var(--bad-text)}.guitar-practice-note{font:500 12px/1.5 var(--ui);color:var(--text-2);margin:0}.guitar-lesson-about{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);max-width:78ch;font:400 13px/1.6 var(--ui);color:var(--text-2);flex-direction:column;gap:10px;padding:16px 18px;display:flex}.guitar-lesson-about p{margin:0}.guitar-lesson-about strong{color:var(--text)}.guitar-lesson-tip{border-left:2px solid var(--accent-border);color:var(--text-3);padding-left:10px}.guitar-lesson-legend{font:400 11px/1.4 var(--ui);color:var(--text-3);flex-wrap:wrap;align-items:center;gap:6px 10px;margin:12px 0 0;display:flex}.guitar-lesson-swatch{border-radius:50%;width:12px;height:12px;margin-left:6px;display:inline-block}.guitar-lesson-swatch.is-pos{background:var(--accent)}.guitar-lesson-swatch.is-root{background:var(--accent);box-shadow:0 0 0 2px var(--text)}.guitar-lesson-swatch.is-rest{background:var(--panel);border:1.5px solid var(--text-2);opacity:.6}.guitar-path-step.is-intro{border-style:dashed}.plan-request-sent{border:1px solid var(--ok-border);border-radius:var(--radius-control);background:var(--ok-fill);font:500 12px/1.4 var(--ui);color:var(--ok-text);margin:0;padding:10px 12px}.plan-request-failed{font:400 11px/1.4 var(--ui);color:var(--bad-text);margin:6px 0 0}.feedback-actions{flex-wrap:wrap;align-items:center;gap:12px 18px;display:flex}.feedback-action{text-decoration:none}
