:root,[data-theme=light]{color-scheme:light;--bg: #fbf9f4;--bg2: #f4f1e8;--bg3: #ebe6d9;--surface: #ffffff;--surface2: #f2eee3;--border: #e6e0d1;--border2: #cfc7b4;--text: #34302a;--text-heading: #17140f;--muted: #625c4f;--dim: #726b5c;--accent: #0c6b4f;--accent2: #0e8560;--accent3: #b4531f;--teal: #0f766e;--rose: #b3261e;--amber: #96650b;--sky: #135c8d;--violet: #5b3fa8;--navbar-bg: rgba(251, 249, 244, .82);--card-shadow: 0 1px 2px rgba(35, 30, 20, .05), 0 14px 30px -14px rgba(35, 30, 20, .2);--card-shadow-lg: 0 2px 4px rgba(35, 30, 20, .05), 0 28px 60px -24px rgba(35, 30, 20, .28);--graph-bg: #fffdf8;--filter-bg: rgba(251, 249, 244, .92);--graph-panel: #faf7ef;--graph-border: #e6e0d1;--graph-link: rgba(52, 48, 42, .22);--graph-node-ring: #17140f;--graph-label: #625c4f;--graph-label-dim: #7b7465;--graph-badge-fg: #ffffff;--graph-code-bg: #f5f2e8;--graph-code-text: #0c6b4f;--graph-chip-bg: rgba(255, 255, 255, .92);--graph-inst-stroke: #fffdf8;--graph-inst-link: #b6ae9b;--graph-inst-label: #34302a;--graph-inst-type: #7b7465;--accent-soft: rgba(12, 107, 79, .07);--accent-soft-border: rgba(12, 107, 79, .18);--accent-btn-bg: rgba(12, 107, 79, .1);--accent-btn-border: rgba(12, 107, 79, .24);--accent-btn-hover: rgba(12, 107, 79, .18);--g-d0: #17140f;--g-d1: #0c6b4f;--g-d2: #0f766e;--g-d3: #135c8d;--g-d4: #b4531f;--g-d5: #2563a8;--g-d6: #5b3fa8;--g-d7: #a33055;--g-d8: #1f6f3a;--g-d9: #8a4b12;--ie-c0: #0c6b4f;--ie-c1: #b4531f;--ie-c2: #135c8d;--ie-c3: #96650b;--ie-c4: #2563a8;--ie-c5: #0f766e;--ie-c6: #1f6f3a;--ie-c7: #c2410c;--ie-c8: #4c4fb0;--ie-c9: #8a6a12}[data-theme=dark]{color-scheme:dark;--bg: #121310;--bg2: #1a1c17;--bg3: #23261f;--surface: rgba(255, 255, 255, .045);--surface2: rgba(255, 255, 255, .085);--border: rgba(240, 236, 224, .11);--border2: rgba(240, 236, 224, .22);--text: #dfdbcf;--text-heading: #fbf9f3;--muted: #a29c8c;--dim: #8b8474;--accent: #4ade9e;--accent2: #86efc0;--accent3: #ff8a4c;--teal: #2dd4bf;--rose: #fb7185;--amber: #fbbf24;--sky: #7dd3fc;--violet: #c4b5fd;--navbar-bg: rgba(18, 19, 16, .8);--card-shadow: 0 1px 2px rgba(0, 0, 0, .5), 0 18px 40px -18px rgba(0, 0, 0, .8);--card-shadow-lg: 0 2px 6px rgba(0, 0, 0, .55), 0 34px 70px -28px rgba(0, 0, 0, .9);--graph-bg: #0d0e0c;--filter-bg: rgba(18, 19, 16, .92);--graph-panel: rgba(255, 255, 255, .025);--graph-border: rgba(240, 236, 224, .09);--graph-link: rgba(240, 236, 224, .14);--graph-node-ring: #fbf9f3;--graph-label: #a29c8c;--graph-label-dim: #7e7869;--graph-badge-fg: #12130f;--graph-code-bg: rgba(0, 0, 0, .35);--graph-code-text: #6ee7b7;--graph-chip-bg: rgba(18, 19, 16, .85);--graph-inst-stroke: #23261f;--graph-inst-link: #4a4e42;--graph-inst-label: #e8e4d8;--graph-inst-type: #7e7869;--accent-soft: rgba(74, 222, 158, .08);--accent-soft-border: rgba(74, 222, 158, .18);--accent-btn-bg: rgba(74, 222, 158, .14);--accent-btn-border: rgba(74, 222, 158, .26);--accent-btn-hover: rgba(74, 222, 158, .24);--g-d0: #fbf9f3;--g-d1: #4ade9e;--g-d2: #2dd4bf;--g-d3: #7dd3fc;--g-d4: #fbbf24;--g-d5: #60a5fa;--g-d6: #c4b5fd;--g-d7: #f9a8d4;--g-d8: #6ee7b7;--g-d9: #fdba74;--ie-c0: #4ade9e;--ie-c1: #ff8a4c;--ie-c2: #7dd3fc;--ie-c3: #fbbf24;--ie-c4: #60a5fa;--ie-c5: #2dd4bf;--ie-c6: #6ee7b7;--ie-c7: #fca5a5;--ie-c8: #a5b4fc;--ie-c9: #fde68a}:root{--r-xs: 6px;--r-sm: 10px;--r: 14px;--r-lg: 20px;--r-xl: 28px;--font-display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", Consolas, monospace;--measure: 68ch;--ease: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:5rem;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:1rem;color:var(--text);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1,"liga" 1,"calt" 1;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;color:var(--text-heading);letter-spacing:-.015em;line-height:1.15;font-variation-settings:"SOFT" 0,"WONK" 0;text-wrap:balance}p{text-wrap:pretty}a{color:var(--accent);text-decoration:none;transition:color .18s var(--ease)}a:hover{color:var(--accent2)}button,input,textarea,select{font-family:inherit}code,pre,kbd{font-family:var(--font-mono)}::selection{background:color-mix(in srgb,var(--accent) 24%,transparent);color:var(--text-heading)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}hr{border:none;border-top:1px solid var(--border)}.eyebrow{font-family:var(--font-body);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--dim)}.rule{height:1px;background:linear-gradient(90deg,var(--border),transparent)}.site-footer{max-width:1280px;margin:0 auto;padding:2.5rem 1.5rem 3.5rem;border-top:1px solid var(--border);color:var(--dim);font-size:.82rem;line-height:1.7}.site-footer-inner{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:baseline;justify-content:space-between}.site-footer p{max-width:46rem}.site-footer strong{color:var(--muted);font-weight:600}.site-footer-links{display:flex;gap:1.25rem;flex-shrink:0}.site-footer-links a{color:var(--muted);font-weight:500}.site-footer-links a:hover{color:var(--accent)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:99px;border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background-clip:content-box;background-color:var(--dim)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.rise{animation:rise .7s var(--ease) both}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.navbar{position:fixed;top:0;left:0;right:0;z-index:300;background:transparent;border-bottom:1px solid transparent;transition:background .3s var(--ease),border-color .3s var(--ease),backdrop-filter .3s var(--ease)}.navbar.is-stuck{background:var(--navbar-bg);backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border-bottom-color:var(--border)}.navbar-inner{max-width:1280px;margin:0 auto;padding:.75rem 1.75rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.nav-brand{display:inline-flex;align-items:center;gap:.55rem;color:var(--text-heading);font-family:var(--font-display);font-size:1.16rem;font-weight:600;letter-spacing:-.02em}.nav-brand:hover{color:var(--text-heading)}.nav-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-soft-border);transition:transform .4s var(--ease)}.nav-brand:hover .nav-mark{transform:rotate(-8deg) scale(1.06)}.nav-tld{color:var(--accent)}.navbar-actions{display:flex;align-items:center;gap:.35rem}.nav-link{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .7rem;border-radius:var(--r-xs);font-size:.86rem;font-weight:500;color:var(--muted)}.nav-link:hover{color:var(--text-heading);background:var(--surface2)}.nav-api{margin-left:.3rem;padding:.38rem .8rem;border-radius:99px;font-size:.8rem;font-weight:600;letter-spacing:.04em;color:var(--accent);background:var(--accent-btn-bg);border:1px solid var(--accent-btn-border)}.nav-api:hover{background:var(--accent-btn-hover);color:var(--accent)}.theme-btn{display:grid;place-items:center;width:34px;height:34px;border-radius:99px;background:transparent;border:1px solid var(--border);color:var(--muted);cursor:pointer;transition:.2s var(--ease)}.theme-btn:hover{background:var(--surface2);color:var(--text-heading);border-color:var(--border2);transform:rotate(15deg)}.icon-sun{display:none}.icon-moon,[data-theme=dark] .icon-sun{display:block}[data-theme=dark] .icon-moon{display:none}.nav-progress{height:2px;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--accent),var(--accent3));will-change:transform}@media(max-width:720px){.navbar-inner{padding:.6rem 1rem}.nav-link:not(.nav-back){display:none}.nav-word{font-size:1rem}}
