/* GENERATED by gtm-design-profile/derive.py for oeyyeo.com at 2026-09-28T00:13:03+00:00. Layered over the house TOKENS. Do not edit. */
:root{
  --fs--2:11px; --fs--1:12px; --fs-0:15px; --fs-1:20px; --fs-2:27px; --fs-3:36px;
  --lh--2:1.45; --lh--1:1.5; --lh-0:1.55; --lh-1:1.35; --lh-2:1.25; --lh-3:1.2;
  --measure:57ch; /* 68 average characters */
  --mono:ui-monospace, 'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace;
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:20px; --sp-6:24px; --sp-7:32px; --sp-8:40px; --sp-9:48px; --sp-section:60px; --sp-page:96px;
  --header-h:60px; --bp-stack:640px; --bp-split:760px; --bp-wide:1000px;
}
body{font-size:var(--fs-0);line-height:var(--lh-0)}
h1{font-size:var(--fs-3);line-height:var(--lh-3);font-weight:600;letter-spacing:0}
h2{font-size:var(--fs-2);line-height:var(--lh-2);font-weight:600}
h3{font-size:var(--fs-1);line-height:var(--lh-1);font-weight:600}
@media (max-width:639px){h1{font-size:var(--fs-3);line-height:var(--lh-3)}}
.label,.k,h2.sec{font-size:var(--fs--2);line-height:var(--lh--2);letter-spacing:1.3px;text-transform:uppercase;font-weight:600}
.meta,.muted-sm,small{font-size:var(--fs--1);line-height:var(--lh--1)}
p,.prose li,.lede,.description{max-width:var(--measure)}
.list>*,.frames>*{min-width:0}
code,pre,kbd,samp,.hash{font-family:var(--mono);font-size:var(--fs--1);line-height:var(--lh--1);font-variant-numeric:tabular-nums}
.num,.hash,td.num{font-variant-numeric:tabular-nums}
.grid>*,.two>*,.stats>*{min-width:0}
pre{max-width:100%;overflow:auto}
.nav{position:sticky;top:0;z-index:10;min-height:var(--header-h);background:var(--paper);border-bottom:2px solid var(--ice)}
@media (pointer:coarse){input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),:is(select,textarea):not([hidden]){font-size:max(16px,1em)}}
@media (max-width:640px){.wrap{padding-left:16px;padding-right:16px}}
@media (max-height: 500px) and (orientation: landscape){
  .nav{position:static}
  h2.sec{margin-top:calc(var(--sp-section) * 0.6)}
  .hero{margin:var(--sp-2) 0 var(--sp-5)}
  .wrap{padding-top:var(--sp-4)}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none !important;animation:none !important}}
