:root{--bg:#0e1630;--panel:#16224a;--panel-2:#1d2c5c;--ink:#f4eedf;--muted:#a9b3cf;--red:#ce1126;--blue:#2a5bd7;--gold:#f6c343;--line:rgba(244,238,223,0.12);--pixel:"DotGothic16",ui-monospace,"Courier New",monospace;--body:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}*,:after,:before{box-sizing:border-box}html{scroll-padding-top:env(safe-area-inset-top,0)}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 var(--body);padding-bottom:env(safe-area-inset-bottom,0)}a{color:var(--gold)}img{max-width:100%}.pixel{image-rendering:pixelated;display:block}.brand,.btn,.kicker,h1,h2,h3,kbd{font-family:var(--pixel);font-weight:400}h1{font-size:clamp(2rem,6vw,3.2rem);line-height:1.1;margin:.4em 0 .3em}h2{font-size:1.5rem;margin:1.6em 0 .5em}.card h2{margin-top:.2em}h3{font-size:1.15rem;margin:.3em 0}main{max-width:1040px;margin:0 auto;padding:0 20px 64px}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;padding:calc(10px + env(safe-area-inset-top, 0px)) 20px 10px;background:rgba(14,22,48,.94);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:3px solid var(--red)}.brand{color:var(--ink);text-decoration:none;font-size:1.2rem}.brand span{color:var(--red);margin-left:6px;filter:brightness(1.4)}.nav nav{display:flex;flex-wrap:wrap;gap:4px 16px}.nav nav a{color:var(--muted);text-decoration:none;font-family:var(--pixel)}.nav nav a:hover{color:var(--gold)}.hero{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:32px;gap:32px;align-items:center;padding:40px 0 8px}.hero-art{width:100%;border:4px solid var(--ink);box-shadow:8px 8px 0 var(--red)}.kicker{color:var(--gold);font-size:.9rem;margin:0;letter-spacing:.04em}.lede{font-size:1.15rem;color:var(--ink)}.status{color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.btn{display:inline-block;padding:10px 18px;text-decoration:none;background:var(--red);color:#fff;border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}.btn.ghost{background:transparent;color:var(--ink)}.btn:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.prose p{max-width:68ch}.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:18px;gap:18px}.grid.two{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid.five{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stack{display:grid;grid-gap:18px;gap:18px}.card{background:var(--panel);border:2px solid var(--line);border-left:6px solid var(--blue);padding:18px 20px;border-radius:4px}.card ol,.card ul{padding-left:1.2em}.center{text-align:center}.center .pixel{margin:0 auto}.recipe .dish{width:72px;margin-bottom:8px}.steps{list-style:none;padding:0!important;display:flex;flex-wrap:wrap;gap:8px;counter-reset:s}.steps li{counter-increment:s;display:flex;align-items:center;gap:6px;background:var(--panel-2);padding:4px 10px 4px 6px;font-family:var(--pixel)}.steps li:before{content:counter(s);color:var(--gold)}.ing{height:26px;width:auto}.ing.big{height:56px;margin-bottom:6px}.character{display:grid;grid-template-columns:140px 1fr;grid-gap:20px;gap:20px;align-items:start}.portrait{width:140px;background:var(--panel-2)}.quotes{list-style:none;padding:0!important;font-family:var(--pixel);color:var(--gold)}.level{display:grid;grid-template-columns:220px 1fr;grid-gap:20px;gap:20px;align-items:start}.level.planned{border-left-color:var(--muted);opacity:.9}.shot{width:220px;border:3px solid var(--ink)}.badge{padding:1px 8px;color:#111}.badge.playable{background:var(--gold)}.badge.planned{background:var(--muted)}.table{width:100%;border-collapse:collapse;background:var(--panel)}.table td,.table th{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line)}.table th{width:120px}kbd{background:var(--ink);color:var(--bg);padding:2px 8px;border-radius:3px}.roadmap li{margin:4px 0}.shots{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:16px;gap:16px}.shots figure{margin:0}.shots .pixel{width:100%;border:3px solid var(--ink)}.shots figcaption{font-size:.9rem;margin-top:6px}.footer,.shots figcaption{font-family:var(--pixel);color:var(--muted)}.footer{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 24px;padding:24px 20px;border-top:3px solid var(--red)}@media (max-width:720px){.character,.hero,.level{grid-template-columns:1fr}.portrait,.shot{width:100%;max-width:320px}}.play{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;background:#000}.play-screen{height:90dvh;min-height:0;overflow:hidden;background:#000}.play-bar{height:10dvh;min-height:48px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 16px;padding:0 16px env(safe-area-inset-bottom,0);background:var(--bg);border-top:3px solid var(--red);font-family:var(--pixel);color:var(--muted);font-size:.85rem}.play-bar .brand{font-size:1rem}.play-soon{height:100%;display:grid;place-content:center;text-align:center;padding:20px;background:var(--bg)}.emu{position:relative;width:100%;height:100%;overflow:hidden;background:#000}.emu-game,.emu-splash{position:absolute;inset:0}.emu-splash{z-index:5;background:#000}.emu-splash-art{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center top}.emu-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(0,0,0,.5),transparent 40%)}.emu-play{position:absolute;left:0;right:0;bottom:6%;display:flex;justify-content:center;padding:0 12px}.emu-play button{background:none;border:0;padding:0;cursor:pointer}.emu-play button:disabled{cursor:wait;opacity:.6}.emu-play img{width:min(58vw,420px)}.emu-play .btn{font-size:1.1rem}.emu-loading{position:absolute;bottom:4px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.1em;color:rgba(255,255,255,.7);font-family:var(--pixel)}.sp{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom, 0px));z-index:50}.sp svg{width:20px;height:20px;fill:currentColor;display:block}.sp-open{position:relative;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--panel);color:var(--gold);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--red);cursor:pointer}.sp-dot{position:absolute;top:5px;right:5px;width:10px;height:10px;border-radius:50%;background:var(--red);border:2px solid var(--panel)}.sp-panel{width:min(330px,calc(100vw - 32px));background:var(--panel);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--red);padding:14px}.sp-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.sp-title{margin:0;font-family:var(--pixel);color:var(--ink)}.sp-sub{margin:2px 0 0;font-size:.8rem;color:var(--muted)}.sp-x{background:none;border:2px solid var(--line);color:var(--ink);width:32px;height:32px;font-size:1.2rem;cursor:pointer;flex:none}.sp-row{display:flex;align-items:center;gap:8px;margin-top:12px}.sp-play{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--bg);border:2px solid var(--ink)}.sp-play,.sp-skip{flex:none;cursor:pointer}.sp-skip{background:none;border:none;color:var(--ink);padding:4px}.sp-seek{flex:1 1;min-width:0}.sp-seek input{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;border-radius:3px;outline:none}.sp-seek input::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--gold);border:2px solid var(--bg)}.sp-seek input::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--gold);border:2px solid var(--bg)}.sp-time{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sp-list{list-style:none;margin:12px 0 0;padding:10px 0 0;border-top:1px solid var(--line)}.sp-list button{width:100%;text-align:left;background:none;border:none;color:var(--muted);font-family:var(--pixel);padding:4px 0;cursor:pointer}.sp-list button.on{color:var(--gold)}.sp-list span{color:var(--red);margin-right:4px}.sp-vol{display:flex;align-items:center;gap:10px;margin-top:8px;color:var(--muted)}.sp-vol input{flex:1 1;accent-color:var(--gold)}.sp button:focus-visible,.sp input:focus-visible{outline:3px solid var(--gold);outline-offset:2px}