:root{--color-primary:#e11d48;--color-secondary:#2563eb;--color-tertiary:#facc15;--surface-base:#fff;--surface-raised:#fff;--surface-glass:#ffffffa6;--surface-background:#f8fafc;--color-success:#16a34a;--color-warning:#d97706;--color-error:#dc2626;--color-info:#2563eb;--border-default:#e5e7eb;--text-primary:#1f2937;--text-secondary:#4b5563;--text-muted:#9ca3af;--font-headline:"Poppins", sans-serif;--font-body:"DM Sans", sans-serif;--font-mono:"Fira Code", monospace;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--space-8:64px;--space-10:80px;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:24px;--radius-pill:9999px;--shadow-glass:0 8px 32px #00000014;--shadow-md:0 4px 16px #0000001a;--shadow-lg:0 12px 40px #00000026;--shadow-color:0 8px 24px #e11d4840;--shadow-focus:0 0 0 3px #2563eb59;--surface-sidebar:#fafafa;--surface-input:#f9fafb;--color-primary-light:#e11d4814;--color-primary-subtle:#fff1f2;--color-primary-dark:#be123c;--transition-base:.15s ease;--transition-md:.25s cubic-bezier(.16, 1, .3, 1);--surface-favicon:#fff;--surface-error-bg:#fef2f2;--surface-chip-default:#f3f4f6;--text-chip-default:#1f2937;--text-on-primary:#fff;--surface-landing-gradient:linear-gradient(135deg, #fff1f2 0%, #fef2f2 40%, #f8fafc 100%);--status-active-bg:#dbeafe;--status-active-text:#1e40af;--status-complete-bg:#dcfce7;--status-complete-text:#166534;--status-review-bg:#fef3c7;--status-review-text:#92400e;--status-archived-bg:#f3f4f6;--status-archived-text:#6b7280;--status-dead-bg:#fee2e2;--status-dead-text:#991b1b}[data-theme=dark]{--surface-base:#0f172a;--surface-raised:#1e293b;--surface-glass:#1e293bb3;--surface-background:#0b0f19;--surface-sidebar:#0f172a;--surface-input:#1e293b;--border-default:#334155;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--shadow-glass:0 8px 32px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 12px 40px #00000080;--color-primary-light:#e11d4826;--color-primary-subtle:#1e1b20;--color-error:#fca5a5;--surface-favicon:#1e293b;--surface-error-bg:#dc262626;--surface-chip-default:#334155;--text-chip-default:#cbd5e1;--surface-landing-gradient:linear-gradient(135deg, #0f172a 0%, #1e293b 40%, #0b0f19 100%);--status-active-bg:#1e40af40;--status-active-text:#93c5fd;--status-complete-bg:#16a34a33;--status-complete-text:#86efac;--status-review-bg:#d9770633;--status-review-text:#fcd34d;--status-archived-bg:#334155;--status-archived-text:#94a3b8;--status-dead-bg:#991b1b40;--status-dead-text:#fca5a5}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow-x:hidden}body{font-family:var(--font-body);background-color:var(--surface-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6}a,button{touch-action:manipulation}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:var(--shadow-focus);outline:none}.text-hero{font-family:var(--font-headline);font-size:72px;font-weight:800;line-height:1.05}.text-h1{font-family:var(--font-headline);font-size:48px;font-weight:700;line-height:1.1}.text-h2{font-family:var(--font-headline);font-size:32px;font-weight:600;line-height:1.2}.text-h3{font-family:var(--font-headline);font-size:24px;font-weight:600;line-height:1.3}.text-body-lg{font-family:var(--font-body);font-size:18px;font-weight:400;line-height:1.6}.text-body{font-family:var(--font-body);font-size:16px;font-weight:400;line-height:1.6}.text-caption{font-family:var(--font-body);font-size:13px;font-weight:500;line-height:1.5}.text-mono{font-family:var(--font-mono);font-size:14px;font-weight:400;line-height:1.5}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out forwards fadeIn}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:768px){input,select,textarea{font-size:16px!important}}
