:root{--bg-base: #f3f1ea;--bg-panel: #c8dcf0;--bg-surface: #ffffff;--bg-surface-2: #eef2f7;--bg-inset: #e9eff6;--border-subtle: #cfd8e3;--border-strong: #7f90a6;--panel-edge: #b0c8e2;--heading-100: #0d1a2e;--heading-200: #16273f;--heading-300: #22354f;--heading-400: #33455f;--heading-500: #46586f;--accent: #1a63ba;--accent-hover: #124e96;--accent-muted: #a8c8ea;--accent-contrast: #ffffff;--text-primary: #12203a;--text-secondary: #46586f;--text-muted: #54657d;--success: #0f7a52;--warning: #8a5a00;--danger: #c0293f;--shadow: 0 1px 2px rgba(18, 32, 58, .05), 0 8px 24px rgba(18, 32, 58, .08);--glow: 0 0 0 3px rgba(26, 99, 186, .18);--radius: 12px;--radius-sm: 8px;--radius-lg: 16px;--font-display: "Space Grotesk", "Sora", system-ui, sans-serif;--font-display-serif: "Instrument Serif", Georgia, "Times New Roman", serif;--font-body: "Inter", "IBM Plex Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-base);color:var(--text-primary);font-family:var(--font-body);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}p{max-width:68ch;margin:0 0 1rem;text-wrap:pretty}small,.caption{color:var(--text-muted);font-size:.85rem}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:600;line-height:1.15;letter-spacing:-.02em;margin:0 0 .5em;text-wrap:balance}h1{font-size:2.75rem;color:var(--heading-100);letter-spacing:-.03em}h2{font-size:2.1rem;color:var(--heading-200)}h3{font-size:1.6rem;color:var(--heading-300)}h4{font-size:1.25rem;color:var(--heading-400)}h5{font-size:1.05rem;font-weight:500;color:var(--heading-500)}h6{font-size:.9rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em}a{color:var(--accent);text-decoration:none;transition:color 175ms ease}a:hover{color:var(--accent-hover)}pre{background:var(--bg-inset);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-4);overflow-x:auto}code{font-family:var(--font-mono);font-size:.9rem;color:var(--accent)}input,select,textarea{background:var(--bg-inset);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:.95rem;transition:border-color 175ms ease,box-shadow 175ms ease}input::placeholder,textarea::placeholder{color:var(--text-muted)}@media(hover:hover){input:hover:not(:focus),select:hover:not(:focus),textarea:hover:not(:focus){border-color:var(--border-strong)}}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1a63ba2e}label{color:var(--text-secondary);font-family:var(--font-body)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}@media(pointer:coarse){button,a,[role=button],input[type=submit],input[type=button]{min-height:44px;min-width:44px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}@media(hover:hover){.card:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:0 2px 6px #12203a12,0 14px 34px #12203a1f}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:none;border-radius:var(--radius-sm);padding:var(--space-3) var(--space-6);font-family:var(--font-body);font-size:.95rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background 175ms ease,border-color 175ms ease,box-shadow 175ms ease,transform .12s ease}.btn:active:not(:disabled){transform:scale(.96)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-contrast);border:1px solid transparent}.btn-primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--glow)}.btn-ghost{background:transparent;color:var(--text-primary);border:1px solid var(--border-strong)}.btn-ghost:hover:not(:disabled){background:var(--bg-surface-2);border-color:var(--accent-muted)}.page{max-width:1200px;margin:0 auto;padding:var(--space-8) var(--space-4)}@media(min-width:768px){.page{padding:var(--space-16) var(--space-8)}}
