html,body{width:100%;height:100%;padding:0;margin:0;overflow:hidden}:root{--font-body: "Adwaita Sans", "Inter", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display: "Inter Tight", "Adwaita Sans", "Inter", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "Adwaita Mono", "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;color-scheme:dark;--bg-sub: color-mix(in srgb, #040404 97.5%, var(--accent));--bg: color-mix(in srgb, #0a0a0a 97.5%, var(--accent));--surface0: color-mix(in srgb, #0f0f0f 97.5%, var(--accent));--surface1: color-mix(in srgb, #1f1f1f 97.5%, var(--accent));--surface2: color-mix(in srgb, #222222 97.5%, var(--accent));--surface3: color-mix(in srgb, #272727 97.5%, var(--accent));--surface4: color-mix(in srgb, #333333 97.5%, var(--accent));--surface5: color-mix(in srgb, #3a3a3a 97.5%, var(--accent));--surface6: color-mix(in srgb, #3f3f3f 97.5%, var(--accent));--fg: #fff;--fg2: color-mix(in srgb, #eaeaea 97.5%, var(--accent));--fg3: color-mix(in srgb, #dedede 97.5%, var(--accent));--fg4: color-mix(in srgb, #cacaca 97.5%, var(--accent));--fg5: color-mix(in srgb, #bebebe 97.5%, var(--accent));--fg6: color-mix(in srgb, #aaaaaa 97.5%, var(--accent));--accent: #e51523;--loader-bg: #451922;--error: #f02424;--success: #84f084;--warning: #ecd47a;--info: #b2c2f8;--accent: #15843c;--loader-bg: #153a20;font-family:var(--font-body);accent-color:var(--accent);scrollbar-color:var(--accent)}h1,h2,h3,h4,h5{font-family:var(--font-display)}@font-face{font-family:Silkscreen;font-weight:400;src:url(/fonts/silkscreen-400.woff2) format("woff2")}@font-face{font-family:Silkscreen;font-weight:700;src:url(/fonts/silkscreen-700.woff2) format("woff2")}@font-face{font-family:Noto Sans;font-weight:400;font-display:swap;src:url(/fonts/notosans-latin.woff2) format("woff2")}:root{--bg: #161616;--bg2: #1e1e1e;--surface: #242424;--surface2: #2a2a2a;--line: #333;--ink: #fff;--dim: #9a9a9a;--green: #008542;--green2: #00b45a;--pixel: Silkscreen, monospace;--sans: "Noto Sans", system-ui, -apple-system, sans-serif;--mono: ui-monospace, "SF Mono", Menlo, monospace}[hidden]{display:none!important}html,body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 var(--sans)}body{overflow-y:auto!important;overflow-x:hidden}#app{min-height:100%}*{box-sizing:border-box}.top{display:flex;align-items:center;justify-content:space-between;padding:14px 26px;background:var(--bg2);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;gap:10px;font-family:var(--pixel);font-size:14px}.brand .mark{width:22px;height:22px;border-radius:4px;background:linear-gradient(180deg,var(--green2) 0 55%,#6b4a2a 55% 100%)}.brand .dim{color:var(--dim)}.who{font:11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim);display:flex;align-items:center;gap:10px}.who input{width:170px;padding:8px 10px;border-radius:6px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:13px/1 var(--mono);letter-spacing:0;text-transform:none}.who input:focus{outline:none;border-color:var(--green2)}.home{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:48px 0 60px}.hero h1{margin:0 0 6px;font-family:var(--pixel);font-weight:700;font-size:clamp(26px,4vw,44px);line-height:1.18;letter-spacing:.01em}.hero h1 em{color:var(--green2);font-style:normal}.hero p,.pills{display:none}.pills span{padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--bg2);color:var(--dim);font:11px/1 var(--mono)}.pills b{color:var(--ink)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:14px;margin:34px 0 10px}.card{position:relative;display:flex;flex-direction:column;gap:3px;padding:16px 16px 14px;text-align:left;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:10px;cursor:pointer;transition:border-color .12s ease,transform .12s ease,background .12s ease}.card:hover{border-color:var(--green2);background:var(--surface2);transform:translateY(-2px)}.card .year{font:700 12px/1 var(--pixel);color:#6f6f6f}.card b{font:700 15px/1.35 var(--pixel);letter-spacing:0;margin-top:2px;overflow-wrap:anywhere}.card small{color:var(--dim)}.card .go{margin-top:12px;color:var(--green2);font:11px/1 var(--mono);text-transform:uppercase;letter-spacing:.12em}.badge{position:absolute;top:14px;right:14px;padding:4px 7px;border-radius:5px;font:10px/1 var(--mono);letter-spacing:.08em;border:1px solid var(--line);color:var(--dim)}.badge.ikvm{color:var(--green2);border-color:#00b45a66}.badge.teavm{color:#d9a441;border-color:#d9a44159}.card.teavm{opacity:.82}.foot{margin-top:40px;padding-top:18px;border-top:1px solid var(--line);color:#6f6f6f;font-size:12px;max-width:85ch}.loading{position:fixed;inset:0;display:grid;place-items:center;background:var(--bg);z-index:20}.loadbox{width:min(480px,calc(100% - 32px));text-align:center}.loadyear{font:700 13px/1 var(--pixel);color:#6f6f6f}.loadbox h2{margin:10px 0 20px;font:700 26px/1.2 var(--pixel)}.bar{height:8px;border-radius:4px;background:var(--surface2);overflow:hidden;border:1px solid var(--line)}.bar i{display:block;height:100%;width:0;background:var(--green2);transition:width .25s ease}.loadbox p{margin:12px 0 18px;color:var(--dim);font:12px/1.5 var(--mono)}.ghost{padding:9px 14px;border-radius:7px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:13px/1 var(--sans);cursor:pointer}.ghost:hover{border-color:#555}.ghost.small{padding:7px 11px;font-size:12px}.game{position:fixed;inset:0;background:#000;z-index:30;display:grid;place-items:center}.game #canvas{display:block;background:#000;image-rendering:pixelated;width:100vw!important;height:100vh!important}.booting{position:absolute;inset:0;display:grid;place-items:center;background:#000;color:var(--dim);font:13px/1 var(--mono);z-index:3}.ghost.small{padding:4px 8px;font-size:11px}
