/* Art direction: developer docs → clean, premium, technical
Palette: neutral surfaces, teal accent
Typography: Satoshi + Inter — readable, modern, restrained
Density: balanced */
:root{--font-display:'Satoshi','Inter',sans-serif;--font-body:'Inter','Satoshi',sans-serif;--text-xs:clamp(.75rem,.7rem+.25vw,.875rem);--text-sm:clamp(.875rem,.8rem+.35vw,1rem);--text-base:clamp(1rem,.95rem+.25vw,1.125rem);--text-lg:clamp(1.125rem,1rem+.75vw,1.5rem);--text-xl:clamp(1.5rem,1.2rem+1.25vw,2.25rem);--text-2xl:clamp(2rem,1.2rem+2.5vw,3.5rem);--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;--space-20:5rem;--space-24:6rem;--color-bg:#f7f6f2;--color-surface:#f9f8f5;--color-surface-2:#fbfbf9;--color-surface-offset:#f3f0ec;--color-divider:#dcd9d5;--color-border:#d4d1ca;--color-text:#28251d;--color-text-muted:#6f6d67;--color-text-faint:#a8a59f;--color-text-inverse:#f9f8f4;--color-primary:#01696f;--radius-lg:1rem;--radius-xl:1.25rem;--shadow-sm:0 1px 2px oklch(0.2 .01 80 / .06);--shadow-md:0 8px 24px oklch(0.2 .01 80 / .08);--transition-interactive:180ms cubic-bezier(.16,1,.3,1)}
[data-theme="dark"]{--color-bg:#171614;--color-surface:#1c1b19;--color-surface-2:#201f1d;--color-surface-offset:#22211f;--color-divider:#262523;--color-border:#393836;--color-text:#cdccca;--color-text-muted:#8a8986;--color-text-faint:#5a5957;--color-text-inverse:#2b2a28;--color-primary:#4f98a3;--shadow-sm:0 1px 2px oklch(0 0 0 / .2);--shadow-md:0 8px 24px oklch(0 0 0 / .28)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:none;text-size-adjust:none}body{margin:0;min-height:100dvh;font:var(--text-base)/1.6 var(--font-body);color:var(--color-text);background:var(--color-bg)}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;background:none;border:0}.wrap{max-width:1180px;margin:0 auto;padding:0 var(--space-4)}.skip{position:absolute;left:-999px}.skip:focus{left:var(--space-4);top:var(--space-4);background:var(--color-surface);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);z-index:10}.hero{padding:clamp(var(--space-12),8vw,var(--space-24)) 0;background:linear-gradient(180deg,var(--color-surface),var(--color-bg))}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:var(--space-8);align-items:start}.badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.title{font:700 var(--text-2xl)/1.05 var(--font-display);letter-spacing:-.04em;margin:var(--space-4) 0 var(--space-4)}.lead{max-width:62ch;color:var(--color-text-muted);font-size:var(--text-lg)}.actions{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-6)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 var(--space-4);border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);transition:all var(--transition-interactive)}.btn.primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-inverse)}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.panel{padding:var(--space-6)}.grid{display:grid;gap:var(--space-4)}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.section{padding:var(--space-16) 0}.section h2{font:700 var(--text-xl)/1.1 var(--font-display);margin:0 0 var(--space-4)}.muted{color:var(--color-text-muted)}.toc{display:flex;flex-wrap:wrap;gap:var(--space-2)}.toc a{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface-2);font-size:var(--text-sm)}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:var(--space-3);border-bottom:1px solid var(--color-divider);text-align:left;vertical-align:top}.footer{padding:var(--space-12) 0;color:var(--color-text-muted);font-size:var(--text-sm)}.logo{display:flex;align-items:center;gap:var(--space-3)}.logo-mark{width:40px;height:40px;color:var(--color-primary)}.theme{position:fixed;right:var(--space-4);top:var(--space-4);z-index:20}.code{margin:0;padding:var(--space-4);overflow:auto;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.kpi{font:700 var(--text-xl)/1 var(--font-display)}.mini{font-size:var(--text-sm);color:var(--color-text-muted)}@media(max-width:900px){.hero-grid,.grid.cols-3,.grid.cols-2{grid-template-columns:1fr}.title{font-size:clamp(2rem,4vw,3rem)}}

.theme{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 var(--space-4);border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:600;transition:all var(--transition-interactive)}
.theme:hover{background:var(--color-surface-2);box-shadow:var(--shadow-sm)}
[data-theme="dark"] .theme{background:var(--color-surface-2);color:var(--color-text);border-color:var(--color-border)}
[data-theme="dark"] .theme:hover{background:var(--color-surface-offset)}
