:root{color-scheme:light;--bg: #fafbfc;--surface: #ffffff;--surface-2: #eef2f7;--text: #1a2333;--text-muted: #6b7280;--border: #e2e5ea;--accent: #7c3aed;--accent-dark: #6d28d9;--accent-soft: #ede9fe;--ok: #15803d;--ok-soft: #dcfce7;--warn: #b45309;--warn-soft: #fffbeb;--error: #b91c1c;--error-soft: #fee2e2;--note: #d97706;--note-soft: #fef3e2;--replay-border: #ddd0f5;--replay-bg: linear-gradient(180deg, #faf7ff, #ffffff 55%);--replay-hover: #f5f2fe;--ink: var(--text);--dim: var(--text-muted);--line: var(--border);--red: var(--error)}[data-theme=dark]{color-scheme:dark;--bg: #14161b;--surface: #1b1e25;--surface-2: #262a33;--text: #e5e7eb;--text-muted: #9aa1ac;--border: #2a2e37;--accent: #8b5cf6;--accent-dark: #7c3aed;--accent-soft: color-mix(in srgb, #8b5cf6 22%, transparent);--ok: #4ade80;--ok-soft: color-mix(in srgb, #22c55e 18%, transparent);--warn: #fbbf24;--warn-soft: color-mix(in srgb, #f59e0b 16%, transparent);--error: #f87171;--error-soft: color-mix(in srgb, #ef4444 20%, transparent);--note: #fbbf24;--note-soft: color-mix(in srgb, #f59e0b 18%, transparent);--replay-border: #4c3a7a;--replay-bg: linear-gradient(180deg, color-mix(in srgb, #7c3aed 22%, var(--surface)), var(--surface) 60%);--replay-hover: color-mix(in srgb, #7c3aed 16%, transparent)}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,system-ui,sans-serif;font-size:13px;color:var(--text);background:var(--bg);transition:background-color .15s,color .15s}.pane{padding:10px;display:flex;flex-direction:column;gap:10px}.pane-head{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;padding:2px 2px 0}.theme-btn{margin-left:auto;font:inherit;font-size:14px;line-height:1;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-muted);padding:3px 7px;cursor:pointer}.theme-btn:hover{background:var(--surface-2)}.buildtag{font-size:10px;font-weight:500;color:var(--dim);border:1px solid var(--line);border-radius:999px;padding:1px 6px;vertical-align:middle}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:10px}.card.recover{border-color:var(--warn);background:var(--warn-soft)}.card p{margin:0}.field{display:flex;flex-direction:column;gap:4px}.field span{color:var(--dim);font-size:12px}input,select,textarea{font:inherit;border:1px solid var(--line);border-radius:6px;padding:6px 8px;width:100%}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.btn{font:inherit;color:var(--text);border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:7px 12px;cursor:pointer}.btn:hover{border-color:var(--accent)}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-dark)}.btn.big{padding:10px;font-weight:600}.btn.danger{color:var(--red);border-color:var(--red)}.row{display:flex;gap:8px}.row .btn{flex:1}.hint{color:var(--dim);font-size:12px}.hint.ok{color:var(--ok)}.error{color:var(--error);background:var(--error-soft);border-radius:6px;padding:8px 10px}.rec-status{display:flex;align-items:center;gap:8px;font-weight:600}.rec-dot{width:10px;height:10px;border-radius:50%;background:var(--red);animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{opacity:.3}}.counts{color:var(--dim)}.recent{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;font-size:12px;min-height:20px}.recent code{background:var(--surface-2);border-radius:4px;padding:0 4px}.check{display:flex;align-items:center;gap:8px;cursor:pointer}.check input{width:auto}.hint.indent{margin-left:24px;margin-top:-6px}.hint.indent-0{margin-top:-6px}.hint.warn{color:var(--warn)}.audio-row{display:flex;align-items:center;gap:8px}.meter{flex:1;height:8px;background:var(--line);border-radius:4px;overflow:hidden}.meter-fill{height:100%;background:var(--ok);border-radius:4px;transition:width .12s linear}.mictest{border:1px dashed var(--line);border-radius:6px;padding:10px;display:flex;flex-direction:column;gap:8px}.auto{margin-left:6px;font-size:10px;color:var(--dim);border:1px solid var(--line);border-radius:999px;padding:0 5px;vertical-align:middle}.btn.subtle{color:var(--dim)}.btn-link{font:inherit;background:none;border:none;padding:0;color:var(--accent);cursor:pointer;text-decoration:underline}.hint.account{margin:-4px 2px 0}.divider{display:flex;align-items:center;gap:8px;color:var(--dim);font-size:11px}.divider:before,.divider:after{content:"";flex:1;border-top:1px solid var(--line)}code.wrap{word-break:break-all;background:var(--surface-2);border-radius:4px;padding:0 4px}.card.replay{border-color:var(--replay-border);background:var(--replay-bg)}.replay-head{display:flex;align-items:center;gap:8px}.replay-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-dark);background:var(--accent-soft);border-radius:999px;padding:3px 8px;white-space:nowrap}.replay-title{flex:1;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.replay-meta{margin-top:-6px}.replay-transport{display:flex;align-items:center;gap:12px}.play-btn{flex:none;width:46px;height:46px;border-radius:50%;border:none;background:#7c3aed;color:#fff;font-size:15px;cursor:pointer;box-shadow:0 2px 6px #7c3aed59;transition:background .15s,transform .05s}.play-btn:hover{background:#6d28d9}.play-btn:active{transform:scale(.96)}.replay-time{font-size:16px;font-variant-numeric:tabular-nums}.replay-time .total{color:var(--dim);font-size:12px}.seek-slider{width:100%;accent-color:#7c3aed;height:22px;padding:0}.speed-row{display:flex;align-items:center;gap:8px}.speed-label{font-size:10px;color:var(--dim);text-transform:uppercase;letter-spacing:.05em}.speed-slider{flex:1;accent-color:var(--text-muted);height:14px;padding:0}.speed-pill{font:inherit;font-weight:600;min-width:3.8em;border:1px solid var(--replay-border);color:var(--accent-dark);background:var(--surface);border-radius:999px;padding:4px 10px;cursor:pointer}.speed-pill:hover{background:var(--accent-soft)}.replay-tabs{display:flex;border-bottom:1px solid var(--line);margin-top:4px}.replay-tabs button{flex:1;border:none;background:none;padding:6px 8px;font:inherit;color:var(--dim);border-bottom:2px solid transparent;cursor:pointer}.replay-tabs button.active{color:var(--accent-dark);font-weight:600;border-bottom-color:var(--accent)}.replay-list{list-style:none;margin:0;padding:4px 0;max-height:220px;overflow-y:auto}.replay-list .item{display:flex;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;align-items:baseline}.replay-list .item:hover{background:var(--replay-hover)}.replay-list .item.active{background:var(--accent-soft)}.replay-list .item.note.active{background:var(--note-soft)}.replay-list .item.future{opacity:.45}.replay-list .item .when{color:var(--dim);font-size:12px;min-width:34px;font-variant-numeric:tabular-nums}.replay-list .item .body{display:flex;flex-direction:column;gap:2px;min-width:0}.replay-list .cellref{font-family:Consolas,monospace;font-size:12px;color:var(--accent)}.replay-list .item.note .cellref{color:var(--note)}.replay-list .auto{margin-left:6px;font-size:10px;color:var(--dim);border:1px solid var(--line);border-radius:999px;padding:0 5px}.replay-list .dim{color:var(--dim)}.replay-list .how{font-size:11px;color:var(--dim);font-style:italic;overflow-wrap:anywhere}.replay-list .empty{color:var(--dim);padding:12px 8px}.card.upgrade{border-color:var(--accent-soft);background:var(--accent-soft)}.card.upgrade strong{text-transform:capitalize}
