@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}:root{--app-font-sans:var(--font-inter),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--app-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--app-font-size-xs:0.6875rem;--app-font-size-sm:0.75rem;--app-font-size-md:0.875rem;--app-font-size-lg:1rem;--app-font-size-xl:1.125rem;--app-font-size-2xl:1.25rem;--app-font-size-3xl:1.5rem;--app-font-weight-regular:400;--app-font-weight-medium:500;--app-font-weight-semibold:600;--app-font-weight-bold:700;--app-line-height-tight:1.15;--app-line-height-body:1.75}.u-font-xs{font-size:var(--app-font-size-xs)}.u-font-sm{font-size:var(--app-font-size-sm)}.u-font-md{font-size:var(--app-font-size-md)}.u-font-lg{font-size:var(--app-font-size-lg)}.u-font-xl{font-size:var(--app-font-size-xl)}.u-font-2xl{font-size:var(--app-font-size-2xl)}.u-font-3xl{font-size:var(--app-font-size-3xl)}.u-weight-regular{font-weight:var(--app-font-weight-regular)}.u-weight-medium{font-weight:var(--app-font-weight-medium)}.u-weight-semibold{font-weight:var(--app-font-weight-semibold)}.u-weight-bold{font-weight:var(--app-font-weight-bold)}.u-font-code{font-family:var(--app-font-mono)}.u-italic{font-style:italic}.u-leading-tight{line-height:var(--app-line-height-tight)}.u-leading-body{line-height:var(--app-line-height-body)}.u-text-balance{text-wrap:balance}.u-text-pretty{text-wrap:pretty}:root{--app-space-0:0;--app-space-1:0.25rem;--app-space-2:0.5rem;--app-space-3:0.75rem;--app-space-4:1rem;--app-space-5:1.5rem;--app-space-6:2rem;--app-space-7:3rem;--app-space-8:4rem;--app-space-9:6rem;--app-space-10:8rem;--app-space-section:clamp(5rem,12vw,10rem);--app-gutter:clamp(1.25rem,4vw,3rem)}.space0{gap:var(--app-space-0)}.rowSpace0{row-gap:var(--app-space-0)}.columnSpace0{column-gap:var(--app-space-0)}.m0{margin:var(--app-space-0)}.mx0{margin-inline:var(--app-space-0)}.my0{margin-block:var(--app-space-0)}.mt0{margin-top:var(--app-space-0)}.mr0{margin-right:var(--app-space-0)}.mb0{margin-bottom:var(--app-space-0)}.ml0{margin-left:var(--app-space-0)}.p0{padding:var(--app-space-0)}.px0{padding-inline:var(--app-space-0)}.py0{padding-block:var(--app-space-0)}.pt0{padding-top:var(--app-space-0)}.pr0{padding-right:var(--app-space-0)}.pb0{padding-bottom:var(--app-space-0)}.pl0{padding-left:var(--app-space-0)}.space1{gap:var(--app-space-1)}.rowSpace1{row-gap:var(--app-space-1)}.columnSpace1{column-gap:var(--app-space-1)}.m1{margin:var(--app-space-1)}.mx1{margin-inline:var(--app-space-1)}.my1{margin-block:var(--app-space-1)}.mt1{margin-top:var(--app-space-1)}.mr1{margin-right:var(--app-space-1)}.mb1{margin-bottom:var(--app-space-1)}.ml1{margin-left:var(--app-space-1)}.p1{padding:var(--app-space-1)}.px1{padding-inline:var(--app-space-1)}.py1{padding-block:var(--app-space-1)}.pt1{padding-top:var(--app-space-1)}.pr1{padding-right:var(--app-space-1)}.pb1{padding-bottom:var(--app-space-1)}.pl1{padding-left:var(--app-space-1)}.space2{gap:var(--app-space-2)}.rowSpace2{row-gap:var(--app-space-2)}.columnSpace2{column-gap:var(--app-space-2)}.m2{margin:var(--app-space-2)}.mx2{margin-inline:var(--app-space-2)}.my2{margin-block:var(--app-space-2)}.mt2{margin-top:var(--app-space-2)}.mr2{margin-right:var(--app-space-2)}.mb2{margin-bottom:var(--app-space-2)}.ml2{margin-left:var(--app-space-2)}.p2{padding:var(--app-space-2)}.px2{padding-inline:var(--app-space-2)}.py2{padding-block:var(--app-space-2)}.pt2{padding-top:var(--app-space-2)}.pr2{padding-right:var(--app-space-2)}.pb2{padding-bottom:var(--app-space-2)}.pl2{padding-left:var(--app-space-2)}.space3{gap:var(--app-space-3)}.rowSpace3{row-gap:var(--app-space-3)}.columnSpace3{column-gap:var(--app-space-3)}.m3{margin:var(--app-space-3)}.mx3{margin-inline:var(--app-space-3)}.my3{margin-block:var(--app-space-3)}.mt3{margin-top:var(--app-space-3)}.mr3{margin-right:var(--app-space-3)}.mb3{margin-bottom:var(--app-space-3)}.ml3{margin-left:var(--app-space-3)}.p3{padding:var(--app-space-3)}.px3{padding-inline:var(--app-space-3)}.py3{padding-block:var(--app-space-3)}.pt3{padding-top:var(--app-space-3)}.pr3{padding-right:var(--app-space-3)}.pb3{padding-bottom:var(--app-space-3)}.pl3{padding-left:var(--app-space-3)}.space4{gap:var(--app-space-4)}.rowSpace4{row-gap:var(--app-space-4)}.columnSpace4{column-gap:var(--app-space-4)}.m4{margin:var(--app-space-4)}.mx4{margin-inline:var(--app-space-4)}.my4{margin-block:var(--app-space-4)}.mt4{margin-top:var(--app-space-4)}.mr4{margin-right:var(--app-space-4)}.mb4{margin-bottom:var(--app-space-4)}.ml4{margin-left:var(--app-space-4)}.p4{padding:var(--app-space-4)}.px4{padding-inline:var(--app-space-4)}.py4{padding-block:var(--app-space-4)}.pt4{padding-top:var(--app-space-4)}.pr4{padding-right:var(--app-space-4)}.pb4{padding-bottom:var(--app-space-4)}.pl4{padding-left:var(--app-space-4)}.space5{gap:var(--app-space-5)}.rowSpace5{row-gap:var(--app-space-5)}.columnSpace5{column-gap:var(--app-space-5)}.m5{margin:var(--app-space-5)}.mx5{margin-inline:var(--app-space-5)}.my5{margin-block:var(--app-space-5)}.mt5{margin-top:var(--app-space-5)}.mr5{margin-right:var(--app-space-5)}.mb5{margin-bottom:var(--app-space-5)}.ml5{margin-left:var(--app-space-5)}.p5{padding:var(--app-space-5)}.px5{padding-inline:var(--app-space-5)}.py5{padding-block:var(--app-space-5)}.pt5{padding-top:var(--app-space-5)}.pr5{padding-right:var(--app-space-5)}.pb5{padding-bottom:var(--app-space-5)}.pl5{padding-left:var(--app-space-5)}.space6{gap:var(--app-space-6)}.rowSpace6{row-gap:var(--app-space-6)}.columnSpace6{column-gap:var(--app-space-6)}.m6{margin:var(--app-space-6)}.mx6{margin-inline:var(--app-space-6)}.my6{margin-block:var(--app-space-6)}.mt6{margin-top:var(--app-space-6)}.mr6{margin-right:var(--app-space-6)}.mb6{margin-bottom:var(--app-space-6)}.ml6{margin-left:var(--app-space-6)}.p6{padding:var(--app-space-6)}.px6{padding-inline:var(--app-space-6)}.py6{padding-block:var(--app-space-6)}.pt6{padding-top:var(--app-space-6)}.pr6{padding-right:var(--app-space-6)}.pb6{padding-bottom:var(--app-space-6)}.pl6{padding-left:var(--app-space-6)}.space7{gap:var(--app-space-7)}.rowSpace7{row-gap:var(--app-space-7)}.columnSpace7{column-gap:var(--app-space-7)}.m7{margin:var(--app-space-7)}.mx7{margin-inline:var(--app-space-7)}.my7{margin-block:var(--app-space-7)}.mt7{margin-top:var(--app-space-7)}.mr7{margin-right:var(--app-space-7)}.mb7{margin-bottom:var(--app-space-7)}.ml7{margin-left:var(--app-space-7)}.p7{padding:var(--app-space-7)}.px7{padding-inline:var(--app-space-7)}.py7{padding-block:var(--app-space-7)}.pt7{padding-top:var(--app-space-7)}.pr7{padding-right:var(--app-space-7)}.pb7{padding-bottom:var(--app-space-7)}.pl7{padding-left:var(--app-space-7)}.space8{gap:var(--app-space-8)}.rowSpace8{row-gap:var(--app-space-8)}.columnSpace8{column-gap:var(--app-space-8)}.m8{margin:var(--app-space-8)}.mx8{margin-inline:var(--app-space-8)}.my8{margin-block:var(--app-space-8)}.mt8{margin-top:var(--app-space-8)}.mr8{margin-right:var(--app-space-8)}.mb8{margin-bottom:var(--app-space-8)}.ml8{margin-left:var(--app-space-8)}.p8{padding:var(--app-space-8)}.px8{padding-inline:var(--app-space-8)}.py8{padding-block:var(--app-space-8)}.pt8{padding-top:var(--app-space-8)}.pr8{padding-right:var(--app-space-8)}.pb8{padding-bottom:var(--app-space-8)}.pl8{padding-left:var(--app-space-8)}.space9{gap:var(--app-space-9)}.rowSpace9{row-gap:var(--app-space-9)}.columnSpace9{column-gap:var(--app-space-9)}.m9{margin:var(--app-space-9)}.mx9{margin-inline:var(--app-space-9)}.my9{margin-block:var(--app-space-9)}.mt9{margin-top:var(--app-space-9)}.mr9{margin-right:var(--app-space-9)}.mb9{margin-bottom:var(--app-space-9)}.ml9{margin-left:var(--app-space-9)}.p9{padding:var(--app-space-9)}.px9{padding-inline:var(--app-space-9)}.py9{padding-block:var(--app-space-9)}.pt9{padding-top:var(--app-space-9)}.pr9{padding-right:var(--app-space-9)}.pb9{padding-bottom:var(--app-space-9)}.pl9{padding-left:var(--app-space-9)}.space10{gap:var(--app-space-10)}.rowSpace10{row-gap:var(--app-space-10)}.columnSpace10{column-gap:var(--app-space-10)}.m10{margin:var(--app-space-10)}.mx10{margin-inline:var(--app-space-10)}.my10{margin-block:var(--app-space-10)}.mt10{margin-top:var(--app-space-10)}.mr10{margin-right:var(--app-space-10)}.mb10{margin-bottom:var(--app-space-10)}.ml10{margin-left:var(--app-space-10)}.p10{padding:var(--app-space-10)}.px10{padding-inline:var(--app-space-10)}.py10{padding-block:var(--app-space-10)}.pt10{padding-top:var(--app-space-10)}.pr10{padding-right:var(--app-space-10)}.pb10{padding-bottom:var(--app-space-10)}.pl10{padding-left:var(--app-space-10)}.u-block{display:block}.u-flex{display:flex}.u-inline-flex{display:inline-flex}.u-grid{display:grid}.u-hidden{display:none}.u-flex-1{flex:1 1}.u-flex-none{flex:0 0 auto}.u-flex-row{flex-direction:row}.u-flex-column{flex-direction:column}.u-flex-wrap{flex-wrap:wrap}.u-flex-nowrap{flex-wrap:nowrap}.u-items-start{align-items:flex-start}.u-items-center{align-items:center}.u-items-end{align-items:flex-end}.u-items-baseline{align-items:baseline}.u-justify-start{justify-content:flex-start}.u-justify-center{justify-content:center}.u-justify-end{justify-content:flex-end}.u-justify-between{justify-content:space-between}.u-justify-items-start{justify-items:start}.u-justify-items-center{justify-items:center}.u-justify-items-end{justify-items:end}.u-justify-self-start{justify-self:start}.u-text-left{text-align:left}.u-text-center{text-align:center}.u-text-right{text-align:right}.u-underline{text-decoration-line:underline}.u-uppercase{text-transform:uppercase}.u-w-full{width:100%}.u-max-w-reading{max-width:var(--app-content-reading)}.u-min-w-0{min-width:0}.u-radius-sm{border-radius:var(--app-radius-small)}.u-radius-md{border-radius:var(--app-radius-medium)}.u-radius-lg{border-radius:var(--app-radius-large)}.u-radius-pill{border-radius:var(--app-radius-pill)}.u-icon-xs{width:.875rem;height:.875rem}.u-icon-sm{width:1.125rem;height:1.125rem}.u-icon-md{width:1.5rem;height:1.5rem}.u-icon-lg{width:2rem;height:2rem}.u-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;padding:0;border:0;margin:-1px;clip:rect(0,0,0,0);white-space:nowrap}@media(min-width:48rem){.u-md-flex{display:flex}.u-md-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.u-text-primary{color:var(--app-color-text)}.u-text-secondary{color:var(--app-color-text-muted)}.u-text-subtle{color:var(--app-color-text-subtle)}.u-text-success{color:var(--app-color-success)}.u-text-warn{color:var(--app-color-warn)}.u-text-error{color:var(--app-color-error)}.u-text-mosaic{color:var(--app-color-mosaic)}.u-text-cobalt{color:var(--app-color-cobalt)}.u-text-amethyst{color:var(--app-color-amethyst)}.u-text-verdant{color:var(--app-color-verdant)}.u-text-champion{color:var(--app-color-champion)}.u-text-ignis{color:var(--app-color-ignis)}.u-text-fiery{color:var(--app-color-fiery)}.u-bg-background{background:var(--app-color-background)}.u-bg-surface{background:var(--app-color-surface)}.u-bg-subtle{background:var(--app-color-fill-subtle)}.u-bg-code-surface{background:var(--app-color-code-surface)}:root{color-scheme:light;--app-color-background:#f4f1eb;--app-color-surface:#f4f1eb;--app-color-text:#1c1b19;--app-color-text-muted:#625f59;--app-color-text-subtle:#6f6b64;--app-color-border:rgba(28,27,25,0.12);--app-color-border-strong:rgba(28,27,25,0.22);--app-color-fill-subtle:rgba(28,27,25,0.04);--app-color-code-surface:#e9e4dc;--app-color-primary:#1c1b19;--app-color-on-primary:#f4f1eb;--app-color-focus:#5f5b55;--app-color-success:#2f7d32;--app-color-warn:#8a6500;--app-color-error:#b5322a;--app-color-mosaic:#08788e;--app-color-cobalt:#356fa8;--app-color-amethyst:#7650a6;--app-color-verdant:#347748;--app-color-champion:#846400;--app-color-ignis:#ad4e20;--app-color-fiery:#b83f55;--app-color-game-board:rgba(28,27,25,0.025);--app-color-game-grid:rgba(28,27,25,0.08);--app-radius-small:0.75rem;--app-radius-medium:1.25rem;--app-radius-large:2rem;--app-radius-pill:999px;--app-content-wide:96rem;--app-content-narrow:45rem;--app-content-index:42.5rem;--app-content-reading:46rem;--app-header-height:3.5rem;--app-transition-fast:140ms cubic-bezier(0.22,1,0.36,1);--app-transition-base:220ms cubic-bezier(0.22,1,0.36,1);--app-z-sticky:100}html.dark{color-scheme:dark;--app-color-background:#1a1a1a;--app-color-surface:#1a1a1a;--app-color-text:#e5e5e5;--app-color-text-muted:#a3a3a3;--app-color-text-subtle:#858585;--app-color-border:rgba(255,255,255,0.12);--app-color-border-strong:rgba(255,255,255,0.22);--app-color-fill-subtle:rgba(255,255,255,0.05);--app-color-code-surface:#242424;--app-color-primary:#e5e5e5;--app-color-on-primary:#1a1a1a;--app-color-focus:#b8b8b8;--app-color-success:#88a27e;--app-color-warn:#c1a564;--app-color-error:#c16e65;--app-color-mosaic:#75a8b5;--app-color-cobalt:#7f9fc2;--app-color-amethyst:#a18bb8;--app-color-verdant:#82a389;--app-color-champion:#c3a45f;--app-color-ignis:#c98358;--app-color-fiery:#cc7882;--app-color-game-board:rgba(255,255,255,0.025);--app-color-game-grid:rgba(255,255,255,0.08)}@media(prefers-color-scheme:dark){html:not(.light){color-scheme:dark;--app-color-background:#1a1a1a;--app-color-surface:#1a1a1a;--app-color-text:#e5e5e5;--app-color-text-muted:#a3a3a3;--app-color-text-subtle:#858585;--app-color-border:rgba(255,255,255,0.12);--app-color-border-strong:rgba(255,255,255,0.22);--app-color-fill-subtle:rgba(255,255,255,0.05);--app-color-code-surface:#242424;--app-color-primary:#e5e5e5;--app-color-on-primary:#1a1a1a;--app-color-focus:#b8b8b8;--app-color-success:#88a27e;--app-color-warn:#c1a564;--app-color-error:#c16e65;--app-color-mosaic:#75a8b5;--app-color-cobalt:#7f9fc2;--app-color-amethyst:#a18bb8;--app-color-verdant:#82a389;--app-color-champion:#c3a45f;--app-color-ignis:#c98358;--app-color-fiery:#cc7882;--app-color-game-board:rgba(255,255,255,0.025);--app-color-game-grid:rgba(255,255,255,0.08)}}html{scroll-behavior:smooth}body,html{min-height:100%}body{margin:0;color:var(--app-color-text);background:var(--app-color-background);font-family:var(--app-font-sans);font-size:var(--app-font-size-md);font-feature-settings:"kern";font-kerning:normal;line-height:var(--app-line-height-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:after,:before{box-sizing:border-box}h1,h2,h3,ol,p,ul{margin:0}ol,ul{padding:0}ul{list-style-type:square}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}::selection{color:var(--app-color-on-primary);background:var(--app-color-primary)}:focus-visible{outline:2px solid var(--app-color-focus);outline-offset:3px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.app-breadcrumbs{display:flex;min-width:0;flex:1 1;align-items:center;gap:var(--app-space-2);overflow:hidden;font-size:var(--app-font-size-sm);font-weight:var(--app-font-weight-medium);white-space:nowrap}.app-breadcrumbs__current,.app-breadcrumbs__home,.app-breadcrumbs__section,.app-breadcrumbs__separator{overflow:hidden;min-width:0;text-overflow:ellipsis}.app-breadcrumbs__home,.app-breadcrumbs__section,.app-breadcrumbs__separator{flex:0 0 auto}.app-breadcrumbs__home{max-width:min(8rem,24vw)}.app-breadcrumbs__section{max-width:min(12rem,28vw)}.app-breadcrumbs__separator{color:var(--app-color-text-subtle)}.app-breadcrumbs__current{display:flex;flex:1 1 auto;align-items:center;gap:var(--app-space-1);color:var(--app-color-text-muted)}.app-breadcrumbs__current>svg{flex:0 0 auto}.app-breadcrumbs__current-label{overflow:hidden;min-width:0;text-overflow:ellipsis}.app-breadcrumbs__section[aria-current=page]{color:var(--app-color-text-muted)}@media(max-width:32rem){.app-breadcrumbs__home,.app-breadcrumbs__separator--home{display:none}}.app-container{display:flex;min-height:100dvh;flex-direction:column}.app-container__main{display:flex;min-height:100vh;min-height:100dvh;flex:1 1}.app-skip-link{position:fixed;z-index:calc(var(--app-z-sticky) + 1);top:var(--app-space-2);left:var(--app-gutter);padding:var(--app-space-2) var(--app-space-3);border-radius:var(--app-radius-small);color:var(--app-color-on-primary);background:var(--app-color-primary);transform:translateY(calc(-100% - var(--app-space-4)));transition:transform var(--app-transition-fast)}.app-skip-link:focus-visible{outline-color:var(--app-color-background);transform:translateY(0)}.app-footer{display:flex;width:100%;max-width:var(--app-content-wide);flex-direction:column;align-items:center;gap:var(--app-space-4);margin-inline:auto;padding:var(--app-space-6) var(--app-gutter);color:var(--app-color-text-muted);font-size:var(--app-font-size-sm)}.app-footer__social-link{display:grid;width:2.5rem;height:2.5rem;place-items:center;transition:color var(--app-transition-fast)}.app-footer__social-link:hover{color:var(--app-color-text)}.app-header{position:sticky;z-index:var(--app-z-sticky);top:0;background:var(--app-color-background)}.app-header,.app-header__inner{min-height:var(--app-header-height)}.app-header__inner{display:flex;width:100%;min-width:0;max-width:var(--app-content-wide);align-items:center;gap:var(--app-space-3);margin-inline:auto;padding-inline:var(--app-gutter)}.app-menu-toggle{display:flex;width:2.5rem;height:2.5rem;flex:0 0 auto;flex-direction:column;align-items:flex-start;justify-content:center;gap:.35rem;padding:.65rem;border:0;color:var(--app-color-text);background:rgba(0,0,0,0);cursor:pointer}.app-menu-toggle__line{display:block;height:1px;background:currentColor;transition:width var(--app-transition-base),transform var(--app-transition-base)}.app-menu-toggle__line--first{width:.75rem}.app-menu-toggle__line--second{width:1.125rem}.app-menu-toggle[aria-expanded=true] .app-menu-toggle__line--first{width:1.125rem;transform:translateY(.20625rem) rotate(45deg)}.app-menu-toggle[aria-expanded=true] .app-menu-toggle__line--second{transform:translateY(-.20625rem) rotate(-45deg)}.app-menu{position:fixed;z-index:calc(var(--app-z-sticky) - 1);inset:var(--app-header-height) 0 0;overflow-y:auto;background:var(--app-color-background);animation:app-menu-backdrop-in var(--app-transition-fast) ease-out both}.app-menu__inner{display:grid;width:100%;min-height:100%;max-width:calc(var(--app-content-narrow) + 2*var(--app-gutter));margin-inline:auto;padding:var(--app-space-6) var(--app-gutter);gap:var(--app-space-6);grid-template-rows:auto 1fr;animation:app-menu-content-in var(--app-transition-base) ease-out both}.app-menu__navigation{display:grid;gap:var(--app-space-5);line-height:1.25}.app-menu__secondary-links{display:grid;gap:var(--app-space-2);margin:0;padding-left:var(--app-space-4);list-style:none;font-size:var(--app-font-size-md);font-weight:var(--app-font-weight-regular);line-height:var(--app-line-height-body)}.app-menu a{width:fit-content;transition:color var(--app-transition-fast),transform var(--app-transition-fast)}.app-menu__contact a,.app-menu__primary{color:var(--app-color-text)}.app-menu__primary{display:flex;align-items:center;gap:var(--app-space-2);color:var(--app-color-text-muted);font-size:var(--app-font-size-xl);font-weight:var(--app-font-weight-medium)}.app-menu__primary:after{width:0;height:1px;background:currentColor;content:"";opacity:0;transition:width var(--app-transition-fast),opacity var(--app-transition-fast)}.app-menu__secondary{position:relative;color:var(--app-color-text-muted)}.app-menu__secondary:before{position:absolute;top:.65em;left:calc(var(--app-space-3)*-1);width:.25rem;height:.25rem;background:currentColor;content:"";opacity:0;transform:translateY(-50%) scale(.6);transition:opacity var(--app-transition-fast),transform var(--app-transition-fast)}.app-menu__contact a{color:var(--app-color-text-muted)}.app-menu__contact{display:flex;flex-wrap:wrap;gap:var(--app-space-4);font-size:var(--app-font-size-md);font-weight:var(--app-font-weight-medium)}.app-menu a:focus-visible,.app-menu a:hover,.app-menu a[aria-current=page],.app-menu__primary[data-active=true]{color:var(--app-color-text)}.app-menu__primary[data-active=true]{font-weight:var(--app-font-weight-bold)}.app-menu__primary[data-active=true]:after{width:1rem;opacity:1}.app-menu__secondary:focus-visible,.app-menu__secondary:hover{transform:translateX(.1875rem)}.app-menu__secondary[aria-current=page]:before{opacity:1;transform:translateY(-50%) scale(1)}.app-menu__utilities{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--app-space-6);align-self:end;padding-top:var(--app-space-8)}@keyframes app-menu-backdrop-in{0%{opacity:0}}@keyframes app-menu-content-in{0%{opacity:0;transform:translateY(.375rem)}}@media(prefers-reduced-motion:reduce){.app-menu,.app-menu__inner{animation:none}.app-menu a,.app-menu__primary:after{transition:none}}.app-primary-nav__link{transition:color var(--app-transition-fast)}.app-primary-nav__link--active,.app-primary-nav__link:hover{color:var(--app-color-text)}.app-primary-nav__link--active{text-decoration:underline;text-underline-offset:.25em}.theme-toggle{position:relative;display:inline-flex;width:2.5rem;height:2.5rem;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--app-radius-pill);color:var(--app-color-text);background:rgba(0,0,0,0);cursor:pointer;transition:color var(--app-transition-fast)}.theme-toggle:after{position:absolute;inset:-3px;border-radius:inherit;background:var(--app-color-text);content:"";opacity:0;pointer-events:none;transform:scale(.72)}.theme-toggle:hover{color:var(--app-color-text-muted)}.theme-toggle:active{color:var(--app-color-text-subtle)}.theme-toggle__icon{position:absolute;inset:0;z-index:1;display:grid;place-items:center;transform-origin:center}.theme-toggle__icon--moon{opacity:1;transform:rotate(0deg) scale(1)}.theme-toggle__icon--sun{opacity:0;transform:rotate(-90deg) scale(.68)}.theme-toggle[data-mode=dark] .theme-toggle__icon--moon{opacity:0;transform:rotate(90deg) scale(.68)}.theme-toggle[data-mode=dark] .theme-toggle__icon--sun{opacity:1;transform:rotate(0deg) scale(1)}.theme-toggle[data-animate=true]:after{animation:app-theme-toggle-feedback .56s cubic-bezier(.22,1,.36,1) both}.theme-toggle[data-animate=true][data-mode=dark] .theme-toggle__icon--moon,.theme-toggle[data-animate=true][data-mode=light] .theme-toggle__icon--sun{animation:app-theme-toggle-icon-out .52s cubic-bezier(.22,1,.36,1) both}.theme-toggle[data-animate=true][data-mode=dark] .theme-toggle__icon--sun,.theme-toggle[data-animate=true][data-mode=light] .theme-toggle__icon--moon{animation:app-theme-toggle-icon-in .62s cubic-bezier(.22,1,.36,1) both}@keyframes app-theme-toggle-icon-in{0%{opacity:0;transform:rotate(-90deg) scale(.66)}62%{opacity:1;transform:rotate(10deg) scale(1.08)}to{opacity:1;transform:rotate(0deg) scale(1)}}@keyframes app-theme-toggle-icon-out{0%{opacity:1;transform:rotate(0deg) scale(1)}to{opacity:0;transform:rotate(92deg) scale(.62)}}@keyframes app-theme-toggle-feedback{0%{opacity:0;transform:scale(.72)}35%{opacity:.12;transform:scale(1)}to{opacity:0;transform:scale(1.18)}}.game-board-frame{position:relative;padding:.375rem;border:1px solid var(--app-color-border-strong);background:var(--app-color-fill-subtle);box-shadow:inset 0 0 0 1px var(--app-color-border)}.game-board{position:relative;display:grid;width:100%;overflow:hidden;border-top:1px solid var(--app-color-border-strong);border-left:1px solid var(--app-color-border-strong);background-color:var(--app-color-game-board)}.game-board:before{position:absolute;z-index:0;inset:0;background-image:linear-gradient(to right,transparent calc(100% - 1px),var(--app-color-game-grid) 0),linear-gradient(to bottom,transparent calc(100% - 1px),var(--app-color-game-grid) 0);background-size:calc(100%/var(--game-board-columns)) 100%,100% calc(100%/var(--game-board-rows));content:"";pointer-events:none}.game-control-button{min-height:2.75rem;padding:var(--app-space-2) var(--app-space-3);border:1px solid var(--app-color-border-strong);border-radius:.125rem;color:var(--app-color-text);background:var(--app-color-fill-subtle);box-shadow:inset 0 -2px 0 var(--app-color-border);cursor:pointer;text-transform:uppercase;transition:color var(--app-transition-fast),background-color var(--app-transition-fast),border-color var(--app-transition-fast),box-shadow var(--app-transition-fast),transform var(--app-transition-fast)}.game-control-button:hover:not(:disabled){border-color:var(--app-color-text-subtle);background:var(--app-color-fill-subtle)}.game-control-button:active:not(:disabled),.game-control-button[data-active=true]{border-color:var(--app-color-primary);color:var(--app-color-on-primary);background:var(--app-color-primary);box-shadow:inset 0 0 0 var(--app-color-border);transform:translateY(1px);transition-duration:45ms}.game-control-button:disabled{cursor:default;opacity:.35}.game-control-help{color:var(--app-color-text-muted);font-size:var(--app-font-size-sm);line-height:1.6}.game-controls{display:grid;gap:var(--app-space-2);margin-top:var(--app-space-4)}.game-region{width:100%}.game-region:focus-visible{outline:none}.game-scoreboard{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--app-space-3);font-size:var(--app-font-size-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-transform:uppercase}.game-scoreboard strong{font-weight:var(--app-font-weight-medium)}.game-scoreboard__best{display:inline-block;margin-inline:-.2rem;padding-inline:.2rem;color:var(--app-color-text-muted)}.game-scoreboard__best[data-new-high-score=true]{color:var(--app-color-text)}@media(prefers-reduced-motion:no-preference){.game-scoreboard__best[data-new-high-score=true]{animation:game-scoreboard-new-high-score .72s steps(2,jump-none)}}@keyframes game-scoreboard-new-high-score{0%,to{color:var(--app-color-text);background:rgba(0,0,0,0);transform:translateY(0)}25%,75%{color:var(--app-color-on-primary);background:var(--app-color-primary);transform:translateY(-1px)}}.game-skeleton{display:grid;gap:var(--app-space-3);opacity:.48}.game-skeleton__line{height:.625rem}.game-skeleton__line--title{width:3.5rem}.game-skeleton__line--link{width:4rem}.game-skeleton__line--score{width:3.25rem}.game-skeleton__line--status{width:55%;margin-inline:auto}.game-skeleton__board{width:100%;border:1px solid var(--app-color-border)}.game-skeleton__controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--app-space-1)}.game-skeleton__controls .skeleton{min-height:2.75rem;border:1px solid var(--app-color-border)}.game-shell{width:100%}.game-shell--page{max-width:var(--app-content-wide);margin-inline:auto;padding:var(--app-space-4) var(--app-gutter) var(--app-space-section)}.game-shell--featured{max-width:none}.game-shell__intro{display:grid;max-width:var(--app-content-narrow)}.game-shell__layout{display:grid;gap:var(--app-space-5);margin-top:var(--app-space-5)}.game-shell__stage{display:flex;min-width:0;justify-content:center}.game-shell__details{display:grid;gap:var(--app-space-4);align-content:start}@media(max-width:32rem){.game-shell--page{padding-top:var(--app-space-3)}.game-shell__layout{gap:var(--app-space-5);margin-top:var(--app-space-4)}}@media(min-width:56rem){.game-shell__layout{grid-template-columns:minmax(19rem,1fr) minmax(12rem,15rem);align-items:start}}@media(min-width:72rem){.game-shell__layout{grid-template-columns:minmax(12rem,15rem) minmax(19rem,1fr) minmax(12rem,15rem);gap:var(--app-space-5)}.game-shell__stage{grid-column:2}.game-shell__details{grid-column:3}}.game-start-menu{position:absolute;top:50%;left:50%;z-index:5;display:grid;width:min(15.5rem,100% - var(--app-space-4));gap:var(--app-space-2);padding:var(--app-space-2);border:1px solid var(--app-color-border-strong);border-radius:.125rem;background:var(--app-color-background);box-shadow:0 0 0 .375rem var(--app-color-background);text-transform:uppercase;transform:translate(-50%,-50%)}.game-start-menu__difficulty{min-width:0;margin:0;padding:0;border:0}.game-start-menu__legend{margin-bottom:var(--app-space-2);color:var(--app-color-text-muted);font-size:var(--app-font-size-sm)}.game-start-menu__options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--app-space-1)}.game-start-menu .game-control-button{padding:var(--app-space-2)}.game-start-menu__options button{display:grid;place-items:center;gap:.125rem;font-size:.6875rem}.game-start-menu__options small{color:var(--app-color-text-muted);font-size:.625rem}.game-start-menu__options button[aria-pressed=true]{border-color:var(--app-color-text-subtle);color:var(--app-color-text);background:var(--app-color-border)}.game-start-menu__options button[aria-pressed=true] small{color:var(--app-color-text-muted)}.game-start-menu__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--app-space-1)}.game-start-menu__actions>:only-child{grid-column:1/-1}.game-start-menu__actions .game-control-button{padding-inline:var(--app-space-1);font-size:.6875rem;white-space:nowrap}.game-start-menu__action{width:100%;font-size:var(--app-font-size-sm);font-weight:var(--app-font-weight-medium)}.game-start-menu__action--primary{border-color:var(--app-color-primary);color:var(--app-color-on-primary);background:var(--app-color-primary)}.game-start-menu__action--primary:hover:not(:disabled){border-color:var(--app-color-primary);background:var(--app-color-primary);filter:brightness(1.08)}.game-status{min-height:1.5em;color:var(--app-color-text-muted);font-size:var(--app-font-size-sm)}.game-viewport{display:grid;width:100%;justify-items:center;gap:var(--app-space-2)}.game-viewport__toolbar{width:min(100%,var(--game-viewport-width));justify-content:center;gap:var(--app-space-2)}.game-viewport__size-controls,.game-viewport__toolbar{display:flex;align-items:center}.game-viewport__button,.game-viewport__expand{min-width:2.75rem;min-height:2.75rem;padding:var(--app-space-1) var(--app-space-2);border:0;color:var(--app-color-text-muted);background:rgba(0,0,0,0);cursor:pointer;transition:color var(--app-transition-fast),background-color var(--app-transition-fast)}.game-viewport__button:focus-visible,.game-viewport__button:hover:not(:disabled),.game-viewport__expand:focus-visible,.game-viewport__expand:hover{color:var(--app-color-text);background:var(--app-color-fill-subtle)}.game-viewport__button:disabled{cursor:default;opacity:.3}.game-viewport__size{min-width:3rem;color:var(--app-color-text-subtle);font-size:var(--app-font-size-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.game-viewport__expand{min-width:7rem;font-size:var(--app-font-size-xs);text-transform:uppercase}.game-viewport__content{display:flex;width:100%;min-height:0;justify-content:center}.game-viewport__content .game-region{max-width:min(var(--game-viewport-width),var(--game-viewport-max-width,100%))}.game-viewport[data-expanded=true]{position:fixed;z-index:calc(var(--app-z-sticky) + 2);inset:0;grid-template-rows:auto minmax(0,1fr);width:100%;height:100dvh;padding:max(var(--app-space-2),env(safe-area-inset-top)) max(var(--app-gutter),env(safe-area-inset-right)) max(var(--app-space-2),env(safe-area-inset-bottom)) max(var(--app-gutter),env(safe-area-inset-left));overflow:hidden;background:var(--app-color-background)}.game-viewport[data-expanded=true] .game-viewport__toolbar{width:min(100%,28rem)}.game-viewport[data-expanded=true] .game-viewport__content{align-items:center;overflow:auto;overscroll-behavior:contain}@media(max-width:55.99rem){.game-viewport__size-controls{display:none}.game-viewport:fullscreen .game-viewport__size-controls,.game-viewport[data-expanded=true] .game-viewport__size-controls{display:flex}}@media(max-height:44rem)and (max-width:55.99rem){.game-viewport[data-expanded=true]{--game-viewport-max-width:15rem}}.snake-game{--snake-body:color-mix(in srgb,var(--app-color-text) 70%,var(--app-color-background));--snake-head:color-mix(in srgb,var(--app-color-text) 96%,var(--app-color-background));--snake-pattern:color-mix(in srgb,var(--app-color-background) 20%,transparent);width:100%}.snake-game__region{max-width:24rem}.snake-game__board{--snake-board-size:20;--game-board-columns:20;--game-board-rows:20;aspect-ratio:1;grid-template-columns:repeat(20,minmax(0,1fr));grid-template-rows:repeat(20,minmax(0,1fr))}.snake-game__entities{position:absolute;z-index:1;inset:0;pointer-events:none}.snake-game__food,.snake-game__segment{position:absolute;inset-block-start:0;inset-inline-start:0;width:calc(100%/var(--snake-board-size));height:calc(100%/var(--snake-board-size));transform:translate(calc(var(--snake-column) * 100%),calc(var(--snake-row) * 100%));will-change:transform}.snake-game__segment{transition:transform var(--snake-tick-duration) linear;animation:snake-segment-in .12s ease-out both}.snake-game__segment:before{position:absolute;inset:-.5px;background-color:var(--snake-body);background-image:repeating-linear-gradient(135deg,transparent 0 4px,var(--snake-pattern) 4px 5px);content:""}.snake-game__segment[data-segment=head]:before{background:var(--snake-head)}.snake-game__food{animation:snake-food-in .12s ease-out both}.snake-game__food:after{position:absolute;inset:30%;background:var(--snake-head);content:""}@keyframes snake-segment-in{0%{opacity:0}}@keyframes snake-food-in{0%{opacity:0}}.snake-game__controls{grid-template-columns:repeat(3,minmax(0,1fr))}.snake-game__control--up{grid-column:2}.snake-game__control--left{grid-column:1}.snake-game__control--down{grid-column:2}.snake-game__control--right{grid-column:3}.snake-game__pause{grid-column:1/-1}@media(prefers-reduced-motion:reduce){.snake-game__food,.snake-game__segment{transition:none;animation:none}}.space-cowboy-game{--space-cowboy-entity-muted:color-mix(in srgb,var(--app-color-text) 58%,var(--app-color-background));--space-cowboy-pattern:color-mix(in srgb,var(--app-color-background) 20%,transparent);width:100%}.space-cowboy-game__region{max-width:22rem}.space-cowboy-game .game-scoreboard{margin-bottom:var(--app-space-2)}.space-cowboy-game__combo{color:var(--app-color-text-subtle);transition:color var(--app-transition-fast)}.space-cowboy-game__combo[data-active=true]{color:var(--app-color-text)}.space-cowboy-game__health-track{flex:1 1;height:.375rem;overflow:hidden;background:var(--app-color-fill-subtle);box-shadow:inset 0 0 0 1px var(--app-color-border)}.space-cowboy-game__health-fill{display:block;height:100%;transition:width var(--app-transition-base),background-color var(--app-transition-base)}.space-cowboy-game__health-fill[data-level=success]{background:var(--app-color-success)}.space-cowboy-game__health-fill[data-level=warn]{background:var(--app-color-warn)}.space-cowboy-game__health-fill[data-level=error]{background:var(--app-color-error)}.space-cowboy-game__board{--game-board-columns:5;--game-board-rows:12;aspect-ratio:5/8;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(12,minmax(0,1fr));background-image:radial-gradient(circle,var(--app-color-border-strong) 1px,transparent 1px),radial-gradient(circle,var(--app-color-border) 1px,transparent 1px);background-position:0 0,.75rem 1.25rem;background-size:2.5rem 3.5rem,3.25rem 4.25rem}.space-cowboy-game__entity{position:absolute;top:0;left:0;z-index:1;width:20%;height:8.3333333333%;pointer-events:none;transform:translate3d(calc(var(--lane) * 100%),calc(var(--row) * 100%),0);transition:transform var(--space-cowboy-tick-duration) linear;will-change:transform}.space-cowboy-game__entity:before{position:absolute;content:""}.space-cowboy-game__entity--asteroid:before{inset:18%;border-radius:50%;background-color:var(--space-cowboy-entity-muted);background-image:repeating-linear-gradient(135deg,transparent 0 4px,var(--space-cowboy-pattern) 4px 5px);clip-path:polygon(18% 2%,80% 8%,98% 42%,82% 88%,42% 100%,4% 72%,0 28%)}.space-cowboy-game__entity--projectile{z-index:2}.space-cowboy-game__entity--projectile:before{top:16%;bottom:16%;left:calc(50% - 1px);width:2px;background:var(--app-color-error)}.space-cowboy-game__entity--player{z-index:3;transition-duration:.11s;transition-timing-function:cubic-bezier(.2,.8,.2,1)}.space-cowboy-game__ship{position:absolute;inset:12% 20%;display:grid;color:var(--app-color-text);place-items:center}.space-cowboy-game__ship[data-fired=true]{animation:space-cowboy-recoil .14s ease-out}.space-cowboy-game__muzzle-flash{position:absolute;top:-45%;left:calc(50% - 1px);width:2px;height:45%;background:var(--app-color-error);animation:space-cowboy-muzzle-flash .14s ease-out both}.space-cowboy-game__impact{z-index:4;pointer-events:none;transition:none}.space-cowboy-game__impact:before{inset:-18%;border-radius:50%;background:radial-gradient(circle at center,var(--app-color-error) 0 8%,color-mix(in srgb,var(--app-color-error) 48%,transparent) 9% 22%,transparent 24%);animation:space-cowboy-impact .18s ease-out both}.space-cowboy-game__board[data-hit=true]{animation:space-cowboy-crash .22s ease-out}.space-cowboy-game__controls{grid-template-columns:repeat(3,minmax(0,1fr))}.space-cowboy-game__pause{grid-column:1/-1}@keyframes space-cowboy-recoil{50%{transform:translateY(10%)}}@keyframes space-cowboy-muzzle-flash{0%{opacity:.9;transform:scaleY(1);transform-origin:bottom}to{opacity:0;transform:translateY(-45%) scaleY(.25);transform-origin:bottom}}@keyframes space-cowboy-impact{0%{opacity:1;transform:scale(.9)}to{opacity:0;transform:scale(1.08)}}@keyframes space-cowboy-crash{25%{transform:translateX(-2px)}50%{transform:translateX(2px)}75%{transform:translateX(-1px)}}@media(prefers-reduced-motion:reduce){.space-cowboy-game__entity{transition:none}.space-cowboy-game__board[data-hit=true],.space-cowboy-game__impact:before,.space-cowboy-game__muzzle-flash,.space-cowboy-game__ship{animation:none}}.stack-game{--stack-piece-pattern:color-mix(in srgb,var(--app-color-background) 18%,transparent);--stack-piece-1:color-mix(in srgb,var(--app-color-text) 96%,var(--app-color-background));--stack-piece-2:color-mix(in srgb,var(--app-color-text) 84%,var(--app-color-background));--stack-piece-3:color-mix(in srgb,var(--app-color-text) 70%,var(--app-color-background));--stack-piece-4:color-mix(in srgb,var(--app-color-text) 58%,var(--app-color-background));--stack-piece-5:color-mix(in srgb,var(--app-color-text) 46%,var(--app-color-background));--stack-piece-6:color-mix(in srgb,var(--app-color-text) 34%,var(--app-color-background));width:100%}.stack-game__region{max-width:20rem}.stack-game__board{--game-board-columns:10;--game-board-rows:20;aspect-ratio:1/2;grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:repeat(20,minmax(0,1fr))}.stack-game__block{position:absolute;z-index:1;top:0;left:0;width:10%;height:5%;border-right:1px solid var(--app-color-border-strong);border-bottom:1px solid var(--app-color-border-strong);transform:translate3d(calc(var(--stack-column) * 100%),calc(var(--stack-row) * 100%),0)}.stack-game__block--active{z-index:2;transition:transform .11s cubic-bezier(.2,.8,.2,1);will-change:transform}.stack-game__block--active[data-movement=gravity]{transition-duration:var(--stack-fall-duration);transition-timing-function:linear}.stack-game__block--active[data-movement=spawn]{transition:none}.stack-game__block[data-shape=i]{background:var(--stack-piece-1)}.stack-game__block[data-shape=l]{background-color:var(--stack-piece-1);background-image:repeating-linear-gradient(135deg,transparent 0 4px,var(--stack-piece-pattern) 4px 5px)}.stack-game__block[data-shape=o]{background-color:var(--stack-piece-2);background-image:radial-gradient(circle at center,var(--stack-piece-pattern) 1px,transparent 1.25px);background-size:5px 5px}.stack-game__block[data-shape=t]{background-color:var(--stack-piece-3);background-image:repeating-linear-gradient(45deg,transparent 0 5px,var(--stack-piece-pattern) 5px 6px),repeating-linear-gradient(135deg,transparent 0 5px,var(--stack-piece-pattern) 5px 6px)}.stack-game__block[data-shape=s]{background-color:var(--stack-piece-4);background-image:repeating-linear-gradient(0deg,transparent 0 4px,var(--stack-piece-pattern) 4px 5px)}.stack-game__block[data-shape=z]{background-color:var(--stack-piece-5);background-image:repeating-linear-gradient(45deg,transparent 0 4px,var(--stack-piece-pattern) 4px 5px)}.stack-game__block[data-shape=j]{background-color:var(--stack-piece-6);background-image:conic-gradient(from 90deg,var(--stack-piece-pattern) 25%,transparent 0 50%,var(--stack-piece-pattern) 0 75%,transparent 0);background-size:6px 6px}.stack-game__controls{grid-template-columns:repeat(3,minmax(0,1fr))}.stack-game__primary-control{grid-column:1/-1}@media(prefers-reduced-motion:no-preference){.stack-game__board--cleared{animation:stack-row-cleared .18s ease-out}}@keyframes stack-row-cleared{50%{opacity:.72}}.home-game-feature__mobile-link{display:inline-flex;margin-top:var(--app-space-8);font-size:var(--app-font-size-md);text-decoration:underline;text-underline-offset:.18em}.home-game-feature{display:none}@media(min-width:72rem){.home-game-feature__mobile-link{display:none}.home-game-feature{position:fixed;top:0;right:max(var(--app-gutter),(100vw - var(--app-content-wide))/2 + var(--app-gutter));display:flex;width:var(--home-game-width);height:100dvh;align-items:center;padding-block:var(--app-space-5);background:var(--app-color-background)}.home-game-feature .game-shell--featured{width:clamp(10.5rem,(100dvh - 23rem)/2,18rem);margin-inline:auto}.home-game-feature__game{width:100%}.home-game-feature .game-region{max-width:none;opacity:.58;transition:opacity var(--app-transition-base)}.home-game-feature .game-board{opacity:.32;transition:opacity var(--app-transition-base)}.home-game-feature .game-shell--featured:focus-within .game-region,.home-game-feature .game-shell--featured:hover .game-region,.home-game-feature .game-shell--featured[data-phase=game-over] .game-region,.home-game-feature .game-shell--featured[data-phase=playing] .game-region{opacity:1}.home-game-feature .game-shell--featured[data-phase=game-over] .game-board,.home-game-feature .game-shell--featured[data-phase=playing] .game-board{opacity:1}.home-game-feature .game-shell--featured[data-phase=idle] .game-control-help,.home-game-feature .game-shell--featured[data-phase=idle] .game-scoreboard,.home-game-feature .game-shell--featured[data-phase=idle] .game-status,.home-game-feature .game-shell--featured[data-phase=paused] .game-control-help,.home-game-feature .game-shell--featured[data-phase=paused] .game-scoreboard,.home-game-feature .game-shell--featured[data-phase=paused] .game-status{opacity:.3}.home-game-feature .game-shell--featured[data-phase=idle]:focus-within .game-board,.home-game-feature .game-shell--featured[data-phase=idle]:hover .game-board,.home-game-feature .game-shell--featured[data-phase=paused]:focus-within .game-board,.home-game-feature .game-shell--featured[data-phase=paused]:hover .game-board{opacity:.55}.home-game-feature .game-control-help{text-align:center}.home-game-feature__game>:not(.game-skeleton){animation:home-game-loaded var(--app-transition-base) ease-out both}}@media(prefers-reduced-motion:reduce){.home-game-feature__game>:not(.game-skeleton){animation:none}}@keyframes home-game-loaded{0%{opacity:0}}.figure-animation{margin-inline:0;overflow:hidden;border-radius:var(--app-radius-small);background:var(--app-color-code-surface)}.figure-animation__header{display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-4);padding:var(--app-space-3) var(--app-space-4);color:var(--app-color-text-muted);font-size:var(--app-font-size-xs);font-weight:var(--app-font-weight-medium);text-transform:uppercase}.figure-animation__heading{display:flex;min-width:0;align-items:center;gap:var(--app-space-2)}.figure-animation__progress-dot{width:.3rem;height:.3rem;border-radius:var(--app-radius-pill);background:var(--app-color-text-subtle);opacity:.45;transition:width var(--app-transition-base),opacity var(--app-transition-base),background-color var(--app-transition-base)}.figure-animation__progress-dot[data-active=true]{width:1rem;background:var(--app-color-text);opacity:1}.figure-animation figcaption{min-height:3.75rem;font-style:normal}.figure-animation__caption{display:block;font-family:var(--app-font-sans);text-wrap:pretty;animation:figure-caption-in .36s cubic-bezier(.22,1,.36,1) both}.figure-animation__controls{display:flex;flex:0 0 auto;align-items:center;gap:var(--app-space-1)}.figure-animation__speeds{display:flex;align-items:center;padding:.125rem;border-radius:var(--app-radius-pill);background:var(--app-color-fill-subtle)}.figure-animation__playback-button{display:inline-grid;width:2rem;height:2rem;padding:0;place-items:center;transition:color var(--app-transition-fast),background-color var(--app-transition-fast)}.figure-animation__playback-button,.figure-animation__speed{border:0;border-radius:var(--app-radius-pill);color:var(--app-color-text-subtle);background:rgba(0,0,0,0);cursor:pointer}.figure-animation__speed{min-width:2rem;min-height:1.75rem;padding:0 var(--app-space-2);font-family:inherit;font-size:inherit;transition:color var(--app-transition-fast),background-color var(--app-transition-fast),box-shadow var(--app-transition-fast)}.figure-animation__playback-button:hover,.figure-animation__speed:hover{color:var(--app-color-text);background:var(--app-color-fill-subtle)}.figure-animation__speed[aria-pressed=true]{color:var(--app-color-on-primary);background:var(--app-color-primary);box-shadow:0 1px 3px color-mix(in srgb,var(--app-color-text) 18%,transparent)}@keyframes figure-caption-in{0%{opacity:0;filter:blur(.2rem);transform:translateY(.55rem) scale(.985)}to{opacity:1;filter:blur(0);transform:translateY(0)}}@media(max-width:40rem){.figure-animation figcaption,.figure-animation__header{padding-inline:var(--app-space-3)}.figure-animation figcaption{align-items:flex-start;flex-direction:column;gap:var(--app-space-3)}.figure-animation__heading{align-items:flex-start;flex-direction:column;gap:var(--app-space-1)}.figure-animation__heading>[aria-hidden=true]{display:none}.figure-animation__controls{width:100%;justify-content:space-between}}.svg-browser-frame__surface{fill:var(--app-color-background);stroke:var(--app-color-border-strong);stroke-width:1}.svg-browser-frame__divider{stroke:var(--app-color-border)}.svg-browser-frame__control{stroke:color-mix(in srgb,var(--app-color-text) 12%,transparent);stroke-width:.5}.svg-browser-frame__control--close{fill:var(--app-color-error)}.svg-browser-frame__control--minimize{fill:var(--app-color-warn)}.svg-browser-frame__control--maximize{fill:var(--app-color-success)}.svg-browser-frame__address{fill:var(--app-color-code-surface)}.svg-browser-frame__address-label{color:var(--app-color-text-subtle);font-size:8px;text-anchor:middle}.svg-api-service__surface{fill:var(--app-color-background);stroke:var(--app-color-border-strong)}.svg-api-service__badge{fill:var(--app-color-fill-subtle);stroke:var(--app-color-border)}.svg-api-service__badge-label{color:var(--app-color-text-muted);font-size:8px;font-weight:700;text-anchor:middle}.svg-api-service__name{color:var(--app-color-text);font-size:10px;font-weight:650}.svg-api-service__divider{stroke:var(--app-color-border)}.svg-api-service__endpoint{color:var(--app-color-text-muted);font-size:9px}.experiment-config__canvas{--campaign-a:var(--app-color-mosaic);--campaign-a-fill:color-mix(in srgb,var(--campaign-a) 11%,var(--app-color-background));--campaign-b:var(--app-color-champion);--campaign-b-fill:color-mix(in srgb,var(--campaign-b) 11%,var(--app-color-background));overflow-x:auto}.experiment-config__canvas svg{display:block;width:100%;min-width:36rem;height:auto}.experiment-config__canvas text{fill:currentColor;font-family:var(--app-font-sans)}.experiment-config__scene{animation:experiment-config-fade-in .32s ease-out both}.experiment-config__eyebrow,.experiment-config__field-label,.experiment-config__launch-button text,.experiment-config__next text{color:var(--app-color-text-muted);font-size:9px;font-weight:600;letter-spacing:.04em}.experiment-config__title{color:var(--app-color-text);font-size:15px;font-weight:650}.experiment-config__campaign-name,.experiment-config__field-value{color:var(--app-color-text);font-size:11px;font-weight:600}.experiment-config__campaign-detail,.experiment-config__launch-detail,.experiment-config__review-note text{color:var(--app-color-text-muted);font-size:10px}.experiment-config__campaign,.experiment-config__field,.experiment-config__next{opacity:0;animation:experiment-config-reveal .24s ease-out .1s forwards}.experiment-config__field[data-order="2"]{animation-delay:.18s}.experiment-config__field rect,.experiment-config__review-campaign>rect{fill:var(--app-color-code-surface);stroke:var(--app-color-border)}.experiment-config__field path{fill:none;stroke:var(--app-color-text-muted);stroke-linecap:round;stroke-linejoin:round}.experiment-config__campaign{animation-delay:.3s}.experiment-config__campaign[data-campaign=b]{animation-delay:.42s}.experiment-config__campaign>rect:first-child{stroke-width:1}.experiment-config__campaign[data-campaign=a]>rect:first-child{fill:var(--campaign-a-fill);stroke:var(--campaign-a)}.experiment-config__campaign[data-campaign=b]>rect:first-child{fill:var(--campaign-b-fill);stroke:var(--campaign-b)}.experiment-config__campaign[data-campaign=a] .experiment-config__campaign-marker{fill:var(--campaign-a)}.experiment-config__campaign[data-campaign=b] .experiment-config__campaign-marker{fill:var(--campaign-b)}.experiment-config__campaign-letter{color:var(--app-color-on-primary);font-size:9px;font-weight:700;text-anchor:middle}.experiment-config__next{animation-delay:.62s}.experiment-config__next rect{fill:var(--app-color-primary);stroke:var(--app-color-primary)}.experiment-config__next text{color:var(--app-color-on-primary);text-anchor:middle}.experiment-config__status circle{fill:var(--app-color-fill-subtle);stroke:var(--app-color-border)}.experiment-config__status text{color:var(--app-color-text-muted);font-size:9px}.experiment-config__status[data-tone=success] circle{fill:color-mix(in srgb,var(--app-color-success) 14%,transparent);stroke:var(--app-color-success)}.experiment-config__status[data-tone=success] path{fill:none;stroke:var(--app-color-success);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.experiment-config__browser-option rect{fill:var(--app-color-code-surface);stroke:var(--app-color-border)}.experiment-config__browser-value{color:var(--app-color-text);font-size:10px;font-weight:600}.experiment-config__browser-option-detail{color:var(--app-color-text-muted);font-size:9px}.experiment-config__service-path{fill:none;stroke:var(--app-color-border-strong);stroke-linecap:round}.experiment-config__service-packet{fill:var(--app-color-amethyst);opacity:0}.experiment-config__service-packet--ab-request{offset-path:path("M300 202 L210 108");animation:experiment-config-travel .6s cubic-bezier(.45,0,.2,1) .52s forwards}.experiment-config__service-packet--campaign-request{offset-path:path("M380 202 L470 108");animation:experiment-config-travel .6s cubic-bezier(.45,0,.2,1) .64s forwards}.experiment-config__service-packet--ab-response{fill:var(--app-color-success);offset-path:path("M196 114 L286 208");animation:experiment-config-travel .6s cubic-bezier(.45,0,.2,1) 1.56s forwards}.experiment-config__service-packet--campaign-response{fill:var(--app-color-mosaic);offset-path:path("M484 114 L394 208");animation:experiment-config-travel .6s cubic-bezier(.45,0,.2,1) 1.7s forwards}.experiment-config__api-service--ab .svg-api-service__surface{animation:experiment-config-service-receive .4s ease-out 1.14s}.experiment-config__api-service--campaign .svg-api-service__surface{animation:experiment-config-service-receive .4s ease-out 1.26s}.experiment-config__validation-browser .svg-browser-frame__surface{animation:experiment-config-service-receive .4s ease-out 2.32s}.experiment-config__validation-browser-label{color:var(--app-color-text);font-size:11px;font-weight:650}.experiment-config__compatibility-continue,.experiment-config__scene--compatibility .experiment-config__browser-option{opacity:0;animation:experiment-config-reveal .22s ease-out .1s forwards}.experiment-config__scene--compatibility .experiment-config__browser-option[data-order="1"]{animation-delay:.26s}.experiment-config__scene--compatibility .experiment-config__browser-option[data-order="2"]{animation-delay:.4s}.experiment-config__scene--compatibility .experiment-config__browser-option[data-order="3"]{animation:experiment-config-reveal-muted .22s ease-out .54s forwards}.experiment-config__compatibility-continue{animation-delay:.72s}.experiment-config__compatibility-continue rect{fill:var(--app-color-primary);stroke:var(--app-color-primary)}.experiment-config__compatibility-continue text{color:var(--app-color-on-primary);font-size:9px;font-weight:650;text-anchor:middle}.experiment-config__browser-option--selected rect{fill:color-mix(in srgb,var(--app-color-text) 7%,var(--app-color-background));stroke:var(--app-color-text)}.experiment-config__option-control{fill:var(--app-color-background);stroke:var(--app-color-border-strong)}.experiment-config__browser-option--selected .experiment-config__option-control{fill:var(--app-color-text);stroke:var(--app-color-text)}.experiment-config__option-control-dot{fill:var(--app-color-on-primary)}.experiment-config__browser-option--blocked{opacity:.62}.experiment-config__review-campaign{opacity:0;animation:experiment-config-reveal .22s ease-out .1s forwards}.experiment-config__review-campaign:nth-of-type(4){animation-delay:.22s}.experiment-config__review-note{opacity:0;animation:experiment-config-reveal .22s ease-out .34s forwards}.experiment-config__review-note rect{fill:var(--app-color-code-surface);stroke:var(--app-color-border)}.experiment-config__launch-button rect{stroke-width:1}.experiment-config__launch-button text{text-anchor:middle}.experiment-config__launch-button--idle{opacity:0;animation:experiment-config-reveal .2s ease-out .46s forwards,experiment-config-hide .1s ease-in .9s forwards}.experiment-config__launch-button--idle rect{fill:var(--app-color-primary);stroke:var(--app-color-primary)}.experiment-config__launch-button--idle text{color:var(--app-color-on-primary)}.experiment-config__launch-button--loading{opacity:0;animation:experiment-config-reveal .1s ease-out .94s forwards,experiment-config-hide .1s ease-in 1.58s forwards}.experiment-config__launch-button--loading rect{fill:var(--app-color-fill-subtle);stroke:var(--app-color-border-strong)}.experiment-config__launch-button--loading circle{fill:none;stroke:var(--app-color-text-muted);stroke-dasharray:10 8;stroke-width:1.5;transform-origin:center;animation:experiment-config-spin .9s linear infinite}.experiment-config__launch-success{opacity:0;animation:experiment-config-reveal .24s ease-out 1.7s forwards}@keyframes experiment-config-fade-in{0%{opacity:0}}@keyframes experiment-config-reveal{to{opacity:1}}@keyframes experiment-config-reveal-muted{to{opacity:.62}}@keyframes experiment-config-hide{to{opacity:0}}@keyframes experiment-config-spin{to{rotate:1turn}}@keyframes experiment-config-service-receive{50%{stroke:var(--app-color-success);stroke-width:1.5}}@keyframes experiment-config-travel{1%{opacity:1;offset-distance:0}82%{opacity:1}to{opacity:0;offset-distance:100%}}@media(prefers-reduced-motion:reduce){.experiment-config__campaign,.experiment-config__compatibility-continue,.experiment-config__field,.experiment-config__launch-success,.experiment-config__next,.experiment-config__review-campaign,.experiment-config__review-note,.experiment-config__scene,.experiment-config__scene--compatibility .experiment-config__browser-option{animation:none;opacity:1}.experiment-config__launch-button,.experiment-config__service-packet{animation:none;opacity:0}}.experiment-lifecycle__canvas{overflow-x:auto}.experiment-lifecycle__diagram{display:block;width:100%;min-width:36rem;height:auto;color:var(--app-color-text)}.experiment-lifecycle__diagram text{fill:currentColor;font-family:var(--app-font-sans)}.experiment-lifecycle__path{fill:none;stroke:var(--app-color-border-strong);stroke-linecap:round;stroke-dasharray:3 5}.experiment-lifecycle__database ellipse,.experiment-lifecycle__database path,.experiment-lifecycle__worker-surface{fill:var(--app-color-background);stroke:var(--app-color-border-strong)}.experiment-lifecycle__database-state,.experiment-lifecycle__database-title{font-size:9px;font-weight:600;text-anchor:middle}.experiment-lifecycle__database-title{color:var(--app-color-text)}.experiment-lifecycle__database-state{color:var(--app-color-text-muted)}.experiment-lifecycle__worker-status{fill:var(--app-color-success)}.experiment-lifecycle__browser-action text,.experiment-lifecycle__browser-state,.experiment-lifecycle__worker-detail,.experiment-lifecycle__worker-title{font-size:9px;font-weight:600;letter-spacing:.03em}.experiment-lifecycle__browser-title,.experiment-lifecycle__worker-title{color:var(--app-color-text)}.experiment-lifecycle__browser-detail,.experiment-lifecycle__browser-state,.experiment-lifecycle__worker-detail{color:var(--app-color-text-muted)}.experiment-lifecycle__worker path{stroke:var(--app-color-border)}.experiment-lifecycle__browser-detail,.experiment-lifecycle__worker-detail{font-size:9px}.experiment-lifecycle__browser-title{font-size:10px;font-weight:650}.experiment-lifecycle__browser-state{text-anchor:end}.experiment-lifecycle__browser-row circle{fill:var(--app-color-success)}.experiment-lifecycle__browser-action{opacity:0}.experiment-lifecycle__browser-action rect{fill:var(--app-color-primary)}.experiment-lifecycle__browser-action text{color:var(--app-color-on-primary);text-anchor:middle}.experiment-lifecycle__packet{opacity:0}.experiment-lifecycle__diagram[data-scene=listening] .experiment-lifecycle__worker-status{animation:experiment-lifecycle-pulse 1.4s ease-in-out infinite}.experiment-lifecycle__diagram[data-scene=listening] .experiment-lifecycle__packet--event,.experiment-lifecycle__diagram[data-scene=rejected] .experiment-lifecycle__packet--event{offset-path:path("M218 67 H250");animation:experiment-lifecycle-travel .76s ease-in-out .42s forwards}.experiment-lifecycle__diagram[data-scene=listening] .experiment-lifecycle__packet--event{fill:var(--app-color-amethyst)}.experiment-lifecycle__diagram[data-scene=rejected] .experiment-lifecycle__packet--event,.experiment-lifecycle__diagram[data-scene=rejected] .experiment-lifecycle__worker-status{fill:var(--app-color-error)}.experiment-lifecycle__diagram[data-scene=recovery] .experiment-lifecycle__browser-row circle,.experiment-lifecycle__diagram[data-scene=recovery] .experiment-lifecycle__worker-status{fill:var(--app-color-warn)}.experiment-lifecycle__diagram[data-scene=rejected] .experiment-lifecycle__worker-surface{animation:experiment-lifecycle-alert .42s ease-out 1.08s}.experiment-lifecycle__diagram[data-scene=rejected] .experiment-lifecycle__packet--state{fill:var(--app-color-warn);offset-path:path("M430 67 H500");animation:experiment-lifecycle-travel .76s ease-in-out 1.42s forwards}.experiment-lifecycle__diagram[data-scene=recovery] .experiment-lifecycle__packet--client{fill:var(--app-color-amethyst);offset-path:path("M350 250 H430");animation:experiment-lifecycle-travel .52s ease-in-out .24s forwards}.experiment-lifecycle__diagram[data-scene=recovery] .experiment-lifecycle__packet--read{fill:var(--app-color-amethyst);offset-path:path("M540 210 V110");animation:experiment-lifecycle-travel .62s ease-in-out .88s forwards}.experiment-lifecycle__diagram[data-scene=recovery] .experiment-lifecycle__packet--response{fill:var(--app-color-warn);offset-path:path("M540 110 V210");animation:experiment-lifecycle-travel .62s ease-in-out 1.58s forwards}.experiment-lifecycle__diagram[data-scene=recovery] .experiment-lifecycle__packet--ui{fill:var(--app-color-warn);offset-path:path("M430 250 H350");animation:experiment-lifecycle-travel .52s ease-in-out 2.28s forwards}.experiment-lifecycle__diagram[data-scene=recovery] .experiment-lifecycle__browser-action[data-visible=true]{animation:experiment-lifecycle-reveal .24s ease-out 2.9s forwards}.experiment-lifecycle__diagram[data-scene=recovery] .svg-browser-frame__surface{animation:experiment-lifecycle-alert .42s ease-out 2.72s}@keyframes experiment-lifecycle-pulse{50%{opacity:.35}}@keyframes experiment-lifecycle-alert{50%{stroke:var(--app-color-error);stroke-width:1.5}}@keyframes experiment-lifecycle-reveal{0%{opacity:0;transform:translate(184px,32px)}to{opacity:1;transform:translate(184px,30px)}}@keyframes experiment-lifecycle-travel{1%{opacity:1;offset-distance:0}84%{opacity:1}to{opacity:0;offset-distance:100%}}@media(prefers-reduced-motion:reduce){.experiment-lifecycle__browser-action,.experiment-lifecycle__diagram .svg-browser-frame__surface,.experiment-lifecycle__worker-status,.experiment-lifecycle__worker-surface{animation:none!important}.experiment-lifecycle__browser-action[data-visible=true]{opacity:1}.experiment-lifecycle__packet{display:none}}.markdown-article{width:100%;max-width:calc(var(--app-content-narrow) + 2*var(--app-gutter));margin-inline:auto;padding:var(--app-space-7) var(--app-gutter) var(--app-space-section)}.markdown-article__content{margin-top:var(--app-space-7);font-size:var(--app-font-size-md);line-height:var(--app-line-height-body)}.markdown-article__byline{display:flex;align-items:center;gap:var(--app-space-3);margin-top:var(--app-space-2);font-style:normal}.markdown-article__author-image{width:2.5rem;height:2.5rem;flex:0 0 auto;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px var(--app-color-border)}.markdown-article__author-details{display:grid;gap:.0625rem}.markdown-article__content>*{margin-block:0}.markdown-article__content>*+*{margin-top:var(--app-space-4)}.markdown-article__content>:first-child{margin-top:0}.markdown-article__content h2,.markdown-article__content h3,.markdown-article__content h4{font-weight:var(--app-font-weight-bold);line-height:var(--app-line-height-tight);scroll-margin-top:calc(var(--app-header-height) + var(--app-space-4))}.markdown-article__content h2{margin-top:var(--app-space-7);font-size:var(--app-font-size-xl)}.markdown-article__content h3{margin-top:var(--app-space-6);font-size:var(--app-font-size-lg)}.markdown-article__content h4{margin-top:var(--app-space-5);font-size:var(--app-font-size-md)}.markdown-article__content h2+*,.markdown-article__content h3+*,.markdown-article__content h4+*{margin-top:var(--app-space-3)}.markdown-article__content a{text-decoration:underline;text-underline-offset:.18em;transition:color var(--app-transition-fast)}.markdown-article__content a:hover{color:var(--app-color-text-muted)}.markdown-article__content .markdown-article__heading-link{color:inherit;text-decoration:none}.markdown-article__content .markdown-article__heading-link:hover{color:inherit}.markdown-article__heading-hash{display:inline-block;margin-left:var(--app-space-2);color:var(--app-color-text-subtle);font-size:.75em;font-weight:var(--app-font-weight-regular);opacity:0;transition:color var(--app-transition-fast),opacity var(--app-transition-fast)}.markdown-article__heading-link:focus-visible .markdown-article__heading-hash,.markdown-article__heading-link:hover .markdown-article__heading-hash{color:var(--app-color-text-muted);opacity:1}.markdown-article__content ol,.markdown-article__content ul{padding-left:var(--app-space-6)}.markdown-article__content li+li,.markdown-article__content li>ol,.markdown-article__content li>ul{margin-top:var(--app-space-1)}.markdown-article__content li::marker{color:var(--app-color-text-subtle)}.markdown-article__content blockquote{margin-inline:0;padding:var(--app-space-1) 0 var(--app-space-1) var(--app-space-4);border-left:2px solid var(--app-color-border-strong);color:var(--app-color-text-muted);font-size:var(--app-font-size-md);font-style:italic}.markdown-article__content hr{margin-block:var(--app-space-8);border:0;border-top:1px solid var(--app-color-border)}.markdown-article__content pre{overflow-x:auto;padding:var(--app-space-5);border-radius:var(--app-radius-small);background:var(--app-color-code-surface)!important;line-height:1.6}.markdown-article__content pre code{display:grid;min-width:max-content}.markdown-article__content code{font-family:var(--app-font-mono);font-size:.875em}.markdown-article__content :not(pre)>code{padding:.125em .3em;border-radius:.25rem;background:var(--app-color-fill-subtle)}.markdown-article__content p:has(>img[src^="/images/notes/diagrams/"]){overflow-x:auto;padding:var(--app-space-4);border-radius:var(--app-radius-small);background:var(--app-color-code-surface)}.markdown-article__content img[src^="/images/notes/diagrams/"]{display:block;width:100%;min-width:38rem;height:auto}html.dark .markdown-article__content .shiki,html.dark .markdown-article__content .shiki span{color:var(--shiki-dark)!important}html.dark .markdown-article__content img[src^="/images/notes/diagrams/"]{filter:invert(1)}@media(max-width:32rem){.markdown-article{padding-top:var(--app-space-6)}.markdown-article__content{margin-top:var(--app-space-6)}.markdown-article__content pre{margin-inline:calc(var(--app-gutter)*-1);padding-inline:var(--app-gutter);border-radius:0}}@media(prefers-color-scheme:dark){html:not(.light) .markdown-article__content .shiki,html:not(.light) .markdown-article__content .shiki span{color:var(--shiki-dark)!important}html:not(.light) .markdown-article__content img[src^="/images/notes/diagrams/"]{filter:invert(1)}}.skeleton{position:relative;display:block;overflow:hidden;border-radius:.125rem;background:var(--app-color-fill-subtle)}.skeleton:after{position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,var(--app-color-border-strong) 48%,transparent 76%);content:"";transform:translateX(-110%)}@media(prefers-reduced-motion:no-preference){.skeleton:after{animation:skeleton-shimmer 1.6s ease-in-out infinite}}@keyframes skeleton-shimmer{55%,to{transform:translateX(110%)}}.games-index{width:100%;max-width:calc(var(--app-content-index) + 2*var(--app-gutter));margin-inline:auto;padding:var(--app-space-8) var(--app-gutter) var(--app-space-section)}.games-index__list{margin:var(--app-space-8) 0 0;padding:0;border-top:1px solid var(--app-color-border);list-style:none}.games-index__list>li{border-bottom:1px solid var(--app-color-border)}.games-index__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--app-space-4);align-items:center;padding-block:var(--app-space-5)}.games-index__icon{color:var(--app-color-text-muted);transform-origin:center;transition:color var(--app-transition-fast),transform var(--app-transition-base)}.games-index__copy{display:grid;min-width:0;gap:var(--app-space-1);transition:transform var(--app-transition-base)}.games-index__title{font-size:var(--app-font-size-md);font-weight:var(--app-font-weight-medium);opacity:.88;transition:opacity var(--app-transition-fast)}.games-index__arrow{color:var(--app-color-text-subtle);opacity:0;transform:translateX(calc(var(--app-space-1) * -1));transition:opacity var(--app-transition-fast),transform var(--app-transition-base)}.games-index__row:focus-visible .games-index__icon,.games-index__row:hover .games-index__icon{color:var(--app-color-text);transform:translateY(-.125rem) scale(1.08) rotate(-2deg)}.games-index__row:focus-visible .games-index__copy,.games-index__row:hover .games-index__copy{transform:translateX(.125rem)}.games-index__row:focus-visible .games-index__title,.games-index__row:hover .games-index__title{opacity:1}.games-index__row:focus-visible .games-index__arrow,.games-index__row:hover .games-index__arrow{opacity:.8;transform:translateX(var(--app-space-1))}.games-index__row:focus-visible{outline-offset:-2px}@media(max-width:32rem){.games-index{padding-top:var(--app-space-6)}}.home-page{width:100%;max-width:calc(var(--app-content-narrow) + 2*var(--app-gutter));margin-inline:auto;padding:clamp(4rem,10vw,8rem) var(--app-gutter) var(--app-space-section)}.home-page__content{width:100%}.home-page__section{display:grid;gap:var(--app-space-6)}.home-page__section+.home-page__section{margin-top:var(--app-space-8)}.home-page__notes-list{display:grid;gap:var(--app-space-3);margin:0;padding-left:1.15rem}.home-page__notes-list li::marker{color:var(--app-color-text)}.home-page__note-link{color:var(--app-color-text-muted);text-decoration:underline;text-underline-offset:.18em;transition:color var(--app-transition-fast)}.home-page__note-link:hover{color:var(--app-color-text)}@media(min-width:40rem){.home-page__notes-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--app-space-6)}}@media(min-width:72rem){.home-page{--home-game-width:clamp(26.25rem,36vw,35rem);display:grid;grid-template-columns:minmax(0,1fr) var(--home-game-width);column-gap:clamp(3rem,5vw,6rem);align-self:flex-start;align-items:center;min-height:calc(100dvh - var(--app-header-height));max-width:var(--app-content-wide);padding-block:0}.home-page__content{max-width:45rem;padding-block:var(--app-space-8)}.home-page__content p{line-height:1.6}}.notes-index{width:100%;max-width:calc(var(--app-content-index) + 2*var(--app-gutter));margin-inline:auto;padding:var(--app-space-8) var(--app-gutter) var(--app-space-section)}.notes-index__list{margin:var(--app-space-8) 0 0;padding:0;border-top:1px solid var(--app-color-border);list-style:none}.notes-index__list>li{border-bottom:1px solid var(--app-color-border)}.notes-index__row{display:grid;grid-template-columns:2rem minmax(0,1fr) auto;gap:var(--app-space-4);align-items:start;width:100%;padding-block:var(--app-space-5)}.notes-index__number{padding-top:.1875rem;color:var(--app-color-text-subtle);font-size:var(--app-font-size-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:color var(--app-transition-fast)}.notes-index__copy{display:grid;min-width:0;gap:var(--app-space-1);transition:transform var(--app-transition-fast)}.notes-index__title{font-size:var(--app-font-size-md);font-weight:var(--app-font-weight-medium);line-height:var(--app-line-height-body);opacity:.88;transition:opacity var(--app-transition-fast)}.notes-index__arrow{margin-top:.3125rem;color:var(--app-color-text-subtle);opacity:.35;transform:translateX(-.125rem);transition:opacity var(--app-transition-fast),transform var(--app-transition-fast)}.notes-index__row:focus-visible .notes-index__number,.notes-index__row:hover .notes-index__number{color:var(--app-color-text-muted)}.notes-index__row:focus-visible .notes-index__copy,.notes-index__row:hover .notes-index__copy{transform:translateX(.125rem)}.notes-index__row:focus-visible .notes-index__title,.notes-index__row:hover .notes-index__title{opacity:1}.notes-index__row:focus-visible .notes-index__arrow,.notes-index__row:hover .notes-index__arrow{opacity:.9;transform:translateX(var(--app-space-1))}.notes-index__row:focus-visible{outline-offset:-2px}@media(max-width:32rem){.notes-index{padding-top:var(--app-space-6)}.notes-index__row{grid-template-columns:1.75rem minmax(0,1fr);gap:var(--app-space-3)}.notes-index__arrow{display:none}}.not-found-page{display:grid;width:100%;max-width:var(--app-content-reading);flex:1 1;align-items:center;margin-inline:auto;padding:var(--app-space-8) var(--app-gutter) var(--app-space-10)}