:root{--flexoki-black:#100f0f;--flexoki-paper:#fffcf0;--flexoki-950:#1c1b1a;--flexoki-900:#282726;--flexoki-850:#343331;--flexoki-800:#403e3c;--flexoki-700:#575653;--flexoki-600:#6f6e69;--flexoki-500:#878580;--flexoki-400:#9f9d96;--flexoki-300:#b7b5ac;--flexoki-200:#cecdc3;--flexoki-150:#dad8ce;--flexoki-100:#e6e4d9;--flexoki-50:#f2f0e5;--flexoki-red-50:#ffe1d5;--flexoki-red-100:#ffcabb;--flexoki-red-150:#fdb2a2;--flexoki-red-200:#f89a8a;--flexoki-red-300:#e8705f;--flexoki-red-400:#d14d41;--flexoki-red-500:#c03e35;--flexoki-red-600:#af3029;--flexoki-red-700:#942822;--flexoki-red-800:#6c201c;--flexoki-red-850:#551b18;--flexoki-red-900:#3e1715;--flexoki-red-950:#261312;--flexoki-orange-50:#ffe7ce;--flexoki-orange-100:#fed3af;--flexoki-orange-150:#fcc192;--flexoki-orange-200:#f9ae77;--flexoki-orange-300:#ec8b49;--flexoki-orange-400:#da702c;--flexoki-orange-500:#cb6120;--flexoki-orange-600:#bc5215;--flexoki-orange-700:#9d4310;--flexoki-orange-800:#71320d;--flexoki-orange-850:#59290d;--flexoki-orange-900:#40200d;--flexoki-orange-950:#27180e;--flexoki-yellow-50:#faeec6;--flexoki-yellow-100:#f6e2a0;--flexoki-yellow-150:#f1d67e;--flexoki-yellow-200:#eccb60;--flexoki-yellow-300:#dfb431;--flexoki-yellow-400:#d0a215;--flexoki-yellow-500:#be9207;--flexoki-yellow-600:#ad8301;--flexoki-yellow-700:#8e6b01;--flexoki-yellow-800:#664d01;--flexoki-yellow-850:#503d02;--flexoki-yellow-900:#3a2d04;--flexoki-yellow-950:#241e08;--flexoki-green-50:#edeecf;--flexoki-green-100:#dde2b2;--flexoki-green-150:#cdd597;--flexoki-green-200:#bec97e;--flexoki-green-300:#a0af54;--flexoki-green-400:#879a39;--flexoki-green-500:#768d21;--flexoki-green-600:#66800b;--flexoki-green-700:#536907;--flexoki-green-800:#3d4c07;--flexoki-green-850:#313d07;--flexoki-green-900:#252d09;--flexoki-green-950:#1a1e0c;--flexoki-cyan-50:#ddf1e4;--flexoki-cyan-100:#bfe8d9;--flexoki-cyan-150:#a2dece;--flexoki-cyan-200:#87d3c3;--flexoki-cyan-300:#5abdac;--flexoki-cyan-400:#3aa99f;--flexoki-cyan-500:#2f968d;--flexoki-cyan-600:#24837b;--flexoki-cyan-700:#1c6c66;--flexoki-cyan-800:#164f4a;--flexoki-cyan-850:#143f3c;--flexoki-cyan-900:#122f2c;--flexoki-cyan-950:#101f1d;--flexoki-blue-50:#e1eceb;--flexoki-blue-100:#c6dde8;--flexoki-blue-150:#abcfe2;--flexoki-blue-200:#92bfdb;--flexoki-blue-300:#66a0c8;--flexoki-blue-400:#4385be;--flexoki-blue-500:#3171b2;--flexoki-blue-600:#205ea6;--flexoki-blue-700:#1a4f8c;--flexoki-blue-800:#163b66;--flexoki-blue-850:#133051;--flexoki-blue-900:#12253b;--flexoki-blue-950:#101a24;--flexoki-purple-50:#f0eaec;--flexoki-purple-100:#e2d9e9;--flexoki-purple-150:#d3cae6;--flexoki-purple-200:#c4b9e0;--flexoki-purple-300:#a699d0;--flexoki-purple-400:#8b7ec8;--flexoki-purple-500:#735eb5;--flexoki-purple-600:#5e409d;--flexoki-purple-700:#4f3685;--flexoki-purple-800:#3c2a62;--flexoki-purple-850:#31234e;--flexoki-purple-900:#261c39;--flexoki-purple-950:#1a1623;--flexoki-magenta-50:#fee4e5;--flexoki-magenta-100:#fccfda;--flexoki-magenta-150:#f9b9cf;--flexoki-magenta-200:#f4a4c2;--flexoki-magenta-300:#e47da8;--flexoki-magenta-400:#ce5d97;--flexoki-magenta-500:#b74583;--flexoki-magenta-600:#a02f6f;--flexoki-magenta-700:#87285e;--flexoki-magenta-800:#641f46;--flexoki-magenta-850:#4f1b39;--flexoki-magenta-900:#39172b;--flexoki-magenta-950:#24131d;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-heading:var(--font-body);--font-mono:"Berkeley Mono", "MonoLisa", "IBM Plex Mono", "Source Code Pro", Menlo, SFMono-Regular, Consolas, monospace;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-loose:1.75;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.025em;--space-0:0;--space-px:1px;--space-0-5:.125rem;--space-1:.25rem;--space-1-5:.375rem;--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;--radius-none:0;--radius-sm:.125rem;--radius-md:.25rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-full:9999px;--border-width:1px;--border-width-2:2px;--shadow-sm:0 1px 2px 0 #100f0f0d;--shadow-md:0 4px 6px -1px #100f0f12, 0 2px 4px -2px #100f0f12;--shadow-lg:0 10px 15px -3px #100f0f14, 0 4px 6px -4px #100f0f14;--width-prose:80ch;--width-wide:1000px;--width-input:20em;--duration-fast:.1s;--duration-normal:.2s;--duration-slow:.3s;--easing:cubic-bezier(.4, 0, .2, 1);--focus-ring-width:2px;--focus-ring-offset:2px}@media (width<=860px){:root{--width-prose:88vw;--width-wide:100vw;--width-input:100%}}:root,.theme-light{color-scheme:light;--color-bg:var(--flexoki-paper);--color-bg-secondary:var(--flexoki-50);--color-bg-tertiary:var(--flexoki-100);--color-text:var(--flexoki-black);--color-text-secondary:var(--flexoki-600);--color-text-tertiary:var(--flexoki-500);--color-text-disabled:var(--flexoki-300);--color-border:var(--flexoki-200);--color-border-hover:var(--flexoki-300);--color-border-active:var(--flexoki-400);--color-surface:var(--flexoki-paper);--color-surface-raised:var(--flexoki-50);--color-surface-overlay:var(--flexoki-100);--color-action:var(--flexoki-blue-600);--color-action-hover:var(--flexoki-blue-700);--color-action-text:var(--flexoki-paper);--color-link:var(--flexoki-cyan-700);--color-link-hover:var(--flexoki-cyan-800);--color-selection:#bbdcce4d;--color-highlight:var(--flexoki-yellow-100);--color-focus-ring:var(--flexoki-blue-600);--color-danger:var(--flexoki-red-600);--color-danger-bg:var(--flexoki-red-50);--color-danger-hover:var(--flexoki-red-700);--color-warning:var(--flexoki-orange-700);--color-warning-bg:var(--flexoki-orange-50);--color-warning-hover:var(--flexoki-orange-800);--color-success:var(--flexoki-green-700);--color-success-bg:var(--flexoki-green-50);--color-success-hover:var(--flexoki-green-800);--color-info:var(--flexoki-blue-600);--color-info-bg:var(--flexoki-blue-50);--color-info-hover:var(--flexoki-blue-700);--color-red:var(--flexoki-red-600);--color-orange:var(--flexoki-orange-600);--color-yellow:var(--flexoki-yellow-600);--color-green:var(--flexoki-green-600);--color-cyan:var(--flexoki-cyan-600);--color-blue:var(--flexoki-blue-600);--color-purple:var(--flexoki-purple-600);--color-magenta:var(--flexoki-magenta-600);--color-code-bg:var(--flexoki-50);--color-code-border:var(--flexoki-100)}@media (prefers-color-scheme:dark){:root:not(.theme-light){color-scheme:dark;--color-bg:var(--flexoki-black);--color-bg-secondary:var(--flexoki-950);--color-bg-tertiary:var(--flexoki-900);--color-text:var(--flexoki-200);--color-text-secondary:var(--flexoki-400);--color-text-tertiary:var(--flexoki-500);--color-text-disabled:var(--flexoki-700);--color-border:var(--flexoki-800);--color-border-hover:var(--flexoki-700);--color-border-active:var(--flexoki-600);--color-surface:var(--flexoki-950);--color-surface-raised:var(--flexoki-900);--color-surface-overlay:var(--flexoki-850);--color-action:var(--flexoki-blue-400);--color-action-hover:var(--flexoki-blue-300);--color-action-text:var(--flexoki-black);--color-link:var(--flexoki-cyan-400);--color-link-hover:var(--flexoki-cyan-300);--color-selection:#1e5f5b4d;--color-highlight:var(--flexoki-yellow-900);--color-focus-ring:var(--flexoki-cyan-400);--color-danger:var(--flexoki-red-300);--color-danger-bg:var(--flexoki-red-950);--color-danger-hover:var(--flexoki-red-200);--color-warning:var(--flexoki-orange-400);--color-warning-bg:var(--flexoki-orange-950);--color-warning-hover:var(--flexoki-orange-300);--color-success:var(--flexoki-green-400);--color-success-bg:var(--flexoki-green-950);--color-success-hover:var(--flexoki-green-300);--color-info:var(--flexoki-blue-400);--color-info-bg:var(--flexoki-blue-950);--color-info-hover:var(--flexoki-blue-300);--color-red:var(--flexoki-red-400);--color-orange:var(--flexoki-orange-400);--color-yellow:var(--flexoki-yellow-400);--color-green:var(--flexoki-green-400);--color-cyan:var(--flexoki-cyan-400);--color-blue:var(--flexoki-blue-400);--color-purple:var(--flexoki-purple-400);--color-magenta:var(--flexoki-magenta-400);--color-code-bg:var(--flexoki-900);--color-code-border:var(--flexoki-800);--shadow-sm:0 1px 2px 0 #0003;--shadow-md:0 4px 6px -1px #00000040, 0 2px 4px -2px #00000040;--shadow-lg:0 10px 15px -3px #0000004d, 0 4px 6px -4px #0000004d}}.theme-dark{color-scheme:dark;--color-bg:var(--flexoki-black);--color-bg-secondary:var(--flexoki-950);--color-bg-tertiary:var(--flexoki-900);--color-text:var(--flexoki-200);--color-text-secondary:var(--flexoki-400);--color-text-tertiary:var(--flexoki-500);--color-text-disabled:var(--flexoki-700);--color-border:var(--flexoki-800);--color-border-hover:var(--flexoki-700);--color-border-active:var(--flexoki-600);--color-surface:var(--flexoki-950);--color-surface-raised:var(--flexoki-900);--color-surface-overlay:var(--flexoki-850);--color-action:var(--flexoki-blue-400);--color-action-hover:var(--flexoki-blue-300);--color-action-text:var(--flexoki-black);--color-link:var(--flexoki-cyan-400);--color-link-hover:var(--flexoki-cyan-300);--color-selection:#1e5f5b4d;--color-highlight:var(--flexoki-yellow-900);--color-focus-ring:var(--flexoki-cyan-400);--color-danger:var(--flexoki-red-300);--color-danger-bg:var(--flexoki-red-950);--color-danger-hover:var(--flexoki-red-200);--color-warning:var(--flexoki-orange-400);--color-warning-bg:var(--flexoki-orange-950);--color-warning-hover:var(--flexoki-orange-300);--color-success:var(--flexoki-green-400);--color-success-bg:var(--flexoki-green-950);--color-success-hover:var(--flexoki-green-300);--color-info:var(--flexoki-blue-400);--color-info-bg:var(--flexoki-blue-950);--color-info-hover:var(--flexoki-blue-300);--color-red:var(--flexoki-red-400);--color-orange:var(--flexoki-orange-400);--color-yellow:var(--flexoki-yellow-400);--color-green:var(--flexoki-green-400);--color-cyan:var(--flexoki-cyan-400);--color-blue:var(--flexoki-blue-400);--color-purple:var(--flexoki-purple-400);--color-magenta:var(--flexoki-magenta-400);--color-code-bg:var(--flexoki-900);--color-code-border:var(--flexoki-800);--shadow-sm:0 1px 2px 0 #0003;--shadow-md:0 4px 6px -1px #00000040, 0 2px 4px -2px #00000040;--shadow-lg:0 10px 15px -3px #0000004d, 0 4px 6px -4px #0000004d}*,:before,:after{box-sizing:border-box}*{margin:0}html{text-size-adjust:none;tab-size:4}body{line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}ul[role=list],ol[role=list]{padding:0;list-style:none}a:not([class]){text-decoration-skip-ink:auto;color:currentColor}textarea{resize:vertical;resize:block}:focus:not(:focus-visible){outline:none}:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}@media (prefers-reduced-motion:no-preference){html:has(:target){scroll-behavior:smooth}}body{font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-bg)}::selection{background-color:var(--color-selection)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text)}h1{font-size:var(--font-size-4xl);letter-spacing:var(--letter-spacing-tight);margin-block:var(--space-8) var(--space-4)}h2{font-size:var(--font-size-3xl);letter-spacing:var(--letter-spacing-tight);margin-block:var(--space-8) var(--space-3)}h3{font-size:var(--font-size-2xl);margin-block:var(--space-6) var(--space-3)}h4{font-size:var(--font-size-xl);margin-block:var(--space-6) var(--space-2)}h5{font-size:var(--font-size-lg);margin-block:var(--space-4) var(--space-2)}h6{font-size:var(--font-size-base);margin-block:var(--space-4) var(--space-2)}p{margin-block:var(--space-4);max-width:var(--width-prose)}h1+p,h2+p,h3+p,h4+p,h5+p,h6+p{margin-block-start:var(--space-2)}a{color:var(--color-link);text-underline-offset:.15em;transition:color var(--duration-fast) var(--easing);text-decoration:underline 1px}a:hover{color:var(--color-link-hover)}a:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}ul,ol{margin-block:var(--space-4);max-width:var(--width-prose);padding-inline-start:var(--space-6)}li{margin-block:var(--space-1)}li::marker{color:var(--color-text-tertiary)}li>ul,li>ol{margin-block:var(--space-1)}dl{margin-block:var(--space-4);max-width:var(--width-prose)}dt{font-weight:var(--font-weight-bold);margin-block-start:var(--space-3)}dd{color:var(--color-text-secondary);margin-block-start:var(--space-1);margin-inline-start:var(--space-6)}blockquote{border-inline-start:var(--border-width-2) solid var(--color-border-active);margin-block:var(--space-4);color:var(--color-text-secondary);max-width:var(--width-prose);margin-inline:0;padding-inline-start:var(--space-4);font-style:italic}blockquote cite{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-block-start:var(--space-2);font-style:normal;display:block}code,kbd,samp{font-family:var(--font-mono);font-size:.9em}:not(pre)>code{background-color:var(--color-code-bg);border:var(--border-width) solid var(--color-code-border);border-radius:var(--radius-md);padding:var(--space-0-5) var(--space-1)}pre{font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:var(--line-height-loose);background-color:var(--color-code-bg);border:var(--border-width) solid var(--color-code-border);border-radius:var(--radius-lg);padding:var(--space-4);margin-block:var(--space-4);tab-size:2;overflow-x:auto}pre code{font-size:inherit;background:0 0;border:none;padding:0}kbd{background-color:var(--color-surface-raised);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-0-5) var(--space-1-5);box-shadow:0 1px 0 var(--color-border)}hr{border:none;border-block-start:var(--border-width) solid var(--color-border);margin-block:var(--space-8)}strong,b{font-weight:var(--font-weight-bold)}small{font-size:var(--font-size-sm)}sub,sup{font-size:var(--font-size-xs);vertical-align:baseline;line-height:0;position:relative}sup{top:-.5em}sub{bottom:-.25em}abbr[title]{text-underline-offset:.15em;cursor:help;text-decoration:underline dotted}mark{background-color:var(--color-highlight);padding-inline:var(--space-0-5);border-radius:var(--radius-sm)}figure{margin-block:var(--space-6);margin-inline:0}figcaption{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-block-start:var(--space-2)}address{font-style:normal;line-height:var(--line-height-normal)}time{font-variant-numeric:tabular-nums}var{font-style:italic;font-family:var(--font-mono)}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);border:var(--border-width) solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--duration-fast) var(--easing), border-color var(--duration-fast) var(--easing), color var(--duration-fast) var(--easing), box-shadow var(--duration-fast) var(--easing);text-decoration:none;display:inline-flex}.btn:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{background-color:var(--color-action);color:var(--color-action-text);border-color:var(--color-action)}.btn-primary:hover{background-color:var(--color-action-hover);border-color:var(--color-action-hover)}.btn-secondary{background-color:var(--color-surface-raised);color:var(--color-text)}.btn-secondary:hover{background-color:var(--color-surface-overlay)}.btn-outline{color:var(--color-action);border-color:var(--color-action);background-color:#0000}.btn-outline:hover{background-color:var(--color-action);color:var(--color-action-text)}.btn-ghost{color:var(--color-text-secondary);background-color:#0000;border-color:#0000}.btn-ghost:hover{background-color:var(--color-surface-raised);color:var(--color-text)}.btn-danger{background-color:var(--color-danger);color:var(--color-action-text);border-color:var(--color-danger)}.btn-danger:hover{background-color:var(--color-danger-hover);border-color:var(--color-danger-hover)}.btn-sm{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--font-size-base)}.btn-block{width:100%;display:flex}.btn-loading{color:#0000;pointer-events:none;position:relative}.btn-loading:after{content:"";border:2px solid;border-radius:var(--radius-full);width:1em;height:1em;color:var(--color-action-text);border-inline-end-color:#0000;animation:.6s linear infinite btn-spin;position:absolute}@keyframes btn-spin{to{transform:rotate(360deg)}}.badge{align-items:center;gap:var(--space-1);padding:var(--space-0-5) var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);border-radius:var(--radius-md);white-space:nowrap;background-color:var(--color-surface-raised);color:var(--color-text-secondary);display:inline-flex}.badge-red{background-color:var(--flexoki-red-50);color:var(--color-red);border-color:var(--color-red)}.badge-orange{background-color:var(--flexoki-orange-50);color:var(--color-orange);border-color:var(--color-orange)}.badge-yellow{background-color:var(--flexoki-yellow-50);color:var(--color-yellow);border-color:var(--color-yellow)}.badge-green{background-color:var(--flexoki-green-50);color:var(--color-green);border-color:var(--color-green)}.badge-cyan{background-color:var(--flexoki-cyan-50);color:var(--color-cyan);border-color:var(--color-cyan)}.badge-blue{background-color:var(--flexoki-blue-50);color:var(--color-blue);border-color:var(--color-blue)}.badge-purple{background-color:var(--flexoki-purple-50);color:var(--color-purple);border-color:var(--color-purple)}.badge-magenta{background-color:var(--flexoki-magenta-50);color:var(--color-magenta);border-color:var(--color-magenta)}.theme-dark .badge-red{background-color:var(--flexoki-red-950)}.theme-dark .badge-orange{background-color:var(--flexoki-orange-950)}.theme-dark .badge-yellow{background-color:var(--flexoki-yellow-950)}.theme-dark .badge-green{background-color:var(--flexoki-green-950)}.theme-dark .badge-cyan{background-color:var(--flexoki-cyan-950)}.theme-dark .badge-blue{background-color:var(--flexoki-blue-950)}.theme-dark .badge-purple{background-color:var(--flexoki-purple-950)}.theme-dark .badge-magenta{background-color:var(--flexoki-magenta-950)}@media (prefers-color-scheme:dark){:root:not(.theme-light){& .badge-red{background-color:var(--flexoki-red-950)}& .badge-orange{background-color:var(--flexoki-orange-950)}& .badge-yellow{background-color:var(--flexoki-yellow-950)}& .badge-green{background-color:var(--flexoki-green-950)}& .badge-cyan{background-color:var(--flexoki-cyan-950)}& .badge-blue{background-color:var(--flexoki-blue-950)}& .badge-purple{background-color:var(--flexoki-purple-950)}& .badge-magenta{background-color:var(--flexoki-magenta-950)}}}.card{background-color:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-normal) var(--easing);overflow:hidden}.card:hover{box-shadow:var(--shadow-md)}.card-header{padding:var(--space-4) var(--space-5);border-block-end:var(--border-width) solid var(--color-border)}.card-header h3,.card-header h4{margin:0}.card-body{padding:var(--space-4) var(--space-5)}.card-body>:first-child{margin-block-start:0}.card-body>:last-child{margin-block-end:0}.card-footer{padding:var(--space-3) var(--space-5);border-block-start:var(--border-width) solid var(--color-border);background-color:var(--color-bg-secondary)}.card-image{aspect-ratio:16/9;object-fit:cover;border-radius:0;width:100%}.card-compact .card-header,.card-compact .card-body,.card-compact .card-footer{padding:var(--space-3) var(--space-4)}:root{--site-density:1;--site-accent:var(--flexoki-cyan-700);--site-accent-bg:var(--flexoki-cyan-50);--font-mono:"JetBrains Mono", "Berkeley Mono", "MonoLisa", "IBM Plex Mono", "Source Code Pro", Menlo, SFMono-Regular, Consolas, monospace}html.theme-dark{--site-accent:var(--flexoki-cyan-400);--site-accent-bg:var(--flexoki-cyan-950)}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;margin:0}::selection{background:var(--color-selection)}.mono{font-family:var(--font-mono)}.container{max-width:1180px;margin:0 auto;padding-inline:clamp(20px,4vw,48px)}.site-header{z-index:50;background:color-mix(in oklch, var(--color-bg), transparent 15%);backdrop-filter:saturate(140%)blur(8px);border-bottom:1px solid var(--color-border);position:sticky;top:0}.site-header .row{justify-content:space-between;align-items:center;gap:24px;padding-block:14px;display:flex}.brand{color:inherit;letter-spacing:-.01em;align-items:center;gap:10px;font-weight:600;text-decoration:none;display:flex}.brand .mark{width:28px;height:28px}.brand .word{font-size:17px}.brand .word .slash{color:var(--color-text-tertiary);margin-inline:2px;font-weight:400}.site-nav{align-items:center;gap:28px;font-size:14px;display:flex}.site-nav a{color:var(--color-text-secondary);transition:color var(--duration-fast) var(--easing);text-decoration:none}.site-nav a:hover,.site-nav a.active{color:var(--color-text)}.site-nav a.active{font-weight:500}.site-nav .gh{border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);align-items:center;gap:6px;padding:6px 12px;font-weight:500;display:inline-flex}.site-nav .gh:hover{background:var(--color-surface-raised)}.theme-toggle{border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;width:32px;height:32px;color:var(--color-text-secondary);background:0 0;place-items:center;display:grid}.theme-toggle:hover{color:var(--color-text);background:var(--color-surface-raised)}@media (width<=720px){.site-nav .nav-link{display:none}}.site-footer{border-top:1px solid var(--color-border);background:var(--color-surface-raised);padding-block:64px 32px}.site-footer.compact{font-family:var(--font-mono);color:var(--color-text-tertiary);padding-block:32px;font-size:12px}.site-footer.compact .row{flex-wrap:wrap;justify-content:space-between;gap:16px;display:flex}.site-footer.compact a{color:var(--color-text-secondary);text-decoration:none}.site-footer.compact a:hover{color:var(--color-text)}.footer-grid{grid-template-columns:1.5fr 1fr 2fr;gap:48px;margin-bottom:48px;display:grid}@media (width<=720px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-brand{grid-column:span 2}}.footer-brand .word{font-size:18px;font-weight:600}.footer-tagline{color:var(--color-text-secondary);max-width:36ch;margin:14px 0 0;font-size:14px;line-height:1.55}.footer-brand-links{align-items:center;gap:8px;margin-top:14px;font-size:14px;display:flex}.footer-brand-links a{color:var(--color-text-secondary);text-decoration:none}.footer-brand-links a:hover{color:var(--color-text)}.footer-brand-links span{color:var(--color-text-tertiary)}.footer-col ul.two-col{grid-template-columns:1fr 1fr;column-gap:16px;display:grid}.footer-col .all-link{color:var(--site-accent)}.footer-col li:has(.all-link){margin-top:4px}.footer-col h4{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-tertiary);margin:0 0 14px;font-size:11px;font-weight:500}.footer-col ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.footer-col a{color:var(--color-text-secondary);font-size:14px;text-decoration:none}.footer-col a:hover{color:var(--color-text)}.footer-col a .ext{color:var(--color-text-tertiary);margin-inline-start:4px;font-size:11px}.footer-bottom{border-top:1px solid var(--color-border);font-family:var(--font-mono);color:var(--color-text-tertiary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:24px;font-size:12px;display:flex}.footer-bottom a{color:var(--color-text-secondary);text-decoration:none}.footer-bottom a:hover{color:var(--color-text)}.btn-primary{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.btn-primary:hover{background:var(--color-text);color:var(--color-bg);opacity:.88}
