:root{--hti-blue-950:#081929;--hti-blue-900:#0d2137;--hti-blue-800:#1a3d5c;--hti-blue-700:#1f4d72;--hti-blue-600:#255d88;--hti-blue-500:#2b6d9e;--hti-blue-400:#5a93b8;--hti-blue-300:#8dbbd4;--hti-blue-200:#bdd8e8;--hti-blue-100:#dcecf5;--hti-blue-50:#f0f7fc;--hti-amber-700:#996900;--hti-amber-600:#cc8c00;--hti-amber-500:#f0a500;--hti-amber-400:#f5bc3d;--hti-amber-300:#f8ce6f;--hti-amber-100:#fef3d0;--hti-amber-50:#fffbf0;--hti-gray-900:#111827;--hti-gray-800:#1f2937;--hti-gray-700:#374151;--hti-gray-600:#4b5563;--hti-gray-500:#6b7280;--hti-gray-400:#9ca3af;--hti-gray-300:#d1d5db;--hti-gray-200:#e5e7eb;--hti-gray-100:#f3f4f6;--hti-gray-50:#f9fafb;--hti-success:#0d7a4e;--hti-success-mid:#16a370;--hti-success-light:#d1fae5;--hti-error:#b91c1c;--hti-error-mid:#dc2626;--hti-error-light:#fee2e2;--hti-warning:#f0a500;--hti-warning-mid:#f5bc3d;--hti-warning-light:#fef3d0;--hti-info:#255d88;--hti-info-mid:#2b6d9e;--hti-info-light:#dcecf5;--hti-white:#fff;--hti-surface:#fff;--hti-surface-alt:#f8fafc;--hti-surface-blue:#eff6ff;--bg-page:#f5f7fa;--bg-sidebar:#fff;--bg-card:var(--hti-white);--bg-alt:#f8fafc;--bg-blue-wash:#eff6ff;--fg-primary:var(--hti-gray-900);--fg-secondary:var(--hti-gray-600);--fg-muted:var(--hti-gray-400);--fg-inverse:var(--hti-white);--fg-brand:var(--hti-blue-800);--fg-accent:var(--hti-amber-600);--border-default:var(--hti-gray-200);--border-strong:var(--hti-gray-300);--border-brand:var(--hti-blue-600);--border-accent:var(--hti-amber-500);--interactive-primary:var(--hti-blue-800);--interactive-primary-hover:var(--hti-blue-700);--interactive-primary-press:var(--hti-blue-900);--interactive-accent:var(--hti-amber-500);--interactive-accent-hover:var(--hti-amber-600);--focus-ring:0 0 0 3px var(--hti-blue-200);--font-display:"Playfair Display", Georgia, "Times New Roman", serif;--font-body:"DM Sans", "Helvetica Neue", Arial, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Courier New", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--tracking-tight:-.02em;--tracking-normal:0em;--tracking-wide:.04em;--tracking-widest:.1em;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:2px;--radius-md:4px;--radius-lg:6px;--radius-pill:999px;--shadow-xs:0 1px 2px 0 #0a1f360d;--shadow-sm:0 1px 3px 0 #0a1f3614, 0 1px 2px -1px #0a1f360f;--shadow-md:0 4px 6px -1px #0a1f3614, 0 2px 4px -2px #0a1f360f;--shadow-lg:0 10px 15px -3px #0a1f361a, 0 4px 6px -4px #0a1f3612;--shadow-xl:0 20px 25px -5px #0a1f361f, 0 8px 10px -6px #0a1f3614;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--duration-fast:.12s;--duration-base:.2s;--duration-slow:.35s}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--fg-primary);background:var(--bg-page);-webkit-font-smoothing:antialiased;margin:0}h1{font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--fg-brand);margin:0}h2{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--fg-brand);margin:0}h3{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-medium);line-height:var(--leading-snug);color:var(--fg-primary);margin:0}h4{font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-snug);color:var(--fg-primary);margin:0}p{line-height:var(--leading-relaxed);margin:0}button,input,select,textarea{font-family:var(--font-body)}@keyframes spin{to{transform:rotate(360deg)}}
