:root{--bg-page:#ffffff;--bg-card:#ffffff;--bg-surface:#f9fafb;--bg-hover:#f3f4f6;--bg-input:#ffffff;--text-primary:#111827;--text-secondary:#6b7280;--text-muted:#9ca3af;--border:#e5e7eb;--border-light:#f3f4f6;--bg-message-user:#f3f4f6;--bg-message-agent:#dbeafe;--accent:#2563eb;--accent-fg:#ffffff;--accent-soft:#eff6ff;--accent-soft-fg:#1e40af;--badge-ok-bg:#dcfce7;--badge-ok-fg:#166534;--badge-neutral-bg:#f3f4f6;--badge-neutral-fg:#4b5563;--badge-danger:#ef4444;--badge-danger-soft:rgba(239,68,68,0.05);--note-bg:#fef9c3;--note-fg:#713f12;--note-border:#d97706;--ai-bg:#ede9fe;--ai-fg:#6d28d9;--ai-border:#a78bfa;--ai-soft-bg:#f5f3ff;--ai-source-bg:#e0e7ff;--ai-source-fg:#4338ca;--date-sep-bg:var(--bg-hover);--date-sep-fg:var(--text-muted);--tone-ok-bg:#f0fdf4;--tone-ok-border:#86efac;--tone-ok-fg:#166534;--tone-warn-bg:#fffbeb;--tone-warn-border:#fcd34d;--tone-warn-fg:#92400e;--tone-warn-fg-deep:#78350f;--tone-error-bg:#fef2f2;--tone-error-border:#fca5a5;--tone-error-fg:#991b1b}[data-theme=dark]{--bg-page:#0f172a;--bg-card:#1e293b;--bg-surface:#1e293b;--bg-hover:#334155;--bg-input:#0f172a;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--text-muted:#64748b;--border:#334155;--border-light:#1e293b;--bg-message-user:#334155;--bg-message-agent:#1e3a5f;--accent:#3b82f6;--accent-fg:#ffffff;--accent-soft:#1e3a5f;--accent-soft-fg:#93c5fd;--badge-ok-bg:#064e3b;--badge-ok-fg:#6ee7b7;--badge-neutral-bg:#334155;--badge-neutral-fg:#cbd5e1;--badge-danger:#ef4444;--badge-danger-soft:rgba(239,68,68,0.12);--note-bg:#3d3400;--note-fg:#fde68a;--note-border:#ca8a04;--ai-bg:#2e1065;--ai-fg:#c4b5fd;--ai-border:#7c3aed;--ai-soft-bg:#1e1b4b;--ai-source-bg:#312e81;--ai-source-fg:#a5b4fc;--date-sep-bg:var(--bg-hover);--date-sep-fg:var(--text-muted);--tone-ok-bg:#0d2818;--tone-ok-border:#22734a;--tone-ok-fg:#6ee7b7;--tone-warn-bg:#2a2000;--tone-warn-border:#a17c1a;--tone-warn-fg:#fcd34d;--tone-warn-fg-deep:#fbbf24;--tone-error-bg:#2d1114;--tone-error-border:#9c3d3d;--tone-error-fg:#fca5a5;color-scheme:dark}[data-theme=dark] button{-moz-appearance:none;appearance:none;-webkit-appearance:none}body{margin:0;background-color:var(--bg-page);color:var(--text-primary);transition:background-color .2s,color .2s}input,select,textarea{background-color:var(--bg-input);color:var(--text-primary);border-color:var(--border)}[data-theme=dark] option{background-color:var(--bg-card);color:var(--text-primary)}