:root{--bg:#fff;--fg:#1a1a1a;--muted:#5c6670;--accent:#2563eb;--border:#e3e7ea;--code-bg:#f4f6f8;--max:52rem}:root[data-theme=dark]{--bg:#15181c;--fg:#e6e9ec;--muted:#9aa4ad;--accent:#6ea8ff;--border:#2a2f36;--code-bg:#1d2228}*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6}.site-header{position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;padding:.75rem 1.5rem;background:var(--bg);border-bottom:1px solid var(--border)}.brand{font-weight:700;text-decoration:none;color:var(--fg)}.site-header nav{display:flex;flex-wrap:wrap;gap:.25rem 1rem;flex:1}.site-header nav a{text-decoration:none;color:var(--muted);font-size:.95rem}.site-header nav a:hover{color:var(--fg)}.site-header nav a[aria-current=page]{color:var(--accent);font-weight:600}.lang-switcher{display:flex;gap:.5rem}.lang-switcher .lang{text-decoration:none;color:var(--muted);font-size:.85rem}.lang-switcher .lang[aria-current=true]{color:var(--fg);font-weight:600}.theme-toggle{background:0 0;border:1px solid var(--border);border-radius:.4rem;cursor:pointer;padding:.2rem .5rem;color:var(--fg)}.theme-icon-moon{display:none}:root[data-theme=dark] .theme-icon-sun{display:none}:root[data-theme=dark] .theme-icon-moon{display:inline}main{max-width:var(--max);margin:0 auto;padding:2rem 1.5rem 4rem}main h1{font-size:2rem;line-height:1.2;margin-top:0}main h2{font-size:1.5rem;margin-top:2.5rem;border-bottom:1px solid var(--border);padding-bottom:.3rem}main h3{font-size:1.2rem;margin-top:1.75rem}a{color:var(--accent)}code{background:var(--code-bg);padding:.1rem .35rem;border-radius:.3rem;font-size:.9em;font-family:ui-monospace,SF Mono,Cascadia Code,monospace}pre{background:var(--code-bg);padding:1rem;border-radius:.5rem;overflow-x:auto;border:1px solid var(--border)}pre code{background:0 0;padding:0}table{border-collapse:collapse;width:100%;margin:1rem 0;font-size:.95rem}th,td{border:1px solid var(--border);padding:.5rem .7rem;text-align:left;vertical-align:top}th{background:var(--code-bg)}blockquote{margin:1rem 0;padding:.5rem 1rem;border-left:3px solid var(--accent);color:var(--muted)}.site-footer{max-width:var(--max);margin:0 auto;padding:1.5rem;border-top:1px solid var(--border);color:var(--muted);font-size:.9rem}