:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;color:#f4f7fb;--panel:#151920;--panel-soft:#1b2029;--border:#303846;--text-muted:#aab4c2;--accent:#63dcaf;--accent-dark:#143d32;--danger:#ff9e9e;background:#090b0f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}html{touch-action:pan-y;background:#090b0f;min-width:320px}body{touch-action:pan-y;background:radial-gradient(circle at top,#18222a 0,#0000 38rem),#090b0f;min-width:320px;min-height:100dvh;margin:0;overflow-x:hidden}button,input,select{font:inherit;font-size:16px}button,select,.file-picker span{min-height:44px}button,select{border:1px solid var(--border);color:#fff;background:var(--panel-soft);border-radius:.75rem}button{cursor:pointer;touch-action:none;padding:.65rem 1.1rem;font-weight:700}button:disabled{cursor:not-allowed;opacity:.45}button:not(:disabled):active{transform:translateY(1px)}.app-shell{width:min(100%,1120px);padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(2rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));margin:0 auto}.app-header{margin:0 0 1.25rem}.app-header h1,.source-panel h2{margin:0}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .35rem;font-size:.78rem;font-weight:800}.intro,.source-panel p{color:var(--text-muted);margin:.35rem 0 0}.source-panel,.player-panel,.diagnostics{border:1px solid var(--border);background:var(--panel);background:color-mix(in srgb, var(--panel) 94%, transparent);border-radius:1rem;box-shadow:0 1rem 3rem #0003}.source-panel{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem;display:flex}.file-picker{cursor:pointer;touch-action:none;flex:none;display:inline-flex;position:relative}.file-picker span{color:#07140f;background:var(--accent);border-radius:.75rem;justify-content:center;align-items:center;padding:.65rem 1.1rem;font-weight:800;display:inline-flex}.file-picker input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.file-picker:focus-within span{outline-offset:3px;outline:3px solid #fff}.player-panel{overflow:hidden}.player-stage{background:#000;place-items:center;width:100%;min-height:clamp(13rem,52vw,39rem);max-height:72dvh;display:grid;position:relative;overflow:hidden}.player-stage video{width:100%;height:100%;min-height:inherit;max-height:inherit;object-fit:contain;background:#000}.empty-state{color:#788391;pointer-events:none;margin:0;font-weight:700;position:absolute}.controls{border-top:1px solid var(--border);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.9rem;padding:.9rem;display:grid}.transport-controls{gap:.65rem;display:flex}#start-practice{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));background:var(--accent-dark)}#start-analysis{border-color:color-mix(in srgb, #8ab7ff 62%, var(--border));background:#152d4c}.timeline-control{grid-template-columns:4.5rem minmax(4rem,1fr) 4.5rem;align-items:center;gap:.6rem;min-width:0;display:grid}.time-readout{color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:center}#seek{width:100%;min-width:0;height:44px;accent-color:var(--accent);cursor:pointer;touch-action:pan-y}.speed-controls{border-top:1px solid var(--border);min-width:0;padding:.85rem}.control-heading{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.5rem;display:flex}.control-heading h3{margin:0;font-size:.92rem}.control-heading output{color:var(--accent);font-variant-numeric:tabular-nums;font-weight:800}#playback-rate{width:100%;height:44px;accent-color:var(--accent);cursor:pointer;touch-action:pan-y}.quick-controls{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.quick-controls button{white-space:nowrap;flex:auto;padding:.5rem .65rem}.status{min-height:1.5rem;color:var(--text-muted);margin:0;padding:0 1rem 1rem}.loop-controls{border-top:1px solid var(--border);gap:.75rem;padding:.85rem 1rem 1rem;display:grid}.loop-heading{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.loop-heading h3,.loop-heading p{margin:0}.loop-heading h3{font-size:.92rem}.loop-heading p,.loop-storage-status,.loop-range-empty{color:var(--text-muted);font-size:.84rem}.loop-draft{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.loop-marker{grid-template-columns:auto minmax(6.5rem,1fr) auto;align-items:center;gap:.45rem;min-width:0;display:grid}.loop-marker>span{color:var(--accent);font-weight:800}.loop-marker output,.loop-range-time{font-variant-numeric:tabular-nums}.loop-marker output{text-align:center;text-overflow:ellipsis;min-width:0;font-weight:700;overflow:hidden}.loop-marker button,.loop-draft-actions button,.loop-range-row button{min-height:44px;padding:.45rem .65rem}.loop-draft-actions{flex-wrap:wrap;gap:.45rem;display:flex}.loop-storage-status{min-height:1.2rem;margin:0}.loop-range-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.loop-range-row{border:1px solid var(--border);background:#ffffff05;border-radius:.65rem;grid-template-columns:minmax(0,1fr) repeat(3,auto);align-items:center;gap:.4rem;padding:.45rem;display:grid}.loop-range-time{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.88rem;font-weight:700;overflow:hidden}.loop-range-empty{padding:.3rem 0}.practice-help{color:var(--text-muted);margin:0;padding:0 1rem .65rem;font-size:.88rem}.practice-interaction-layer{z-index:2000;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;position:fixed;inset:0}.practice-interaction-layer[hidden]{display:none}html.practice-active,html.practice-active body{overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;overflow:hidden}html.practice-active .player-stage video{z-index:1000;width:100%;height:100%;min-height:0;max-height:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);object-fit:contain;background:#000;position:fixed;inset:0}html.practice-active .empty-state{visibility:hidden}html.practice-draining,html.practice-draining body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.analysis-overlay{z-index:3000;overscroll-behavior:none;touch-action:none;background:0 0;width:100%;height:100dvh;position:fixed;inset:0;overflow:hidden}.analysis-overlay[hidden]{display:none}.analysis-toolbar{padding:max(.45rem, env(safe-area-inset-top)) max(.45rem, env(safe-area-inset-right)) .55rem max(.45rem, env(safe-area-inset-left));touch-action:none;background:linear-gradient(#070b114d,#070b111f);border-bottom:1px solid #ffffff24;gap:.45rem;display:grid;position:absolute;inset:0 0 auto;box-shadow:0 .35rem 1rem #0000001f}.analysis-action-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem;display:grid}.analysis-action-row button{color:#fff;text-shadow:0 1px 2px #000,0 0 5px #000000f2;text-overflow:ellipsis;white-space:nowrap;background:#0c131d57;border-color:#ffffff42;min-width:0;padding:.45rem .3rem;font-size:clamp(.7rem,2.7vw,.84rem);line-height:1.1;overflow:hidden}.analysis-action-row .analysis-done{color:#fff;background:#e1ebf757;border-color:#ffffff75}.analysis-action-row .analysis-play-pause{color:#fff;background:#0b4e3a61;border-color:#84ffcf8a}.analysis-timeline-row{grid-template-columns:minmax(6.4rem,auto) minmax(4rem,1fr) 4.5rem auto;align-items:center;gap:.5rem;min-width:0;display:grid}.analysis-timeline-row output{color:#fff;font-variant-numeric:tabular-nums;text-align:center;text-shadow:0 1px 2px #000,0 0 5px #000;font-weight:800}.analysis-marker-actions{gap:.35rem;display:flex}.analysis-marker-actions button{color:#fff;text-shadow:0 1px 2px #000,0 0 5px #000000f2;background:#0b4e3a57;border-color:#84ffcf7a;flex:0 0 4.25rem;width:4.25rem;min-width:4.25rem;min-height:44px;padding:.4rem .55rem;font-size:.78rem;font-weight:800;transition:border-color .1s,background-color .1s,box-shadow .1s}.analysis-marker-actions button[data-marker-feedback=success]{background:#0b664485;border-color:#84ffcfe6;transform:translateY(1px);box-shadow:inset 0 0 0 1px #d2ffee75,0 0 .55rem #53e6ae4d}#analysis-seek{width:100%;min-width:0;height:44px;accent-color:var(--accent);cursor:pointer;touch-action:none}html.analysis-active,html.analysis-active body{overscroll-behavior:none;touch-action:none;overflow:hidden}html.analysis-active .app-shell{pointer-events:none}html.analysis-active .player-stage video{z-index:2500;width:100%;height:100%;min-height:0;max-height:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);object-fit:contain;background:#000;position:fixed;inset:0}html.analysis-active .empty-state{visibility:hidden}.status[data-kind=success]{color:var(--accent)}.status[data-kind=error]{color:var(--danger)}.diagnostics{margin-top:1rem;padding:.2rem 1rem 1rem}.diagnostics summary{cursor:pointer;min-height:44px;padding:.75rem 0;font-weight:800}.diagnostic-grid{border:1px solid var(--border);background:var(--border);border-radius:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.diagnostic-grid>div{background:var(--panel-soft);min-width:0;padding:.7rem .8rem}.diagnostic-grid dt{color:var(--text-muted);text-transform:uppercase;margin-bottom:.2rem;font-size:.78rem;font-weight:700}.diagnostic-grid dd{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:0}.diagnostic-note{color:var(--text-muted);margin:.75rem 0 0;font-size:.88rem}.post-exit-probe{border:1px solid var(--border);background:var(--panel-soft);border-radius:.75rem;margin-top:1rem;padding:.8rem}.post-exit-probe h2{margin:0 0 .5rem;font-size:.9rem}.post-exit-probe-output{color:var(--text-muted);font:inherit;white-space:pre-wrap;margin:0;font-size:.82rem;line-height:1.5}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=720px){.app-shell{padding-right:max(.65rem, env(safe-area-inset-right));padding-left:max(.65rem, env(safe-area-inset-left))}.source-panel{flex-direction:column;align-items:stretch}.file-picker,.file-picker span{width:100%}.controls{grid-template-columns:1fr}.transport-controls{min-width:0}.transport-controls button{flex:auto}.timeline-control{grid-area:1/1/auto/-1}.loop-draft{grid-template-columns:1fr}.loop-range-row{grid-template-columns:repeat(3,minmax(0,1fr))}.loop-range-time{grid-column:1/-1}.loop-range-row button{width:100%}.analysis-timeline-row{grid-template-columns:minmax(5.8rem,auto) minmax(3rem,1fr) 4rem}.analysis-marker-actions{grid-column:1/-1;justify-content:end}.diagnostic-grid{grid-template-columns:1fr}}@media (width>=640px){.analysis-action-row{grid-template-columns:repeat(8,minmax(0,1fr))}.analysis-action-row button{font-size:clamp(.68rem,1.45vw,.84rem)}}@media (orientation:landscape) and (height<=520px){.app-header{display:none}.source-panel{padding:.65rem}.source-panel p{display:none}.player-stage{min-height:min(58dvh,28rem)}.analysis-toolbar{gap:.2rem;padding-bottom:.3rem}}
