@font-face{font-family:Lab Sans;src:url(/fonts/dmsans-lab.woff2)format("woff2");font-weight:100 1000;font-style:normal;font-display:swap}@font-face{font-family:Lab Sans;src:url(/fonts/namu-hz-sans.woff2)format("woff2");font-weight:100 1000;font-style:normal;font-display:swap;unicode-range:U+181,U+18A,U+198-199,U+19D,U+1B3-1B4,U+253,U+257,U+272,U+2BC,U+300-36F,U+2009,U+202F}@font-face{font-family:Lab Sans;src:url(/fonts/dmsans-lab-italic.woff2)format("woff2");font-weight:100 1000;font-style:italic;font-display:swap}@font-face{font-family:Lab Sans;src:url(/fonts/namu-hz-sans.woff2)format("woff2");font-weight:100 1000;font-style:italic;font-display:swap;unicode-range:U+181,U+18A,U+198-199,U+19D,U+1B3-1B4,U+253,U+257,U+272,U+2BC,U+300-36F,U+2009,U+202F}:root{--paper:#fffaf1;--harmattan:#f7f0e3;--surface-2:#f3e7d1;--dry-clay:#edd9b0;--kola:#6b3e1e;--kola-deep:#4a2a12;--ink:#1c1410;--muted:#7a6352;--sahel:#e8935a;--sahel-deep:#b4552a;--brick:#a8321f;--ink-raised:#271d17;--ink-chip:#30251d;--ink-soft:#b39f8c;--brick-light:#f29a85;--rule:#1c141024;--rule-soft:#1c141014;--rule-on-dark:#fffaf129;--ink-chip-hover:#3d3027;--glass-light:#fffaf1b8;--glass-dark:#1c1410b8;--bg:var(--paper);--bg-raised:var(--harmattan);--bg-chip:var(--surface-2);--bg-chip-hover:var(--dry-clay);--bg-band:var(--dry-clay);--bg-inverse:var(--ink);--text:var(--ink);--text-soft:var(--muted);--text-on-band:var(--kola-deep);--text-inverse:var(--paper);--accent:var(--kola);--on-accent:var(--paper);--accent-hover:var(--ink);--link:var(--kola);--focus:var(--kola);--signal:var(--sahel);--icon-accent:var(--sahel-deep);--danger:var(--brick);--line:var(--rule);--line-soft:var(--rule-soft);--glass:var(--glass-light);--font-sans:"Lab Sans", "DM Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--font-weight-regular:400;--font-weight-book:450;--font-weight-medium:500;--type-display:clamp(2.5rem, 1.708rem + 3.38vw, 4.75rem);--leading-display:1.02;--tracking-display:-.03em;--type-h1:clamp(2.125rem, 1.685rem + 1.878vw, 3.375rem);--leading-h1:1.06;--tracking-h1:-.022em;--type-h2:clamp(1.625rem, 1.317rem + 1.315vw, 2.5rem);--leading-h2:1.1;--tracking-h2:-.018em;--type-h3:clamp(1.25rem, 1.206rem + .1878vw, 1.375rem);--leading-h3:1.35;--tracking-h3:-.004em;--type-lede:clamp(1.188rem, 1.143rem + .1878vw, 1.312rem);--leading-lede:1.5;--tracking-lede:0em;--type-body:clamp(1.062rem, 1.04rem + .0939vw, 1.125rem);--leading-body:1.55;--tracking-body:.005em;--type-small:clamp(.875rem, .864rem + .04695vw, .9062rem);--leading-small:1.4;--tracking-small:.01em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:144px;--space-gutter-min:16px;--space-gutter-max:72px;--space-page:1296px;--space-read:680px;--radius-pill:9999px;--radius-card:24px;--radius-media:16px;--radius-control:12px;--radius-small:8px;--size-control-sm:34px;--size-control-md:44px;--size-control-lg:48px;--size-header:64px;--gutter:clamp(16px, 5vw, 72px);--ease:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--duration-fast:.15s;--duration-base:.25s;--duration-reveal:.8s;--duration-scene:1.1s;--shadow-float:0px 24px 48px -24px #1c14102e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark],.namu-dark{--bg:var(--ink);--bg-raised:var(--ink-raised);--bg-chip:var(--ink-chip);--bg-chip-hover:var(--ink-chip-hover);--bg-band:var(--ink-raised);--bg-inverse:var(--paper);--text:var(--paper);--text-soft:var(--ink-soft);--text-on-band:var(--paper);--text-inverse:var(--ink);--accent:var(--paper);--on-accent:var(--ink);--accent-hover:var(--dry-clay);--link:var(--dry-clay);--focus:var(--sahel);--signal:var(--sahel);--icon-accent:var(--sahel);--danger:var(--brick-light);--line:var(--rule-on-dark);--line-soft:var(--ink-chip);--glass:var(--glass-dark);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-reduced-motion:reduce){:root{--duration-reveal:1ms;--duration-scene:1ms}}
:root{--depth:4px;--base-accent:#1c1410eb;--base-ink:color-mix(in srgb, var(--ink) 55%, black);--base-chip:var(--dry-clay);--base-line:#1c14101f;--ring-soft:0 0 0 1px var(--line);--sidebar:248px;--rail:336px;--dock:72px;--theme-kola-bg:var(--kola);--theme-kola-fg:var(--paper);--theme-kola-base:var(--kola-deep);--theme-clay-bg:var(--dry-clay);--theme-clay-fg:var(--ink);--theme-clay-base:color-mix(in srgb, var(--dry-clay) 84%, var(--kola));--theme-ink-bg:var(--ink);--theme-ink-fg:var(--paper);--theme-ink-base:var(--base-ink)}[data-theme=kola]{--tb:var(--theme-kola-bg);--tf:var(--theme-kola-fg);--tbase:var(--theme-kola-base)}[data-theme=clay]{--tb:var(--theme-clay-bg);--tf:var(--theme-clay-fg);--tbase:var(--theme-clay-base)}[data-theme=ink]{--tb:var(--theme-ink-bg);--tf:var(--theme-ink-fg);--tbase:var(--theme-ink-base)}[data-theme=neutral]{--tb:var(--surface-2);--tf:var(--ink);--tbase:var(--dry-clay)}*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-sans);font-weight:var(--font-weight-book);font-size:var(--type-body);line-height:var(--leading-body);letter-spacing:var(--tracking-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01" 0;margin:0}h1,h2,h3,h4{font-weight:var(--font-weight-medium);text-wrap:balance;margin:0}p{text-wrap:pretty;margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;letter-spacing:inherit}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:12px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tabular{font-variant-numeric:tabular-nums}.btn{--face:var(--accent);--ink-on:var(--on-accent);--base:var(--base-accent);border-radius:var(--radius-pill);background:var(--face);min-height:52px;color:var(--ink-on);font-size:16.5px;font-weight:var(--font-weight-medium);letter-spacing:.005em;cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:0 var(--depth) 0 0 var(--base);transition:transform 55ms var(--ease), box-shadow 55ms var(--ease), background-color var(--duration-base) var(--ease), opacity var(--duration-base) var(--ease);margin-bottom:var(--depth);border:0;justify-content:center;align-items:center;gap:10px;padding:0 28px;display:inline-flex;position:relative;transform:translateY(0)}.btn:active:not(:disabled){transform:translateY(var(--depth));box-shadow:0 0 0 0 var(--base);transition-duration:40ms}.btn:disabled{opacity:.4;cursor:default}.btn-block{width:100%}.btn-secondary{--face:var(--bg-chip);--ink-on:var(--kola);--base:var(--base-chip)}.btn-quiet{--face:transparent;--ink-on:var(--text);--base:transparent;box-shadow:inset 0 0 0 1px var(--line);margin-bottom:0}.btn-quiet:active:not(:disabled){box-shadow:inset 0 0 0 1px var(--line);transform:scale(.98)}.btn-ink{--face:var(--ink);--ink-on:var(--paper);--base:var(--base-ink)}.btn-paper{--face:var(--paper);--ink-on:var(--ink);--base:color-mix(in srgb, var(--dry-clay) 80%, var(--kola))}.btn-sm{--depth:3px;min-height:40px;padding:0 18px;font-size:15px}.icon-btn{border-radius:var(--radius-pill);width:44px;height:44px;color:var(--text);cursor:pointer;transition:background-color var(--duration-fast) var(--ease), transform 60ms var(--ease);background:0 0;border:0;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--line-soft)}.icon-btn:active{transform:scale(.94)}.chip{border-radius:var(--radius-pill);background:var(--bg-chip);height:32px;color:var(--text);font-size:14px;font-weight:var(--font-weight-medium);white-space:nowrap;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.card{background:var(--bg-raised);border-radius:var(--radius-card);padding:var(--space-5)}.soft{color:var(--text-soft)}.page-title{letter-spacing:var(--tracking-h1);text-align:center;font-size:clamp(28px,2vw + 18px,38px);line-height:1.1}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}.rise{animation:rise .52s var(--ease-out) both}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}}html[data-motion=reduced] *,html[data-motion=reduced] :before,html[data-motion=reduced] :after{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}
