:root{color-scheme:light dark;--font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--bg: #f7f8fa;--surface: #ffffff;--surface-sunken: #f0f2f5;--border: #dfe3e8;--border-strong: #c3c9d1;--text: #14181f;--text-muted: #5b6472;--text-faint: #8b95a3;--accent: #3b5bdb;--accent-hover: #2f4bc4;--accent-contrast: #ffffff;--accent-soft: #e8ecfb;--danger: #c92a2a;--danger-hover: #a92020;--success: #1c7a4f;--recording: #e03131;--shadow-sm: 0 1px 2px rgb(16 24 40 / .06), 0 1px 3px rgb(16 24 40 / .1);--shadow-md: 0 4px 12px rgb(16 24 40 / .08), 0 2px 4px rgb(16 24 40 / .06);--focus-ring: 0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}@media(prefers-color-scheme:dark){:root{--bg: #0f1115;--surface: #171a21;--surface-sunken: #1e222b;--border: #2a2f3a;--border-strong: #3a4150;--text: #e8ebf0;--text-muted: #a2abba;--text-faint: #6f7889;--accent: #748ffc;--accent-hover: #91a7ff;--accent-contrast: #0f1115;--accent-soft: #1e2540;--danger: #ff6b6b;--danger-hover: #ff8787;--success: #51cf87;--recording: #ff6b6b;--shadow-sm: 0 1px 2px rgb(0 0 0 / .4);--shadow-md: 0 6px 20px rgb(0 0 0 / .45)}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;line-height:1.25;font-weight:620;letter-spacing:-.015em}h1{font-size:1.5rem}h2{font-size:1.15rem}h3{font-size:1rem}p{margin:0}a{color:var(--accent);text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);text-underline-offset:2px}a:hover{color:var(--accent-hover)}code,kbd{font-family:var(--font-mono);font-size:.875em}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);margin:0;padding:var(--space-2) var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;font-weight:550;line-height:1.4;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}button:hover:not(:disabled){background:var(--surface-sunken);border-color:var(--text-faint)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}button.danger{background:transparent;border-color:color-mix(in srgb,var(--danger) 45%,transparent);color:var(--danger)}button.danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 10%,transparent);border-color:var(--danger)}button.ghost{background:transparent;border-color:transparent;color:var(--text-muted);padding:var(--space-1) var(--space-2)}button.ghost:hover:not(:disabled){background:var(--surface-sunken);border-color:transparent;color:var(--text)}label{display:block;margin-bottom:var(--space-1);color:var(--text-muted);font-size:.8125rem;font-weight:550}input,select,textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;line-height:1.4}input::placeholder,textarea::placeholder{color:var(--text-faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}input[type=checkbox]{width:auto;accent-color:var(--accent)}.card{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.muted{color:var(--text-muted)}.error{color:var(--danger)}.mono{font-family:var(--font-mono)}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
