:root{color-scheme:light dark;--color-bg: #f8fafc;--color-bg-elevated: #ffffff;--color-bg-inset: #f1f5f9;--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-muted: #94a3b8;--color-text-on-primary: #ffffff;--color-border: #e2e8f0;--color-border-strong: #cbd5e1;--color-control-border: #475569;--color-primary: #4f46e5;--color-primary-hover: #4338ca;--color-primary-active: #4338ca;--color-link: #4f46e5;--color-link-hover: #4338ca;--color-success: #059669;--color-warning: #d97706;--color-danger: #e11d48;--color-info: #0284c7;--color-focus-ring: #4338ca;--color-shadow: rgba(15, 23, 42, .12);--color-overlay: rgba(15, 23, 42, .5)}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-bg: #020617;--color-bg-elevated: #0f172a;--color-bg-inset: #1e293b;--color-text-primary: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-muted: #64748b;--color-text-on-primary: #ffffff;--color-border: #334155;--color-border-strong: #475569;--color-control-border: #94a3b8;--color-primary: #4f46e5;--color-primary-hover: #4338ca;--color-primary-active: #4338ca;--color-link: #818cf8;--color-link-hover: #a5b4fc;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #f43f5e;--color-info: #0ea5e9;--color-focus-ring: #a5b4fc;--color-shadow: rgba(0, 0, 0, .6);--color-overlay: rgba(0, 0, 0, .7)}}:root[data-theme=light]{color-scheme:light;--color-bg: #f8fafc;--color-bg-elevated: #ffffff;--color-bg-inset: #f1f5f9;--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-muted: #94a3b8;--color-text-on-primary: #ffffff;--color-border: #e2e8f0;--color-border-strong: #cbd5e1;--color-control-border: #475569;--color-primary: #4f46e5;--color-primary-hover: #4338ca;--color-primary-active: #4338ca;--color-link: #4f46e5;--color-link-hover: #4338ca;--color-success: #059669;--color-warning: #d97706;--color-danger: #e11d48;--color-info: #0284c7;--color-focus-ring: #4338ca;--color-shadow: rgba(15, 23, 42, .12);--color-overlay: rgba(15, 23, 42, .5)}:root[data-theme=dark]{color-scheme:dark;--color-bg: #020617;--color-bg-elevated: #0f172a;--color-bg-inset: #1e293b;--color-text-primary: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-muted: #64748b;--color-text-on-primary: #ffffff;--color-border: #334155;--color-border-strong: #475569;--color-control-border: #94a3b8;--color-primary: #4f46e5;--color-primary-hover: #4338ca;--color-primary-active: #4338ca;--color-link: #818cf8;--color-link-hover: #a5b4fc;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #f43f5e;--color-info: #0ea5e9;--color-focus-ring: #a5b4fc;--color-shadow: rgba(0, 0, 0, .6);--color-overlay: rgba(0, 0, 0, .7)}*,*:before,*:after{box-sizing:border-box}html,body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{margin:0}html{height:100%}body{min-height:100%;background-color:var(--color-bg);color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:1.0625rem;line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}button,input,textarea,select{font:inherit;color:inherit}a{color:var(--color-link);text-underline-offset:.15em}a:hover{color:var(--color-link-hover)}html{scroll-behavior:smooth}main>section{scroll-margin-top:6rem}main h2{font-size:clamp(1.75rem,1.4rem + 1.4vw,2.5rem);font-weight:700;color:var(--color-text-primary)}:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:3px}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:100;padding:.625rem 1rem;border-radius:.375rem;background-color:var(--color-bg-elevated);color:var(--color-text-primary);font-weight:700;text-decoration:none;transform:translateY(calc(-100% - 1rem))}.skip-link:focus-visible{transform:translateY(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.container{width:100%;max-width:75rem;margin-inline:auto;padding-inline:1rem}@media(min-width:48rem){.container{padding-inline:2rem}}@media(max-width:48rem){main>section{scroll-margin-top:9rem}}
