:root{--bg:#f8f8f8;--sidebar:#eee;--card:#fff;--surface-sel:#fff;--ink:#1c1c1c;--ink-row:#3a3a3a;--ink-soft:#878787;--ink-faint:#b0b0b0;--line:#e0e0e0;--accent:#bc4a0a;--accent-hover:color-mix(in srgb, var(--accent) 82%, black);--accent-soft:color-mix(in srgb, var(--accent) 14%, white);--accent-text:var(--accent);--row-sel:#e2e2e2;--row-hover:#ececec;--switch-off:#d4d4d8;--danger:#c7382d;--caution:#d99000;--warn-bg:#fbf1e0;--warn-text:#946a1e;--warn-border:#f0debb;--tag-blue-bg:#dcebfb;--tag-blue-text:#22629e;--tag-purple-bg:#ece4fa;--tag-purple-text:#6d43b8;--tag-green-bg:#daf1e2;--tag-green-text:#1f7a45;--shadow-card:0 1px 2px #00000008;--shadow-pop:0 1px 2px #0000000d;--shadow-dialog:0 8px 28px #00000024;--popover:#fff;--popover-border:#d6d6d6;--radius:12px;--ease:cubic-bezier(.23, 1, .32, 1);--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--font-display:var(--font-mono)}.dark{--bg:#242424;--sidebar:#1c1c1c;--card:#2c2c2e;--surface-sel:#48484a;--ink:#f2f2f2;--ink-row:#d8d8d8;--ink-soft:#8e8e8e;--ink-faint:#6a6a6a;--line:#383838;--accent:#ff8a3b;--accent-soft:color-mix(in srgb, var(--accent) 22%, #1e1e1e);--accent-text:color-mix(in srgb, var(--accent) 58%, white);--row-sel:#3a3a3f;--row-hover:#36363a;--switch-off:#48484a;--danger:#ff453a;--caution:#f0a11a;--warn-bg:#3a2e16;--warn-text:#e0b056;--warn-border:#5a4620;--tag-blue-bg:#1d3550;--tag-blue-text:#82b8ec;--tag-purple-bg:#322350;--tag-purple-text:#b795ee;--tag-green-bg:#16351f;--tag-green-text:#63c586;--shadow-card:0 1px 2px #0000004d;--shadow-pop:0 1px 3px #0006;--shadow-dialog:0 8px 28px #00000080;--popover:#3a3a3d;--popover-border:#504f54}*{box-sizing:border-box}html{height:100%}body{background:var(--bg);min-height:100%;color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-soft)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
