@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2) format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2) format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/sora-latin-ext-wght-normal.CawQDOvP.woff2) format("woff2-variations");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:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/sora-latin-wght-normal.DdqRvwsR.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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}:root{color-scheme:dark;--bg: #07060f;--bg-2: #0d0b1f;--violet: #8a6bff;--cyan: #5cf2ff;--gold: #ffd479;--ink: #f3f1ff;--muted: #b9b4d6;--line: rgba(255, 255, 255, .12);--panel: rgba(14, 11, 30, .58);--good: #57d98d;--info: #8fd3ff;--display: "Sora Variable", "Sora", "Segoe UI", system-ui, sans-serif;--body: "Inter Variable", "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--gutter: clamp(16px, 4vw, 48px)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(1100px 620px at 85% -12%,rgba(138,107,255,.2),transparent 62%),radial-gradient(900px 560px at -12% 38%,rgba(92,242,255,.07),transparent 60%),var(--bg);color:var(--ink);font:400 15px/1.6 var(--body);overflow-x:hidden}img{display:block;max-width:100%}a{color:var(--cyan)}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:6px}section[id],li[id]{scroll-margin-top:110px}.top{position:sticky;top:0;z-index:20;background:#07060fcc;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border-bottom:1px solid var(--line)}.top-in{width:min(1200px,calc(100% - 2 * var(--gutter)));margin:0 auto;min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:16px}.wordmark{font:800 17px/1 var(--display);letter-spacing:.22em;text-decoration:none;background:linear-gradient(92deg,#fff 0%,var(--cyan) 55%,var(--violet) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.top-link{font:500 14px/1 var(--body);color:var(--muted);text-decoration:none}.top-link:hover{color:var(--ink)}.page{width:min(1200px,calc(100% - 2 * var(--gutter)));margin:0 auto;padding:48px 0 40px;display:grid;gap:56px}.eyebrow{font:600 12px/1 var(--display);letter-spacing:.2em;text-transform:uppercase;color:var(--cyan)}h1{font:700 clamp(34px,6vw,60px)/1.04 var(--display);margin:0;letter-spacing:.02em;text-wrap:balance}h1 span{display:block;margin-top:10px;font-size:.42em;font-weight:600;color:var(--muted)}h2{font:600 28px/1.15 var(--display);margin:0;text-wrap:balance}h3{font:600 20px/1.25 var(--display);margin:0;text-wrap:balance}p{margin:0}.lede{max-width:66ch;color:var(--muted);font-size:16px}.header{display:grid;gap:14px;border-left:2px solid var(--gold);padding-left:clamp(12px,2vw,20px)}.specs{display:flex;flex-wrap:wrap;gap:8px 22px;margin:4px 0 0;padding:14px 0 0;list-style:none;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.specs b{color:var(--ink);font-weight:600}nav.tabs{position:sticky;top:60px;z-index:5;background:#07060feb;margin-inline:calc(-1 * var(--gutter));padding:10px var(--gutter);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:thin}nav.tabs ol{display:flex;gap:6px;list-style:none;margin:0;padding:0;width:max-content}nav.tabs a{display:block;padding:6px 10px;border-radius:8px;text-decoration:none;font:500 13px/1.2 var(--body);color:var(--muted);border:1px solid transparent;white-space:nowrap}nav.tabs a small{display:block;font-size:10px;letter-spacing:.06em;opacity:.75}nav.tabs a:hover{color:var(--ink);border-color:var(--line)}.content{display:grid;gap:48px}.era,.overview,.showcase{display:grid;gap:18px}.head{display:grid;gap:6px}.head p,.era-intro p{max-width:72ch;color:var(--muted)}.era-intro{display:grid;gap:8px;padding-bottom:6px;border-bottom:1px solid var(--line)}.era-intro .meta,.era-card .meta{font:500 12px/1.4 var(--body);color:var(--gold);letter-spacing:.06em}.era-intro p{font-size:16px}code{font-family:ui-monospace,Consolas,monospace;font-size:.92em}.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr))}.grid.worlds{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.grid.small{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));margin-top:6px}figure{margin:0;display:grid;gap:8px;align-content:start}figure button{all:unset;cursor:zoom-in;display:block;border-radius:10px;overflow:hidden;background:var(--bg-2);outline:1px solid var(--line);aspect-ratio:16 / 9}figure button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}figure img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}figure button:hover img{transform:scale(1.02)}figcaption{font-size:14px;color:var(--muted);max-width:62ch}figcaption strong{color:var(--ink);font-weight:500}.tag{font:600 11px/1 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:4px}.src{font-size:11.5px;color:var(--muted);display:block;margin-top:3px;opacity:.8}.wide button{aspect-ratio:1600 / 1029}.strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);gap:12px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x proximity}.strip figure{scroll-snap-align:start}.strip .when{font-size:12px;color:var(--ink)}.strip .when span{color:var(--gold)}.eras{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr))}.era-card{display:grid;grid-template-columns:132px 1fr;gap:14px;align-items:start;padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:14px;text-decoration:none;color:inherit}.era-card:hover{border-color:#ffffff3d}.era-card img,.era-card .noimg{width:132px;aspect-ratio:16 / 10;object-fit:cover;border-radius:8px;background:var(--bg-2)}.era-card .noimg{background:repeating-linear-gradient(135deg,var(--bg-2) 0 8px,var(--panel) 8px 16px)}.era-card h3{font-size:17px;margin:2px 0 4px}.era-card p{font-size:13.5px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.phases{display:grid;gap:0;list-style:none;margin:0;padding:0}.phase{display:grid;grid-template-columns:76px 1fr;gap:16px;padding:22px 0;border-bottom:1px solid var(--line)}.phase .num{font:600 30px/1 var(--display);color:var(--gold);font-variant-numeric:tabular-nums}.phase .num.label{font-size:17px;line-height:1.15;overflow-wrap:anywhere}.phase .num small{display:block;font:400 12px/1.6 var(--body);color:var(--muted);margin-top:6px}.phase .body{display:grid;gap:8px;min-width:0}.phase .row{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px}.pill{font:600 10.5px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border-radius:999px;border:1px solid var(--line);color:var(--muted)}.pill.done{color:var(--good);border-color:color-mix(in srgb,var(--good) 45%,var(--line))}.pill.progress{color:var(--gold);border-color:color-mix(in srgb,var(--gold) 45%,var(--line))}.pill.planned{color:var(--info);border-color:color-mix(in srgb,var(--info) 45%,var(--line))}.phase .what{max-width:72ch}.phase blockquote{margin:0;padding:2px 0 2px 12px;border-left:2px solid var(--gold);color:var(--muted);font-size:14px;max-width:70ch}.phase .why{color:var(--muted);font-size:14px;max-width:70ch}.phase .commit{font-size:11.5px;color:var(--muted);font-family:ui-monospace,Consolas,monospace}.pager{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.pager a{font:500 13px/1.3 var(--body);color:var(--ink);text-decoration:none;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.pager a:hover{border-color:#ffffff3d}.pager a small{display:block;color:var(--muted);font-size:11px}.note{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:16px;max-width:90ch}.hero{display:grid;gap:16px;max-width:70ch}.hero p{color:var(--muted);font-size:17px}.games{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));list-style:none;margin:0;padding:0}.game{display:grid;gap:14px;align-content:start;padding:22px;min-height:100%;background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:inset 0 1px #ffffff14}.game h2{font-size:22px}.game p{color:var(--muted)}.game .state{font:600 11px/1 var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.game .stats{font-size:13px;color:var(--muted)}.game .links{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:4px}.game .links a{font:600 14px/1 var(--display);text-decoration:none;color:var(--cyan);padding:10px 0}.game .links a.feed{font:500 13px/1 var(--body);color:var(--muted)}.game .links a:hover{text-decoration:underline}.soon{font:600 14px/1 var(--display);color:var(--muted)}.back{font:600 14px/1 var(--display);color:var(--cyan)}.site-foot{border-top:1px solid var(--line);padding:28px 0 40px}.foot{width:min(1200px,calc(100% - 2 * var(--gutter)));margin:0 auto;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}.credit{font-size:14px;color:var(--muted)}.foot nav{display:flex;gap:20px;flex-wrap:wrap}.foot nav a{font-size:14px;color:var(--muted);text-decoration:none}.foot nav a:hover{color:var(--ink)}dialog{border:0;padding:0;background:transparent;max-width:96vw;max-height:94vh;color:var(--ink)}dialog::backdrop{background:#06050ceb}dialog img{max-width:96vw;max-height:84vh;display:block}dialog p{margin:10px 2px 0;font-size:14px;max-width:90ch}dialog form{position:absolute;top:8px;right:8px;margin:0}dialog form button{font:500 13px var(--body);background:var(--panel);color:var(--ink);border:1px solid var(--line);padding:6px 12px;border-radius:10px;cursor:pointer}@media(max-width:640px){.phase{grid-template-columns:1fr;gap:6px}.phase .num{font-size:24px}.era-card{grid-template-columns:96px 1fr}.era-card img,.era-card .noimg{width:96px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}figure img{transition:none}}
