/* Shared by docs.html and changelog.html: tokens, base, nav, footer */
:root,[data-theme="light"]{color-scheme:light;--bg:#f3efe7;--fg:#17171a;--mut:#6b675f;--line:rgba(23,23,26,.13);--card:#ebe6da;--card2:#faf8f3;--card3:#e2dccd;--acc:#d9531e;--bad:#c5371b;--good:#1f7a3d;--shadow:rgba(60,45,20,.16)}
[data-theme="dark"]{color-scheme:dark;--bg:#0e0e10;--fg:#f1ede6;--mut:#9b968c;--line:rgba(255,255,255,.1);--card:#19191c;--card2:#1f1f23;--card3:#2a2a2f;--acc:#ff7a3d;--bad:#ff7a66;--good:#4ade80;--shadow:rgba(0,0,0,.5)}
:root{--sans:Geist,system-ui,sans-serif;--serif:"Instrument Serif",Georgia,serif;--mono:"JetBrains Mono",ui-monospace,monospace}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background .35s,color .35s}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
code,.mono{font-family:var(--mono)}
::selection{background:var(--acc);color:#fff}

/* nav: floating pill, scroll-progress trail along its bottom edge */
.nav{position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:70;display:flex;align-items:center;gap:2px;padding:6px;border-radius:999px;color:var(--fg);background:color-mix(in srgb,var(--bg) 80%,transparent);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);border:1px solid var(--line);box-shadow:0 10px 30px color-mix(in srgb,var(--fg) 8%,transparent);transition:top .45s cubic-bezier(.2,.8,.2,1),background .35s;overflow:hidden}
.nav.tuck{top:-80px}
.nav-logo{display:flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border-radius:999px}
.nav-logo img{height:22px;width:auto;display:block}
.nav-logo .lg-d{display:none}
[data-theme="dark"] .nav-logo .lg-l{display:none}[data-theme="dark"] .nav-logo .lg-d{display:block}
.nav-logo span{font-family:"JetBrains Mono",monospace;font-size:14px;font-weight:600;letter-spacing:-.01em}
.nav-sep{width:1px;height:20px;background:var(--line);margin:0 4px}
.nav-l{font-size:13.5px;font-weight:500;padding:8px 12px;border-radius:999px;opacity:.75;transition:opacity .2s,background .2s}
.nav-l:hover,.nav-l.on{opacity:1;background:color-mix(in srgb,var(--fg) 8%,transparent)}
.nav-cta{margin-left:6px;display:flex;align-items:center;gap:8px;background:var(--fg);color:var(--bg);border:0;border-radius:999px;padding:9px 14px;font:500 12.5px "JetBrains Mono",monospace;cursor:pointer;transition:transform .2s}
.nav-cta:hover{transform:translateY(-1px)}
.nav-cta b{color:var(--acc);font-weight:500}
.theme-btn{background:none;border:0;color:var(--fg);width:36px;height:36px;border-radius:999px;display:grid;place-items:center;cursor:pointer}
.theme-btn:hover{background:color-mix(in srgb,var(--fg) 8%,transparent)}
.theme-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.theme-btn .moon{display:none}
[data-theme="dark"] .theme-btn .sun{display:none}[data-theme="dark"] .theme-btn .moon{display:block}
.nav-prog{position:absolute;left:22px;right:22px;bottom:0;height:2px;border-radius:2px;background:var(--acc);transform:scaleX(0);transform-origin:0 50%}
@media(max-width:640px){.nav-gh,.nav-sep{display:none}.nav-logo span{display:none}.nav-cta{padding:9px 11px}}

.ey{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc)}
.serif{font-family:var(--serif);font-weight:400}

.pfoot{border-top:1px solid var(--line);margin-top:12vh;padding:28px 6vw 40px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--mut);font-size:14px}
.pfoot div{display:flex;gap:22px}
.pfoot a:hover{color:var(--fg)}

.cpy{position:absolute;top:10px;right:10px;font:500 12px var(--sans);background:rgba(255,255,255,.08);color:#c9c5bd;border:0;border-radius:8px;padding:6px 10px;cursor:pointer}
.cpy:hover{background:rgba(255,255,255,.14)}
