:root{--font-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--text-small: .875rem;--radius: 6px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1.5rem;color-scheme:light;--color-text: #1d1d1f;--color-muted: #5f6368;--color-border: #d9dce1;--color-border-strong: #868c95;--color-surface: #ffffff;--color-background: #f6f7f9;--color-accent: #2f5bea;--color-accent-text: #ffffff;--color-danger: #b3261e;--color-danger-surface: #fdecea;--color-hover: rgba(127, 127, 127, .12);--fixed-ink: #1d1d1f;--fixed-paper: #ffffff;--color-kind-project: #0072b2;--color-kind-client: #00694b;--color-kind-document: #a34700;--color-kind-session: #4b2c82;--color-kind-entry: #8c6d46;--color-kind-work: #374151}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--color-text: #e8eaed;--color-muted: #a9afb8;--color-border: #3a3f47;--color-border-strong: #6b717b;--color-surface: #1c1f24;--color-background: #121417;--color-accent: #8ab4ff;--color-accent-text: #0b1020;--color-danger: #f6b9b5;--color-danger-surface: #4a1f1c;--color-hover: rgba(127, 127, 127, .2);--color-kind-project: #56b4e9;--color-kind-client: #4fc9a0;--color-kind-document: #f0a35c;--color-kind-session: #b9a1f0;--color-kind-entry: #d3b27f;--color-kind-work: #aab4c3}}:root[data-theme=dark]{color-scheme:dark;--color-text: #e8eaed;--color-muted: #a9afb8;--color-border: #3a3f47;--color-border-strong: #6b717b;--color-surface: #1c1f24;--color-background: #121417;--color-accent: #8ab4ff;--color-accent-text: #0b1020;--color-danger: #f6b9b5;--color-danger-surface: #4a1f1c;--color-hover: rgba(127, 127, 127, .2);--color-kind-project: #56b4e9;--color-kind-client: #4fc9a0;--color-kind-document: #f0a35c;--color-kind-session: #b9a1f0;--color-kind-entry: #d3b27f;--color-kind-work: #aab4c3}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);color:var(--color-text);background:var(--color-background);line-height:1.5}h1,h2,h3{line-height:1.2;margin:0 0 var(--space-3)}a{color:var(--color-accent)}.field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-3)}label{font-weight:600;font-size:var(--text-small)}input,select,textarea{font:inherit;padding:var(--space-2);color:var(--color-text);border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-surface)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--color-danger)}.field-error{color:var(--color-danger);font-size:var(--text-small);margin:0}.alert{color:var(--color-danger);background:var(--color-danger-surface);padding:var(--space-2) var(--space-3);border-radius:var(--radius)}button{font:inherit;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);cursor:pointer}button.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-text)}button:disabled{opacity:.6;cursor:default}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}table{width:100%;border-collapse:collapse;background:var(--color-surface)}th,td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border)}th{font-size:var(--text-small);color:var(--color-muted);font-weight:600}td.number,th.number{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.scroll{overflow-x:auto;position:relative}.nowrap{white-space:nowrap}.page-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}a.button{display:inline-block;text-decoration:none;padding:var(--space-2) var(--space-3);border-radius:var(--radius);border:1px solid var(--color-border-strong);color:var(--color-text);background:var(--color-surface)}a.button.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-text)}button.danger{color:var(--color-danger);border-color:var(--color-danger)}.stack{max-width:36rem}.actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
