@font-face{font-family:Atkinson Hyperlegible Next;src:url("/css/atkinson-hyperlegible-next-v7-latin-VX3WN42K.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap}@font-face{font-family:Atkinson Hyperlegible Next;src:url("/css/atkinson-hyperlegible-next-v7-latin-italic-YBRJRG7J.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Pixelify Sans;src:url("/css/pixelify-sans-v3-latin-LMFOYIY7.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Silkscreen;src:url("/css/silkscreen-v6-latin-GEQY4APA.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{color-scheme:light;--bg: #F5F7FB;--surface: #FFFFFF;--text: #17223A;--muted: #56627B;--line: #D4DBE9;--blue: #234D88;--blue-soft: #E2EAF6;--accent: #F2B227;--on-accent: #17223A;--tip-bg: #E6EEF9;--tip-ink: #1F4479;--warn-bg: #FBE9E1;--warn-ink: #9A3A1A;--font-display: "Pixelify Sans", "Silkscreen", ui-monospace, monospace;--font-label: "Silkscreen", ui-monospace, "Courier New", monospace;--font-body: "Atkinson Hyperlegible Next", "Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", sans-serif;--step--1: .8125rem;--step-0: 1.0625rem;--step-1: 1.25rem;--step-2: 1.625rem;--step-3: 2.125rem;--step-4: 2.875rem;--notch: 4px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #0D1526;--surface: #142038;--text: #E3E9F5;--muted: #9BA8C1;--line: #263559;--blue: #8FB5F1;--blue-soft: #1B2B4D;--accent: #FFC845;--on-accent: #0D1526;--tip-bg: #172A4B;--tip-ink: #B9D1F7;--warn-bg: #3A2119;--warn-ink: #FFB8A2}}:root[data-theme=dark]{color-scheme:dark;--bg: #0D1526;--surface: #142038;--text: #E3E9F5;--muted: #9BA8C1;--line: #263559;--blue: #8FB5F1;--blue-soft: #1B2B4D;--accent: #FFC845;--on-accent: #0D1526;--tip-bg: #172A4B;--tip-ink: #B9D1F7;--warn-bg: #3A2119;--warn-ink: #FFB8A2}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--step-0);line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:var(--blue);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px}h1,h2,h3,p,ul,ol,dl,figure,blockquote{margin:0}h1,h2{font-family:var(--font-display);font-weight:700;line-height:1.15;text-wrap:balance;letter-spacing:.01em}h3{font-size:var(--step-1);line-height:1.3;text-wrap:balance}strong{font-weight:700}.label{font-family:var(--font-label);font-size:var(--step--1);font-weight:400;text-transform:uppercase;letter-spacing:.06em;line-height:1.2}.wrap{max-width:72rem;margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.px{clip-path:polygon(0 var(--notch),var(--notch) var(--notch),var(--notch) 0,calc(100% - var(--notch)) 0,calc(100% - var(--notch)) var(--notch),100% var(--notch),100% calc(100% - var(--notch)),calc(100% - var(--notch)) calc(100% - var(--notch)),calc(100% - var(--notch)) 100%,var(--notch) 100%,var(--notch) calc(100% - var(--notch)),0 calc(100% - var(--notch)))}.sprite{display:inline-block;vertical-align:middle;flex:none}.skip{position:absolute;left:8px;top:-100px;z-index:10;padding:8px 12px;background:var(--accent);color:var(--on-accent);font-weight:700}.skip:focus{top:8px}.logo{display:inline-flex;line-height:0}.logo svg{width:auto;display:block}.logo-header svg{height:46px}.logo-hero svg{height:132px;max-width:100%}.logo .logo-ink{fill:var(--blue)}.logo .logo-shadow{fill:var(--accent)}.site-header .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding-block:18px}.brand{display:inline-flex}.nav{display:flex;align-items:center;gap:12px 22px;flex-wrap:wrap}.nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 22px}.nav a{font-family:var(--font-display);font-weight:500;font-size:var(--step-1);color:var(--text);text-decoration:none;padding-block:4px;display:inline-block;background:linear-gradient(var(--accent),var(--accent)) left bottom / 0 4px no-repeat}.nav a:hover,.nav a[aria-current]{background-size:100% 4px}.theme-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;cursor:pointer;padding:0;background:var(--surface);color:var(--blue);border:2px solid var(--line)}.theme-btn .sun{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-btn .sun{display:inline-block}:root:not([data-theme=light]) .theme-btn .moon{display:none}}:root[data-theme=dark] .theme-btn .sun{display:inline-block}:root[data-theme=dark] .theme-btn .moon{display:none}.ground{height:12px;background:conic-gradient(var(--blue) 25%,var(--blue-soft) 0 50%,var(--blue) 0 75%,var(--blue-soft) 0) 0 0 / 12px 12px;opacity:.9}main{padding-block:40px 64px}.page{display:grid;gap:56px}.block{display:grid;gap:24px}.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:var(--step-1);padding:10px 18px;text-decoration:none;cursor:pointer;border:2px solid var(--text);box-shadow:4px 4px 0 var(--text);transition:transform 80ms steps(2),box-shadow 80ms steps(2)}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--text)}.btn:active{transform:translate(4px,4px);box-shadow:0 0 0 var(--text)}.hero{display:grid;gap:22px;max-width:46rem}.hero>.label,.intro>.label,.prose>.label{color:var(--muted)}.hero h1{font-size:var(--step-4)}.hero h1 em{font-style:normal;color:var(--blue)}.lede{font-size:var(--step-1);color:var(--muted);max-width:42rem}.lede p+p{margin-top:.75em}.actions{display:flex;flex-wrap:wrap;gap:16px;padding-top:6px}.section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px}.section-head h2{font-size:var(--step-3)}.section-head a{font-weight:700}.feature{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:center;padding:20px;background:var(--surface);color:var(--text);text-decoration:none;border:2px solid var(--line)}.feature:hover{border-color:var(--blue)}.feature-img img{width:100%;aspect-ratio:16 / 9;object-fit:cover}.feature .txt{display:grid;gap:12px}.feature h3{font-size:var(--step-2);line-height:1.2}.feature:hover h3{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.feature p{color:var(--muted)}.game{color:var(--blue)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));gap:20px}.card{display:grid;grid-template-rows:auto auto 1fr auto;gap:10px;padding:20px;background:var(--surface);color:var(--text);text-decoration:none;border:2px solid var(--line)}.card:hover{border-color:var(--blue)}.card:hover h3{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.card p{color:var(--muted)}.meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;color:var(--muted);font-size:var(--step--1);font-variant-numeric:tabular-nums}.meta .ver{font-family:var(--font-label);color:var(--text);background:var(--blue-soft);padding:1px 6px}.games{display:flex;flex-wrap:wrap;gap:12px}.chip{display:inline-flex;align-items:center;gap:10px;font-weight:700;text-decoration:none;padding:8px 14px;background:var(--surface);color:var(--text);border:2px solid var(--line)}.chip .count{font-family:var(--font-label);font-size:var(--step--1);font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums}.chip:hover{border-color:var(--blue)}.chip[aria-current]{background:var(--blue);border-color:var(--blue);color:var(--bg)}.chip[aria-current] .count{color:var(--bg)}.intro{display:grid;gap:12px;max-width:46rem}.intro h1{font-size:var(--step-4)}.prose{display:grid;gap:20px;max-width:68ch;min-width:0}.prose>h1{font-size:var(--step-4)}.prose h2{font-size:var(--step-3);padding-top:24px;display:flex;gap:14px;align-items:flex-start;scroll-margin-top:16px}.prose h3{padding-top:8px;display:flex;gap:8px;align-items:baseline;scroll-margin-top:16px}.anchor{color:var(--muted);text-decoration:none;font-family:var(--font-body);font-size:.7em;opacity:0;align-self:center}.anchor:before{content:"#"}h2:hover .anchor,h3:hover .anchor,.anchor:focus{opacity:1}.hnum{flex:none;display:grid;place-items:center;min-width:1.35em;height:1.35em;padding-inline:.2em;font-size:.8em;background:var(--blue);color:var(--bg);margin-top:-.06em}.prose ul{list-style:none;padding:0;display:grid;gap:8px}.prose ul li{position:relative;padding-left:1.4em}.prose ul li:before{content:"";position:absolute;left:.2em;top:.6em;width:7px;height:7px;background:var(--blue)}.prose ol{list-style:none;padding:0;display:grid;gap:10px;counter-reset:n}.prose ol li{counter-increment:n;display:grid;grid-template-columns:2rem minmax(0,1fr);gap:12px;align-items:start}.prose ol li:before{content:counter(n);display:grid;place-items:center;width:2rem;height:2rem;font-family:var(--font-display);font-weight:700;font-size:1rem;background:var(--accent);color:var(--on-accent);box-shadow:2px 2px 0 var(--text)}.prose li>p+p{margin-top:.5em}.prose code{font-size:.9em;background:var(--blue-soft);padding:1px 5px}blockquote{padding:16px 18px;display:grid;gap:8px;background:var(--blue-soft);color:var(--text);border:2px solid var(--blue)}blockquote strong{color:var(--blue)}.callout{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;align-items:start;padding:16px 18px;border:2px solid currentColor}.callout .sprite{grid-row:span 2;margin-top:2px}.callout-body{color:var(--text);display:grid;gap:8px}.callout.tip{background:var(--tip-bg);color:var(--tip-ink)}.callout.warn{background:var(--warn-bg);color:var(--warn-ink)}details.spoiler{border:2px dashed var(--line);background:var(--surface)}details.spoiler summary{display:flex;align-items:center;gap:12px;cursor:pointer;padding:14px 18px;list-style:none;font-weight:700;color:var(--text)}details.spoiler summary::-webkit-details-marker{display:none}details.spoiler .hint{margin-left:auto;color:var(--muted)}details.spoiler:not([open]) .hint:after{content:" \25bc"}details.spoiler[open] .hint:after{content:" \25b2"}.spoiler-body{padding:0 18px 16px;display:grid;gap:8px}figure{display:grid;gap:10px}figure img{border:2px solid var(--line);background:var(--surface)}figcaption{color:var(--muted);font-size:var(--step--1)}.img-link{display:block}.img-link:hover img{border-color:var(--blue)}.table-wrap{overflow-x:auto;border:2px solid var(--line);background:var(--surface)}table{border-collapse:collapse;width:100%;min-width:36rem;font-variant-numeric:tabular-nums;font-size:.9688rem;line-height:1.45}th,td{padding:10px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}thead th{font-family:var(--font-label);font-size:var(--step--1);font-weight:400;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--blue-soft);border-bottom:2px solid var(--line)}tbody td:first-child{font-weight:700}tbody tr:last-child td{border-bottom:0}th.align-left,td.align-left{text-align:left}th.align-center,td.align-center{text-align:center}th.align-right,td.align-right{text-align:right}.crumbs{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted)}.crumbs a{color:var(--muted)}.guide-head{display:grid;gap:18px;max-width:54rem}.guide-head h1{font-size:var(--step-4)}.guide-head .lede{max-width:44rem}.facts{display:flex;flex-wrap:wrap;gap:10px 32px;padding:14px 0;border-block:2px solid var(--line)}.facts div{display:grid;gap:4px}.facts dt{color:var(--muted)}.facts dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}.facts dd small{font-weight:400;color:var(--muted);font-size:var(--step--1)}.cover{max-width:54rem}.cover img{border:2px solid var(--line)}.guide-body{display:grid;grid-template-columns:17rem minmax(0,1fr);gap:48px;align-items:start}.guide-body.no-toc{grid-template-columns:minmax(0,1fr)}.toc{position:sticky;top:calc(env(safe-area-inset-top,0px) + 16px);max-height:calc(100vh - 32px);overflow-y:auto;overscroll-behavior:contain;padding-right:4px}.toc-box>summary{display:none}.toc-inner{display:grid;gap:12px}.toc .label{color:var(--muted)}.progress{display:grid;gap:6px}.progress-row{display:flex;justify-content:space-between;align-items:baseline}.progress-row .pct{font-family:var(--font-label);font-size:var(--step--1);color:var(--text);font-variant-numeric:tabular-nums}.bar{display:grid;grid-template-columns:repeat(20,1fr);gap:2px;padding:3px;border:2px solid var(--line)}.bar i{height:8px;background:var(--blue-soft)}.bar i.on{background:var(--accent)}.toc ol{list-style:none;margin:0;padding:0;display:grid;gap:1px}.toc a{display:grid;grid-template-columns:1.9em minmax(0,1fr);gap:6px;padding:5px 8px;color:var(--text);text-decoration:none;line-height:1.35;font-size:.9375rem}.toc a:before{content:attr(data-n);font-family:var(--font-label);color:var(--muted);font-size:var(--step--1);padding-top:2px}.toc a:hover{background:var(--blue-soft)}.toc a.current{background:var(--blue-soft);color:var(--blue);font-weight:700}.toc a.current:before{color:var(--blue)}.tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:12px}.tags .label{color:var(--muted);margin-right:4px}.tag{font-family:var(--font-label);font-size:var(--step--1);padding:3px 8px;border:2px solid var(--line);color:var(--text);text-decoration:none}.tag:hover{border-color:var(--blue)}.pager{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:16px;padding-top:8px}.pager a{display:grid;gap:4px;padding:16px 18px;border:2px solid var(--line);background:var(--surface);text-decoration:none;color:var(--text);font-weight:700}.pager a .label{color:var(--muted)}.pager a:hover{border-color:var(--blue)}.pager a.next{text-align:right}.site-footer{border-top:2px solid var(--line)}.site-footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding-block:24px;color:var(--muted);font-size:var(--step--1)}.site-footer nav{display:flex;gap:20px;flex-wrap:wrap}.site-footer a{color:var(--muted)}@media(max-width:900px){.guide-body{grid-template-columns:minmax(0,1fr);gap:28px}.toc{position:static;max-height:none;overflow:visible;padding:0}.toc-box{background:var(--surface);border:2px solid var(--line)}.toc-box>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;list-style:none;font-weight:700}.toc-box>summary::-webkit-details-marker{display:none}.toc-box[open]>summary .label:after{content:" \25b2"}.toc-box:not([open])>summary .label:after{content:" \25bc"}.toc-inner{padding:0 12px 14px}.toc-title{display:none}.feature{grid-template-columns:minmax(0,1fr)}}@media(max-width:560px){:root{--step-4: 2.125rem;--step-3: 1.625rem}main{padding-block:28px 48px}.feature{padding:14px}.logo-hero svg{height:96px}}@media(pointer:coarse){.nav a,.crumbs a,.site-footer a,.section-head a{display:inline-flex;align-items:center;min-height:44px}.toc a{min-height:44px;align-content:center}.site-footer nav{column-gap:28px}}@media(prefers-reduced-motion:reduce){.btn,.btn:hover,.btn:active{transition:none;transform:none}}
