:root{--bg: #0f1117;--card: #171a23;--border: #262a36;--text: #e8eaf0;--muted: #8b90a0;--accent: #6d8cff;--danger: #ff6b6b;--ok: #4ade80;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding-bottom:env(safe-area-inset-bottom)}main{max-width:640px;margin:0 auto;padding:24px 16px 48px}main.center,section.center{text-align:center;padding-top:64px}h1{font-size:24px;margin:0 0 4px}h2{font-size:15px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:32px 0 12px}header{margin-bottom:24px}.meta{color:var(--muted);font-size:14px}.hint{color:var(--muted);font-size:13px}.empty{color:var(--muted)}.error{color:var(--danger)}.warn{color:#fbbf24;font-size:14px}button,.button{font:inherit;cursor:pointer;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--text);padding:10px 16px;text-decoration:none;display:inline-block}button:disabled{opacity:.5;cursor:default}button.link{border:none;background:none;color:var(--accent);padding:0}.recorder{text-align:center;padding:32px 0 40px;border-bottom:1px solid var(--border)}button.big{width:180px;height:180px;border-radius:50%;font-size:19px;font-weight:600;border:none}button.big.rec{background:var(--accent);color:#0b0d13}button.big.stop{background:var(--danger);color:#fff}.timer{font-size:44px;font-variant-numeric:tabular-nums;margin-bottom:8px}.pulse{width:12px;height:12px;border-radius:50%;background:var(--danger);margin:0 auto 20px;animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.25}}.spinner{width:28px;height:28px;margin:0 auto 16px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.pulse,.spinner{animation:none}}.list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.list button{width:100%;text-align:left;display:grid;gap:4px}.list .row{display:flex;justify-content:space-between;align-items:center;gap:12px}.badge{font-size:12px;padding:2px 8px;border-radius:999px;background:var(--border);color:var(--muted);flex-shrink:0}.badge.done{color:var(--ok)}.badge.error{color:var(--danger)}.actions-bar{display:flex;gap:8px;margin:20px 0}.resume{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px}ul.todo{list-style:none;padding:0;display:grid;gap:8px}ul.todo li{background:var(--card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;padding:12px 14px;display:grid;gap:2px}.transcript{white-space:pre-wrap;font-size:14px;line-height:1.7;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:16px;margin-top:12px}.gate{padding-top:15vh;text-align:center}.gate form{display:grid;gap:10px;max-width:280px;margin:24px auto 0}.gate input{font:inherit;padding:12px;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--text)}
