:root{color-scheme:dark;--bg:#0b0f14;--panel:#111820;--panel2:#17212b;--line:#263542;--text:#d9e2e7;--muted:#7d8b96;--phase:#66b5a8;--blue:#6d93b8;--gold:#c6a66b;--danger:#ba6b6b;--row:142px}
*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font:13px/1.35 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input{font:inherit}.app{height:100%;display:grid;grid-template-rows:auto auto 1fr auto;overflow:hidden}.topbar{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--panel);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:baseline;gap:9px;white-space:nowrap}.brand .ev{font:700 9px ui-monospace,monospace;color:var(--muted);letter-spacing:1.8px}.brand .name{font:800 19px ui-monospace,monospace;color:var(--phase);letter-spacing:3px}.brand .tag{font:600 9px ui-monospace,monospace;color:var(--muted);letter-spacing:1px}.transport{display:flex;align-items:center;gap:6px}.btn{height:30px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:var(--panel2);color:var(--text);cursor:pointer}.btn:hover{border-color:#4b6474}.btn:disabled{opacity:.45;cursor:wait}.btn.primary{border-color:var(--phase);background:#21312f}.btn.warn{border-color:#6e6045}.spacer{flex:1}.field{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px}.field input{width:68px;height:30px;border:1px solid var(--line);border-radius:6px;background:#0d1319;color:var(--text);padding:0 7px}.modebar{display:flex;align-items:center;gap:6px;padding:7px 14px;background:#0e141b;border-bottom:1px solid var(--line);overflow-x:auto}.modebar .label{font:700 9px ui-monospace,monospace;color:var(--muted);letter-spacing:1.3px;margin-right:2px}.modebar .section{margin-left:12px}.mode{height:27px;padding:0 10px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;white-space:nowrap}.mode:hover{background:var(--panel2);color:var(--text)}.mode.active{background:#1b282c;border-color:#365852;color:#cfe7e1}.workspace{display:grid;grid-template-columns:224px 1fr;min-height:0}.sidebar{background:var(--panel);border-right:1px solid var(--line);padding:12px;overflow:auto}.side-title{font:700 9px ui-monospace,monospace;letter-spacing:1.5px;color:var(--muted);margin:5px 0 10px}.card{border:1px solid var(--line);background:#0e151c;border-radius:8px;padding:10px;margin-bottom:10px}.card h3{font-size:12px;margin:0 0 8px}.meta{display:grid;grid-template-columns:1fr auto;gap:5px 10px;font:11px ui-monospace,monospace}.meta span:nth-child(odd){color:var(--muted)}.status-pill{display:inline-flex;align-items:center;gap:6px;font:700 9px ui-monospace,monospace;letter-spacing:.8px;color:var(--muted)}.dot{width:7px;height:7px;border-radius:50%;background:var(--phase)}.dot.pending{background:var(--gold)}.sub{font:10px/1.55 ui-monospace,monospace;color:var(--muted)}.timeline{overflow:auto;position:relative;background:#0a0e13}.ruler{position:sticky;top:0;z-index:5;height:28px;background:#0d1319;border-bottom:1px solid var(--line);min-width:1100px}.ruler-lines{position:absolute;left:150px;right:0;top:0;bottom:0}.bar-tick{position:absolute;top:0;bottom:0;border-left:1px solid rgba(109,147,184,.32);padding:4px 0 0 5px;font:8px ui-monospace,monospace;color:#71808b;pointer-events:none}.bar-tick.major{border-left-color:rgba(102,181,168,.48);color:#8fa8a3}.track{position:relative;height:var(--row);min-width:1100px;border-bottom:1px solid #1e2a34;background:linear-gradient(to bottom,rgba(255,255,255,.01),transparent)}.track-head{position:sticky;left:0;z-index:4;width:150px;height:100%;padding:10px;background:linear-gradient(90deg,#101821 86%,rgba(16,24,33,.82));border-right:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.track-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-sub{font:9px/1.35 ui-monospace,monospace;color:var(--muted);min-height:24px}.minirow{display:flex;gap:5px;align-items:center}.minirow input{width:58px;height:25px;padding:0 5px;background:#0a1016;color:var(--text);border:1px solid var(--line);border-radius:4px}.minirow .offset{width:72px}.tiny-label{font:8px ui-monospace,monospace;color:var(--muted);letter-spacing:.5px}.mini{height:25px;padding:0 7px;border:1px solid var(--line);border-radius:4px;background:var(--panel2);color:var(--text);cursor:pointer}.lane{position:absolute;left:150px;right:0;top:0;bottom:0;overflow:hidden}.lane.move-ready{cursor:grab}.lane.move-active{cursor:grabbing;background:rgba(102,181,168,.025)}.wave{position:absolute;inset:14px 0 18px 0;width:100%;height:calc(100% - 32px)}.markers{position:absolute;inset:0;pointer-events:none}.marker{position:absolute;top:0;bottom:0;width:11px;transform:translateX(-5px);pointer-events:auto;cursor:ew-resize}.marker::before{content:"";position:absolute;left:5px;top:0;bottom:0;width:1px;background:#41505b}.marker.downbeat::before{width:2px;background:var(--blue)}.marker.locked::before{width:2px;background:var(--phase)}.marker.selected::before{width:3px;background:var(--gold)}.marker .cap{position:absolute;left:1px;bottom:2px;width:9px;height:9px;border-radius:2px;background:#4c5a64;border:1px solid #6d7982}.marker.downbeat .cap{background:#49647e}.marker.locked .cap{background:#4c8278}.marker.selected .cap{background:#9a7c45}.marker .n{position:absolute;bottom:13px;left:7px;font:8px ui-monospace,monospace;color:var(--muted);display:none}.marker.downbeat .n{display:block}.marker.weak{opacity:.38}.marker.uncertain::before{background:repeating-linear-gradient(to bottom,#6d93b8 0,#6d93b8 5px,transparent 5px,transparent 9px)}.marker.uncertain .cap{background:#263b4d;border-style:dashed;opacity:.8}.marker.uncertain .n{color:#b79c68}.empty{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font:11px ui-monospace,monospace;letter-spacing:.5px;pointer-events:none}.footer{display:flex;align-items:center;gap:14px;padding:6px 12px;background:var(--panel);border-top:1px solid var(--line);font:10px ui-monospace,monospace;color:var(--muted)}.footer .right{margin-left:auto}.kbd{border:1px solid var(--line);border-bottom-color:#3b4b57;border-radius:4px;padding:1px 5px;color:#aab6be;background:#0d141a}@media(max-width:900px){.workspace{grid-template-columns:1fr}.sidebar{display:none}.topbar{flex-wrap:wrap}.brand{width:100%}.spacer{display:none}.track-head{width:128px}.lane{left:128px}.ruler-lines{left:128px}}