:root{--bg:#f4f5f7;--fg:#1b1f27;--panel:#fff;--panel-alt:#fafbfc;--border:#dfe3e8;--border-strong:#c8ceda;--muted:#5e6775;--muted-2:#5b6472;--header-bg:#1b1f27;--header-fg:#fff;--header-tag:#9aa3b2;--header-btn-fg:#d6dae2;--header-btn-border:#3d4452;--header-btn-hover:#2a303c;--accent:#2563eb;--on-accent:#fff;--accent-strong:#1e3a8a;--accent-soft:#f2f7ff;--accent-soft-border:#d5e3f7;--sync-lane-bg:#eef4fe;--btn-hover:#eef1f5;--focus:#1d4ed8;--score-bg:#fff;--base-font:16px;--ctl-h:clamp(2rem, 1.7rem + 1vw, 2.25rem);--ctl-radius:6px;--ctl-gap:8px;--zone-gap:16px;--label-size:.625rem;--label-track:.04em}:root[data-theme=dark]{--bg:#14171d;--fg:#e6e9ef;--panel:#1b1f27;--panel-alt:#21262f;--border:#2c333e;--border-strong:#3a4250;--muted:#8b93a3;--muted-2:#a3abbb;--header-bg:#0e1116;--header-fg:#f3f5f9;--header-tag:#8b93a3;--header-btn-fg:#c9d0dc;--header-btn-border:#3a4250;--header-btn-hover:#262c36;--accent:#4f8cff;--on-accent:#0c1526;--accent-strong:#7aa8ff;--accent-soft:#1a2130;--accent-soft-border:#2c3a52;--sync-lane-bg:#1a2130;--btn-hover:#262c36;--focus:#7aa8ff;--score-bg:#f4f5f7}:root[data-theme=contrast]{--bg:#000;--fg:#fff;--panel:#000;--panel-alt:#0a0a0a;--border:#fff;--border-strong:#fff;--muted:#e0e0e0;--muted-2:#f0f0f0;--header-bg:#000;--header-fg:#fff;--header-tag:#ff0;--header-btn-fg:#fff;--header-btn-border:#fff;--header-btn-hover:#333;--accent:#ff0;--accent-strong:#ff0;--accent-soft:#000;--accent-soft-border:#fff;--sync-lane-bg:#111;--btn-hover:#333;--focus:#ff0;--score-bg:#fff;--on-accent:#000}*{box-sizing:border-box}html{font-size:var(--base-font)}body{background:var(--bg);color:var(--fg);margin:0;font-family:Noto Sans Variable,Noto Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}button,input,select,textarea{font-family:inherit}.app{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.app>.header,.app>.toolbar,.app>.edit-band,.app>.edit-toolbar,.app>.edit-status,.app>.tracks,.app>.panel,.app>.sync-bar,.app>.footer,.app>.stand-controls{flex-shrink:0}.header{background:var(--header-bg);color:var(--header-fg);align-items:baseline;gap:12px;padding:12px 20px;display:flex}.header h1{letter-spacing:.5px;margin:0;font-size:1.125rem}.wordmark-home{font:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0}.wordmark-home:hover{opacity:.75}.wordmark-home:focus-visible{outline:2px solid var(--accent,#2445c6);outline-offset:3px}.tagline{color:var(--header-tag);font-size:.8125rem}.save-status{color:var(--header-tag);opacity:.85;white-space:nowrap;align-items:center;gap:5px;font-size:.75rem;display:inline-flex}.save-status:before{content:"✓";color:#4a9e63;font-size:.72rem}.save-status.saving{opacity:.6}.save-status.saving:before{content:"⟳";color:var(--header-tag)}@media (width<=640px){.save-status{display:none}}.header-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.header-button,.header-select{min-height:var(--ctl-h);border:1px solid var(--header-btn-border);color:var(--header-btn-fg);cursor:pointer;background:0 0;border-radius:6px;padding:4px 12px;font-size:.8125rem}.header-button:hover{background:var(--header-btn-hover)}.header-button input{display:none}.toolbar{z-index:30;background:var(--panel);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px 14px;padding:10px 20px;display:flex;position:sticky;top:0}.toolbar button{min-width:44px;min-height:var(--ctl-h);border:1px solid var(--border-strong);background:var(--panel);color:var(--fg);cursor:pointer;border-radius:6px;padding:6px 14px;font-size:.875rem}.toolbar button:hover:not(:disabled):not(.on){background:var(--btn-hover)}.toolbar button.on:hover:not(:disabled){filter:brightness(1.08)}.toolbar button:disabled{opacity:.5;cursor:default}.control{align-items:center;gap:6px;font-size:.8125rem;display:inline-flex}.position{font-variant-numeric:tabular-nums;color:var(--muted-2);font-size:.8125rem}.open-file{border:1px dashed var(--border-strong);cursor:pointer;border-radius:6px;margin-left:auto;padding:6px 12px}.open-file input{display:none}.tracks{background:var(--panel-alt);border-bottom:1px solid var(--border);gap:16px;padding:8px 20px;font-size:.8125rem;display:flex}.track{align-items:center;gap:10px;display:inline-flex}.recording{border-bottom:1px solid var(--border);background:var(--panel-alt)}.video-wrap{width:100%;max-width:480px;margin:10px 12px;position:relative}.video-wrap.large{max-width:760px}.video-controls{justify-content:flex-end;gap:6px;margin-top:4px;display:flex}.video-host{aspect-ratio:16/9;background:#000;border-radius:8px;width:100%;overflow:hidden}.video-host iframe{border:0;width:100%;height:100%;display:block}.video-wrap.video-off .video-host{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.video-note{max-width:60ch;margin:0 12px 8px}.workspace{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex}.workspace>.video-wrap{margin:10px 12px}@media (width>=1000px){.workspace{flex-direction:row;align-items:stretch;gap:4px}.workspace>.video-wrap{flex:0 0 340px;align-self:flex-start;width:340px;margin:10px 4px 10px 12px;position:sticky;top:8px}.workspace>.video-wrap.large{flex-basis:520px;width:520px}.workspace>.video-wrap.video-off{flex:none;width:auto}.workspace>.score{flex:1 1 0;min-width:0}}.rec-empty{flex-direction:column;gap:10px;padding:16px 14px;display:flex}.rec-empty p{max-width:54ch;margin:0}.rec-empty-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.mini-transport{border-right:1px solid var(--border);align-items:center;gap:8px;margin-right:4px;padding-right:10px;display:inline-flex}.add-menu{flex-direction:column;min-width:210px;display:flex}.add-menu-item{text-align:left;cursor:pointer;width:100%;font:inherit;color:var(--text);white-space:nowrap;background:0 0;border:0;border-radius:5px;padding:8px 12px;display:block}.add-menu-item:hover{background:var(--panel-alt)}.add-menu-item input[type=file]{display:none}.recording-toolbar{align-items:center;gap:var(--zone-gap);color:var(--fg);flex-wrap:wrap;padding:8px 20px;font-size:.8125rem;display:flex}.rtb-group{align-items:center;gap:var(--ctl-gap);background:color-mix(in srgb, var(--panel) 90%, var(--accent));border:1px solid var(--accent-soft-border);border-radius:8px;flex-wrap:nowrap;flex-shrink:0;padding:3px 8px;display:inline-flex}.rtb-field{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.seg-stepper{height:var(--ctl-h);border:1px solid var(--border-strong);border-radius:var(--ctl-radius);align-items:stretch;display:inline-flex;overflow:hidden}.recording-toolbar .seg-stepper button,.seg-stepper button{background:var(--panel);min-width:26px;min-height:auto;color:var(--fg);cursor:pointer;border:0;border-radius:0;padding:0 6px}.recording-toolbar .seg-stepper button:hover:not(:disabled),.seg-stepper button:hover:not(:disabled){background:var(--btn-hover)}.recording-toolbar .seg-stepper button:disabled,.seg-stepper button:disabled{opacity:.4;cursor:default}.seg-value{border-left:1px solid var(--border-strong);border-right:1px solid var(--border-strong);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;min-width:30px;padding:0 4px;display:inline-flex}.recording-toolbar button,.sync-bar button{min-height:var(--ctl-h);border:1px solid var(--border-strong);background:var(--panel);color:var(--fg);cursor:pointer;border-radius:6px;padding:4px 12px;font-size:.8125rem}.sync-bar .btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.recording-toolbar .open-file{margin-left:0}.recording-toolbar select,.sync-bar select,.toolbar select{min-height:var(--ctl-h);background:var(--panel);color:var(--fg);border:1px solid var(--border-strong);border-radius:6px}.hint{color:var(--muted);font-size:max(.8125rem,13px)}.wave-scroll{overflow:auto hidden}.wave-content{position:relative}.waveform{cursor:crosshair;touch-action:none;width:100%;height:96px;display:block}.zoom-controls{gap:4px}.zoom-controls button{min-width:var(--ctl-h);min-height:var(--ctl-h);padding:2px 6px}.loop-range{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap;min-width:11ch}.rtb-reps{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.sync-lane{background:var(--sync-lane-bg);border-top:1px solid var(--accent-soft-border);height:22px;position:relative}.sync-marker{color:#fff;text-align:center;cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none;background:#2563eb;border-radius:4px;min-width:18px;height:19px;padding:0 4px;font-size:11px;line-height:19px;position:absolute;top:1px;transform:translate(-50%)}.sync-marker.dragging{z-index:2;background:#1e3a8a}.sync-marker:hover{z-index:1}.sync-marker.conf-good{background:#2563eb}.sync-marker.conf-fair{background:#b45309}.sync-marker.conf-poor{background:#dc2626}.sync-marker.conf-fair:after,.sync-marker.conf-poor:after{color:inherit;background:var(--panel,#fff);border-radius:2px;padding:1px;font-size:9px;line-height:1;position:absolute;top:-7px;right:-5px}.sync-marker.conf-fair:after{content:"▲";color:#b45309}.sync-marker.conf-poor:after{content:"✕";color:#dc2626}.sync-legend{color:var(--muted);gap:12px;padding:4px 20px;font-size:.6875rem;display:flex}.sync-status-cluster{margin-left:auto}.sync-subgroup{border:1px solid var(--accent-soft-border);border-radius:var(--ctl-radius);align-items:center;gap:8px;padding:2px 8px;display:inline-flex}.sync-legend .lg-good{color:#2563eb}.sync-legend .lg-fair{color:#b45309}.sync-legend .lg-poor{color:#dc2626}.sync-bar{color:var(--fg);background:var(--accent-soft);border-bottom:1px solid var(--accent-soft-border);flex-wrap:wrap;align-items:center;gap:14px;padding:8px 20px;font-size:.8125rem;display:flex}.tap-button{color:var(--focus);font-weight:600;border-color:var(--accent)!important}.score{background:var(--score-bg);isolation:isolate;flex:1;min-width:0;min-height:0;padding-bottom:30vh;overflow:auto}.footer{color:var(--muted);align-items:baseline;gap:16px;padding:10px 20px;font-size:.75rem;display:flex}.footer-tip{flex:1;min-width:0}.footer-colophon{color:var(--muted);white-space:nowrap;font-variant:small-caps;letter-spacing:.02em}@media (width<=560px){.footer-colophon{display:none}}.bars-input{min-height:var(--ctl-h);border:1px solid var(--border-strong);background:var(--panel);color:var(--fg);border-radius:6px;width:84px;padding:4px 8px;font-size:.8125rem}.navigate .bars-input{width:clamp(112px,20vw,150px)}.speed-control{align-items:center;gap:var(--ctl-gap);display:inline-flex;position:relative}button.speed-value{font-variant-numeric:tabular-nums;cursor:pointer;justify-content:center;align-items:center;gap:5px;min-width:42px;display:inline-flex}.speed-caret{color:var(--muted);font-size:.7em}.speed-slider{width:100%;accent-color:var(--accent)}.speed-menu{z-index:30;flex-direction:column;gap:8px;min-width:200px;padding:10px;display:flex;position:absolute;top:calc(100% + 6px);left:0}.speed-presets{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.speed-preset{font-variant-numeric:tabular-nums;padding:5px 6px}.speed-preset.on{background:var(--accent-soft);border-color:var(--accent-soft-border)}.popover-panel .speed-preset{text-align:center;justify-content:center;min-width:0;padding:6px 4px;font-size:13px}.speed-numeric{align-items:center;gap:6px;font-size:13px;display:flex}.speed-numeric input{width:4.5em}.loop-divider{background:var(--border);height:1px;margin:6px 0 2px}.section-stepper{align-items:center;gap:2px;display:inline-flex}.section-readout{font-variant-numeric:tabular-nums;text-align:center;min-width:3em;color:var(--muted);font-size:13px}.ramp-config{flex-direction:column;gap:6px;display:flex}.ramp-config .num-input{margin:0 4px}.transport-scrubber{background:var(--accent-soft);border:1px solid var(--accent-soft-border);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:5px;align-items:center;min-width:118px;height:26px;padding:0 9px;display:flex;position:relative;overflow:hidden}.transport-scrubber .scrub-fill{background:color-mix(in srgb, var(--accent) 24%, transparent);pointer-events:none;position:absolute;top:0;bottom:0;left:0}.transport-scrubber .position{z-index:1;white-space:nowrap;position:relative}.transport-scrubber:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.toast{background:var(--header-bg);color:var(--header-fg);border:1px solid var(--border-strong);z-index:50;border-radius:8px;align-items:center;gap:12px;padding:10px 14px;font-size:.8125rem;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000040}.toast button{border:1px solid var(--border-strong);min-height:28px;color:var(--header-fg);cursor:pointer;background:0 0;border-radius:5px;padding:3px 10px;font-size:.8125rem}.toast .toast-close{border:none;padding:0 4px;font-size:16px;line-height:1}.restore-banner{background:var(--accent-soft);border-bottom:1px solid var(--accent-soft-border);color:var(--fg);align-items:center;gap:12px;padding:8px 20px;font-size:.8125rem;display:flex}.restore-banner button{border:1px solid var(--border-strong);background:var(--panel);min-height:28px;color:var(--fg);cursor:pointer;border-radius:5px;padding:3px 10px}.autosave-indicator{color:var(--muted);font-size:.75rem}.countin-overlay{z-index:60;pointer-events:none;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.countin-number{color:#fff;text-shadow:0 4px 24px #00000080;font-size:28vh;font-weight:700}.cheatsheet-backdrop{z-index:70;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.cheatsheet{background:var(--panel);color:var(--fg);border-radius:12px;max-width:640px;max-height:80vh;padding:20px 24px;overflow-y:auto;box-shadow:0 8px 40px #00000059}.cheatsheet h2{margin:0 0 12px;font-size:1.125rem}.cheatsheet dl{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;display:grid}.cheatsheet dt{color:var(--accent-strong);white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600}.cheatsheet dd{margin:0}.cheatsheet-section{grid-column:1/-1;margin-top:14px;font-weight:600}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (pointer:coarse){.toolbar button,.recording-toolbar button,.sync-bar button,.header-button,select,.bars-input{min-height:44px}.sync-marker{min-width:28px;height:24px;line-height:24px}.sync-marker:before{content:"";width:44px;height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}}.app.stand-mode .header,.app.stand-mode .toolbar,.app.stand-mode .tracks,.app.stand-mode .recording,.app.stand-mode .sync-bar,.app.stand-mode .footer{display:none}.app.stand-mode .score{padding:8px}.stand-controls{z-index:40;gap:12px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.stand-controls button{border:1px solid var(--border-strong);background:var(--panel);min-height:48px;color:var(--fg);cursor:pointer;border-radius:10px;padding:10px 22px;font-size:1rem;box-shadow:0 4px 16px #0003}.stand-controls .stand-play{min-width:120px;font-weight:600}@media (width<=768px){.header{flex-wrap:wrap;gap:8px;padding:8px 12px}.header-actions{flex-wrap:wrap;width:100%;margin-left:0}.toolbar,.recording-toolbar,.sync-bar{gap:10px;padding:8px 12px}.tagline{display:none}.open-file{margin-left:0}.waveform{height:120px}}.assignment-bar{background:var(--panel-alt);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:6px 20px;font-size:.8125rem;display:flex}.assignment-input{border:1px solid var(--border-strong);background:var(--panel);min-height:30px;color:var(--fg);border-radius:6px;flex:1;padding:4px 8px;font-size:.8125rem}.tour-lede,.tour-verbs li,.tour-demo,.tour-ethos{font-size:1rem;line-height:1.6}.tour-lede{color:var(--fg);margin:0 0 18px}.tour-verbs{margin:0 0 20px;padding-left:0;list-style:none}.tour-verbs li{border-top:1px solid var(--border);color:var(--fg);padding:10px 0}.tour-verbs li:first-child{border-top:0;padding-top:2px}.tour-verbs li:last-child{padding-bottom:2px}.tour-demo{color:var(--muted);margin:0}.tour-ethos{color:var(--muted);margin:4px 0 0}.tour-ethos code{font-size:.95em}.tour-actions{flex-wrap:wrap;align-items:stretch;gap:8px;margin-top:22px;display:flex}.tour-dismiss{min-height:var(--ctl-h);border:1px solid var(--accent);background:var(--accent);color:var(--on-accent,#fff);cursor:pointer;border-radius:6px;align-items:center;padding:6px 16px;font-size:.875rem;font-weight:600;display:inline-flex}.tour-dismiss:hover{filter:brightness(1.06)}@media print{.header,.toolbar,.tracks,.recording,.sync-bar,.assignment-bar,.footer,.toast,.stand-controls{display:none!important}}.icon{flex-shrink:0}.icon-spin{animation:.8s linear infinite ov-spin}@keyframes ov-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.icon-spin{animation:none}}.menubar{align-items:center;gap:2px;margin-left:auto;display:flex}.menu{position:relative}.menu-trigger,.popover-trigger{min-height:var(--ctl-h);color:var(--header-btn-fg);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-size:.8125rem;display:inline-flex}.menu-trigger:hover{background:var(--header-btn-hover)}.menu-caret{opacity:.7;font-size:.7em}.menu-list{z-index:40;background:var(--panel);min-width:220px;color:var(--fg);border:1px solid var(--border-strong);border-radius:8px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 28px #00000047}.menu-heading{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:6px 10px 2px;font-size:.6875rem}.menu-divider{background:var(--border);height:1px;margin:5px 4px}.menu-item{width:100%;color:var(--fg);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:5px;align-items:center;gap:8px;padding:7px 10px;font-size:.8125rem;display:flex}.menu-item:hover:not(:disabled),.menu-item:focus-visible{background:var(--btn-hover)}.menu-item:disabled{opacity:.45;cursor:default}.menu-item-check{width:14px;color:var(--accent)}.menu-item-label{flex:1}.menu-item-shortcut,.palette-shortcut,.menu-item kbd{color:var(--muted);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.6875rem}.popover{display:inline-flex;position:relative}.popover-trigger{border-color:var(--border-strong);color:var(--fg);background:var(--panel)}.popover-trigger.active{border-color:var(--accent);color:var(--focus)}.popover-panel{z-index:30;background:var(--panel);min-width:200px;color:var(--fg);border:1px solid var(--border-strong);border-radius:8px;flex-direction:column;gap:10px;padding:12px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #00000038}.toolbar{gap:0}.tb-zone{align-items:center;gap:8px;padding:0 12px;display:inline-flex;position:relative}.tb-zone:not(:last-child):after{content:"";background:var(--border);width:1px;height:22px;position:absolute;top:50%;right:0;transform:translateY(-50%)}.tb-zone{flex-shrink:0}.tb-zone.tb-transport{padding-left:0}.tb-zone.tb-right{margin-left:auto}.tb-zone.tb-right:after{display:none}.tb-zone.tb-nav{flex-shrink:0}.tb-zone.tb-nav .navigate,.tb-zone.tb-nav .bars-input{min-width:0}.tb-zone-label,.etb-label,.subgroup-label{font-size:var(--label-size);text-transform:uppercase;letter-spacing:var(--label-track);color:var(--muted);white-space:nowrap;margin-right:2px}.btn-primary{min-height:var(--ctl-h);border:1px solid var(--accent);background:var(--accent);color:var(--on-accent,#fff);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 16px;font-size:.875rem;font-weight:600;display:inline-flex}.btn-primary:hover:not(:disabled){filter:brightness(1.06)}.btn-primary:disabled{opacity:.5;cursor:default}.btn-icon{min-width:36px;min-height:var(--ctl-h);border:1px solid var(--border-strong);background:var(--panel);color:var(--fg);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.btn-icon:hover:not(:disabled){background:var(--btn-hover)}.btn-icon.on{border-color:var(--accent);color:var(--focus)}.btn-icon:disabled{opacity:.5;cursor:default}.btn-sm{min-height:var(--ctl-h);border:1px solid var(--border-strong);background:var(--panel);color:var(--fg);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 16px;font-size:.875rem;display:inline-flex}.btn-sm:hover:not(:disabled){background:var(--btn-hover)}.btn-sm:disabled{opacity:.5;cursor:default}.num-input{border:1px solid var(--border-strong);background:var(--panel);width:58px;height:34px;color:var(--fg);font:inherit;text-align:center;font-variant-numeric:tabular-nums;border-radius:6px;padding:2px 4px 2px 8px;font-size:.875rem}.popover-panel button{min-width:0;min-height:34px;padding:6px 12px}.popover-panel .btn-icon{justify-content:center;width:34px;height:34px;padding:6px}.edit-band{background:color-mix(in srgb, var(--accent) 8%, var(--panel));border-bottom:1px solid var(--accent-soft-border);border-left:3px solid var(--accent);flex-wrap:wrap;align-items:center;gap:12px;padding:8px 20px;display:flex}.edit-toolbar{z-index:20;background:color-mix(in srgb, var(--accent) 8%, var(--panel));border-bottom:1px solid var(--accent-soft-border);border-left:3px solid var(--accent);flex-wrap:nowrap;align-items:center;gap:6px;padding:5px 12px;display:flex;position:sticky;top:0}.etb-pinned{scrollbar-width:thin;scroll-snap-type:x proximity;flex-shrink:1;align-items:center;gap:6px;min-width:0;display:flex;overflow-x:auto}.etb-trailing{flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:flex;position:relative}.etb-group{background:color-mix(in srgb, var(--panel) 90%, var(--accent));border:1px solid var(--accent-soft-border);scroll-snap-align:start;border-radius:8px;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:4px;padding:3px 7px;display:inline-flex}.etb-more,.etb-right{position:relative}.etb-btn{border:1px solid var(--border);background:var(--panel);min-width:clamp(2rem,1.7rem + 1vw,2.25rem);height:clamp(2rem,1.7rem + 1vw,2.25rem);color:var(--fg);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0 6px;font-size:.9rem;line-height:1;display:inline-flex}.etb-btn.glyph{font-size:1.15rem}.etb-btn.wide{white-space:nowrap;gap:4px;width:auto;min-width:auto;padding:0 10px;font-size:.8125rem}@media (pointer:coarse){.etb-btn{min-width:48px;height:48px}.etb-select select,.etb-pop-row select{min-height:48px}.etb-group{gap:6px}.etb-btn{font-size:.95rem}}.etb-btn:hover:not(:disabled){background:var(--btn-hover)}.etb-btn:disabled{opacity:.4;cursor:default}.etb-btn.active,.etb-btn[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent,#fff)}.etb-btn.voice-pill.v2:not(.active){color:#15803d;border-color:#15803d}.etb-btn.voice-pill.v3:not(.active){color:#b45309;border-color:#b45309}.etb-btn.voice-pill.v4:not(.active){color:#7e22ce;border-color:#7e22ce}.etb-btn.voice-pill.v5:not(.active){color:#0f766e;border-color:#0f766e}.etb-select{color:var(--muted-2);align-items:center;gap:4px;font-size:.75rem;display:inline-flex}.etb-select select,.etb-pop-row select{height:32px}.etb-popover{z-index:40;background:var(--panel);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;min-width:240px;max-width:min(92vw,360px);max-height:70vh;padding:12px;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 8px 28px #00000047}.etb-more-popover{flex-direction:column;align-items:stretch;min-width:220px}.etb-more-popover .etb-group{flex-wrap:wrap;justify-content:flex-start}.etb-note{position:relative}.note-glyph{font-family:alphaTab,serif;font-size:1.5em;line-height:1;display:inline-block}.keycap{color:var(--muted);background:var(--accent-soft);font-variant-numeric:tabular-nums;border-radius:2px;padding:1px 2px;font-size:8px;line-height:1;position:absolute;bottom:0;right:1px}.etb-btn.active .keycap{color:var(--on-accent,#fff);background:#ffffff40}.etb-more-section{flex-direction:column;gap:4px;padding-bottom:6px;display:flex}.etb-more-section+.etb-more-section{border-top:1px solid var(--border);padding-top:6px}.etb-pop-row{align-items:center;gap:6px;display:flex}.etb-pop-row .etb-label{min-width:62px}.etb-pop-row select{flex:1}@media (width<=560px){.etb-sheet{max-width:none;max-height:76vh;position:fixed;inset:auto 8px 8px}}.edit-status{background:var(--panel-alt);border-bottom:1px solid var(--border);align-items:baseline;gap:12px;padding:5px 20px;font-size:.8125rem;display:flex}.edit-status-what{color:var(--fg);font-weight:600}.edit-status-hint{color:var(--muted)}.edit-coach{background:color-mix(in srgb, var(--accent) 12%, var(--panel));border-bottom:1px solid var(--accent-soft-border);align-items:center;gap:12px;padding:10px 20px;font-size:.8125rem;display:flex}.edit-coach-icon{font-size:1.1rem}.edit-coach kbd{font:inherit;border:1px solid var(--border);background:var(--panel);border-bottom-width:2px;border-radius:4px;padding:1px 5px;font-size:.75rem}.edit-coach .btn-sm{white-space:nowrap;margin-left:auto}.ctx-backdrop{z-index:90;position:fixed;inset:0}.ctx-menu{z-index:91;background:var(--panel);border:1px solid var(--border);border-radius:8px;flex-direction:column;min-width:180px;max-height:80vh;padding:4px;display:flex;position:fixed;overflow-y:auto;box-shadow:0 10px 32px #00000052}.ctx-title{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);padding:6px 10px;font-size:.6875rem}.ctx-menu button{text-align:left;color:var(--fg);cursor:pointer;background:0 0;border:none;border-radius:5px;padding:7px 10px;font-size:.8125rem}.ctx-menu button:hover{background:var(--btn-hover)}.ctx-menu .ctx-danger{color:#d64545}.ctx-sep{background:var(--border);height:1px;margin:4px 6px}@media (width<=560px){.etb-label{font-size:.5625rem}.edit-status{flex-direction:column;gap:2px}}.inspector{align-items:center;gap:10px;font-size:.8125rem;display:flex}.inspector-title{color:var(--muted-2);font-weight:600}.panel{border-bottom:1px solid var(--border);background:var(--panel-alt)}.panel-header{align-items:center;gap:10px;padding:6px 20px;display:flex}.panel-toggle{color:var(--fg);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;font-size:.8125rem;font-weight:600;display:inline-flex}.panel-chevron{width:1em;color:var(--muted);justify-content:center;font-size:.85rem;line-height:1;transition:transform .15s;display:inline-flex}.panel-chevron.open{transform:rotate(90deg)}.panel-actions{align-items:center;gap:8px;display:flex}.panel-body{padding:0 20px 10px}.subgroup{border-right:1px solid var(--border);align-items:center;gap:10px;margin-right:4px;padding-right:12px;display:inline-flex}.subgroup:last-child{border-right:none}.palette-backdrop{z-index:80;background:#0006;justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}.palette{background:var(--panel);width:min(560px,92vw);color:var(--fg);border:1px solid var(--border-strong);border-radius:12px;overflow:hidden;box-shadow:0 16px 48px #0006}.palette-input{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--fg);background:0 0;padding:14px 16px;font-size:1rem}.palette-input:focus{outline:none}.palette-list{max-height:50vh;margin:0;padding:6px;list-style:none;overflow-y:auto}.palette-item{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;display:flex}.palette-item.active{background:var(--btn-hover)}.palette-group{text-transform:uppercase;color:var(--muted);min-width:74px;font-size:.6875rem}.palette-label{flex:1;font-size:.875rem}.palette-empty{color:var(--muted);text-align:center;padding:16px}.empty-state{flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.empty-card{text-align:center;max-width:420px}.empty-card h2{margin:0 0 8px}.empty-card p{color:var(--muted);margin:0 0 20px}.empty-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.mode-toggle{border:1px solid var(--header-btn-border);border-radius:6px;display:inline-flex;overflow:hidden}.mode-toggle button{color:var(--header-btn-fg);cursor:pointer;background:0 0;border:none;padding:5px 12px;font-size:.8125rem}.mode-toggle button.on{background:var(--accent);color:var(--on-accent,#fff)}.score-surface{min-height:100%}.navigate{align-items:center;gap:2px;display:inline-flex}.navigate-menu .menu-trigger{border:1px solid var(--border-strong);background:var(--panel);min-width:28px;color:var(--fg);padding:5px 6px}.navigate-menu .menu-list{left:0;right:auto}.assignment-inline{max-width:320px}.assignment-inline .assignment-input{min-width:160px}.cheatsheet-search{border:1px solid var(--border-strong);background:var(--panel);width:100%;color:var(--fg);border-radius:6px;margin-bottom:12px;padding:8px 10px;font-size:.875rem}.app.closed .toolbar,.app.closed .edit-band,.app.closed .edit-toolbar,.app.closed .edit-status,.app.closed .panel,.app.closed .tracks,.app.closed .score-surface{display:none}.header{flex-wrap:wrap}.menubar{flex-wrap:wrap;justify-content:flex-end}@media (width<=900px){.toolbar{flex-wrap:wrap;row-gap:6px}.tb-zone{flex-wrap:nowrap}.tb-zone.tb-right{margin-left:0}.toolbar .tb-zone-label{display:none}}@media (width<=1120px){.app.advanced .toolbar{flex-wrap:wrap;row-gap:6px}.app.advanced .tb-zone{flex-wrap:nowrap}.app.advanced .tb-zone.tb-right{margin-left:0}.app.advanced .toolbar .tb-zone-label{display:none}}@media (width<=480px){.tb-nav .bars-input{display:none}}.menu-list,.popover-panel{max-width:min(280px,92vw)}.navigate-menu .menu-trigger-label{font-size:.8125rem}.navigate-menu .menu-caret{margin:0 0 0 3px}@media (width<=720px){.navigate-menu .menu-trigger-label{display:none}}.score,.score-surface,.wave-scroll{max-width:100%}.menubar-full{display:contents}.menubar-compact{display:none}@media (width<=600px){.menubar-full{display:none}.menubar-compact{display:inline-flex}}@media (width<=768px){.tb-zone{padding:0 8px}.tb-zone:not(:last-child):after{display:none}.btn-primary{padding:6px 12px}.header,.toolbar{padding:8px 12px}.tb-zone.tb-right{justify-content:space-between;width:100%;margin-left:0}}@media (width<=480px){.header h1{font-size:1rem}.tagline{display:none}.position{font-size:.75rem}}.at-cursor-bar{background:color-mix(in srgb, var(--accent) 22%, transparent)}.at-cursor-beat{background:var(--accent);width:2px}.at-highlight *{fill:var(--accent);stroke:var(--accent)}.source-toggle{border-color:var(--border-strong)}.source-toggle button{color:var(--fg);min-height:var(--ctl-h)}.source-toggle button.on{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent);font-weight:600}.visually-hidden-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.at-selection{display:none}.ov-loop-markers{pointer-events:none;z-index:2;position:absolute;inset:0}.ov-loop-region{box-sizing:border-box;background:color-mix(in srgb, var(--accent) 7%, transparent);border-bottom:2.5px solid var(--accent);position:absolute}.ov-loop-region.at-start{border-left:2.5px solid var(--accent)}.ov-loop-region.at-end{border-right:2.5px solid var(--accent)}.ov-note-highlight-layer{pointer-events:none;z-index:3;position:absolute;inset:0}.ov-note-highlight{box-sizing:border-box;background:color-mix(in srgb, var(--accent) 18%, transparent);border:1.5px solid var(--accent);border-radius:4px;position:absolute}.app.note-input .ov-note-highlight{background:color-mix(in srgb, var(--accent) 28%, transparent);border-width:2px;animation:1s ease-in-out infinite ov-caret-pulse}@keyframes ov-caret-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.app.note-input .ov-note-highlight{animation:none}}.prompt-backdrop{z-index:100;background:#00000059;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.prompt-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:12px;min-width:320px;max-width:92vw;padding:18px;display:flex;box-shadow:0 10px 40px #00000040}.prompt-label{flex-direction:column;gap:6px;font-weight:600;display:flex}.prompt-input{border:1px solid var(--border-strong);font:inherit;border-radius:6px;padding:8px 10px;font-weight:400}.prompt-preview{color:var(--muted);font-size:13px}.prompt-actions{justify-content:flex-end;gap:8px;display:flex}.chord-card{min-width:300px}.chord-diagram-edit{align-items:flex-start;gap:16px;display:flex}.chord-fret-control{flex-direction:column;align-items:flex-start;gap:10px;font-size:13px;display:flex}.fret-stepper{align-items:center;gap:6px;display:inline-flex}.fret-stepper .btn-icon{width:30px;min-width:30px;height:30px;min-height:30px;padding:0}.chord-fret-num{font-variant-numeric:tabular-nums;text-align:center;min-width:1.6em}.chord-fret-control .hint{max-width:15ch}.chord-editor .chord-nut{fill:var(--fg)}.chord-editor .chord-line{stroke:var(--border-strong);stroke-width:1px}.chord-editor .chord-dot{fill:var(--accent)}.chord-editor .chord-topmark{fill:var(--fg);font-size:13px}.chord-editor .chord-topmark.editable,.chord-editor .chord-cell{cursor:pointer}.chord-editor .chord-cell:hover{fill:var(--accent-soft)}.chord-editor .chord-fretlabel{fill:var(--muted);font-size:11px}.notebook-card{min-width:420px;max-width:92vw}.notebook-input{border:1px solid var(--border-strong);width:100%;min-height:160px;font:inherit;resize:vertical;border-radius:6px;padding:10px;font-weight:400}.section-readout .practiced-count{color:#4a9e63}.passages{flex-direction:column;gap:4px;display:flex}.passages-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.passage-row{align-items:center;gap:4px;display:flex}.passage-recall{text-align:left;flex:1}
