:root{color-scheme:dark;--ink:#f5f2eb;--muted:#a9a8ad;--ground:#101116;--raised:#181a21;--line:#2b2e38;--yellow:#f9c74f;--blue:#7bdff2;--max:1180px;background:var(--ground);color:var(--ink);font-family:Space Grotesk,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 84% -10%, #24314d 0, transparent 30rem), var(--ground);margin:0;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select{font:inherit}.shell{width:min(calc(100% - 2rem), var(--max));margin:0 auto}.skip-link{z-index:20;background:var(--yellow);color:#111;border-radius:.35rem;padding:.5rem .75rem;position:fixed;top:.6rem;left:.6rem;transform:translateY(-180%)}.skip-link:focus{transform:none}.site-header{z-index:10;border-bottom:1px solid color-mix(in srgb, var(--line) 80%, transparent);backdrop-filter:blur(14px);background:#101116eb;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4.4rem;display:flex}.brand{color:var(--ink);letter-spacing:.05em;align-items:center;gap:.6rem;font-weight:700;display:inline-flex}.brand-mark{background:var(--yellow);color:#121212;letter-spacing:-.06em;border-radius:.5rem;place-items:center;width:2rem;height:2rem;font-family:DM Mono,monospace;font-size:.75rem;display:grid}.site-nav{color:var(--muted);align-items:center;gap:1.35rem;font-size:.94rem;display:flex}.site-nav a:hover,.site-nav a:focus-visible,.platform-menu summary:hover{color:var(--yellow)}.platform-menu{position:relative}.platform-menu summary{cursor:pointer;list-style:none}.platform-menu summary::-webkit-details-marker{display:none}.platform-popover{border:1px solid var(--line);background:#1d2029;border-radius:.8rem;grid-template-columns:repeat(2,minmax(9rem,1fr));gap:.15rem;width:23rem;padding:.65rem;display:grid;position:absolute;top:calc(100% + 1rem);right:-4rem;box-shadow:0 1rem 3rem #00000059}.platform-popover a{border-radius:.4rem;padding:.5rem .6rem}.platform-popover a:hover{background:#282c37}.menu-button{border:1px solid var(--line);background:0 0;border-radius:.45rem;width:2.75rem;height:2.5rem;padding:.5rem;display:none}.menu-button span{background:var(--ink);height:2px;margin:.25rem;display:block}main{min-height:60vh}.hero{padding:clamp(4rem,9vw,8rem) 0 3rem}.hero-grid{grid-template-columns:1.25fr .75fr;align-items:end;gap:2.5rem;display:grid}.eyebrow{color:var(--yellow);letter-spacing:.11em;text-transform:uppercase;margin:0 0 .6rem;font:500 .78rem/1.2 DM Mono,monospace}h1,h2,h3{margin-top:0;line-height:1.08}h1{letter-spacing:-.065em;max-width:17ch;margin-bottom:1rem;font-size:clamp(2.8rem,7vw,6.4rem)}h2{letter-spacing:-.045em;font-size:clamp(1.6rem,3vw,2.35rem)}h3{font-size:1.05rem}.hero-copy,.intro{color:#cfced3;max-width:63ch;font-size:clamp(1rem,1.5vw,1.16rem)}.hero-panel{border:1px solid var(--line);background:var(--line);border-radius:.9rem;grid-template-columns:repeat(2,1fr);gap:1px;display:grid;overflow:hidden}.hero-stat{background:var(--raised);min-height:7rem;padding:1.25rem}.hero-stat strong{color:var(--blue);font:500 2rem/1 DM Mono,monospace;display:block}.hero-stat span{color:var(--muted);font-size:.86rem}.section{padding:3.8rem 0}.section+.section{border-top:1px solid var(--line)}.section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem;display:flex}.section-heading p{color:var(--muted);margin:0}.text-link{color:var(--yellow);font-weight:600}.text-link:hover{text-underline-offset:.25rem;text-decoration:underline}.card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.game-card{border:1px solid var(--line);background:var(--raised);border-radius:.75rem;min-width:0;transition:transform .18s,border-color .18s;overflow:hidden}.game-card:hover{border-color:#586078;transform:translateY(-3px)}.game-cover{aspect-ratio:4/3;background:#232734;position:relative;overflow:hidden}.game-cover img{object-fit:cover;width:100%;height:100%}.game-year{background:#0a0b0fcc;border-radius:.25rem;padding:.2rem .4rem;font:.72rem DM Mono,monospace;position:absolute;top:.6rem;right:.6rem}.game-card-body{padding:.9rem}.game-card-body .eyebrow{margin-bottom:.3rem;font-size:.65rem}.game-card h3{text-overflow:ellipsis;white-space:nowrap;margin-bottom:.35rem;font-size:1rem;overflow:hidden}.game-card-body>p:last-child{color:var(--muted);margin:0;font-size:.82rem}.browse-grid{grid-template-columns:repeat(4,1fr);gap:.75rem;display:grid}.browse-card{border:1px solid var(--line);background:#181a21a6;border-radius:.65rem;padding:1.1rem}.browse-card:hover{border-color:var(--yellow)}.browse-card strong{display:block}.browse-card span{color:var(--muted);font-size:.83rem}.page-hero{border-bottom:1px solid var(--line);padding:4rem 0 2rem}.page-hero h1{max-width:22ch;font-size:clamp(2.35rem,5vw,4.5rem)}.breadcrumbs{color:var(--muted);padding-top:1.5rem;font-size:.85rem}.breadcrumbs ol{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";color:#6e7180;padding-right:.45rem}.breadcrumbs a:hover{color:var(--yellow)}.catalog-layout{padding:2rem 0 4rem}.filter-bar{grid-template-columns:1fr repeat(2,minmax(11rem,.35fr));gap:.75rem;margin-bottom:1.5rem;display:grid}.filter-bar input,.filter-bar select{min-width:0;color:var(--ink);border:1px solid var(--line);background:var(--raised);border-radius:.45rem;padding:.8rem .9rem}.results-note{color:var(--muted);margin:0 0 1.25rem;font-size:.9rem}.empty-state{color:var(--muted);border:1px dashed var(--line);text-align:center;border-radius:.65rem;padding:2rem}.detail-grid{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(1.5rem,5vw,5rem);padding:2rem 0 3.5rem;display:grid}.detail-cover{border:1px solid var(--line);background:var(--raised);border-radius:.9rem;overflow:hidden}.detail-cover img{aspect-ratio:4/3;object-fit:cover;width:100%}.detail-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1.5rem 0;display:grid}.detail-meta div{border:1px solid var(--line);border-radius:.5rem;padding:.75rem}.detail-meta dt{color:var(--muted);font-size:.76rem}.detail-meta dd{margin:.15rem 0 0;font-weight:600}.notice{border-left:3px solid var(--yellow);color:#e1d8b6;background:#f9c74f17;padding:1rem}.prose{max-width:74ch;padding-bottom:3.5rem}.prose h2{margin-top:2.5rem}.prose p,.prose li{color:#d2d1d6}.prose a{color:var(--yellow);text-underline-offset:.2rem;text-decoration:underline}.prose table{border-collapse:collapse;width:100%}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--line);padding:.65rem}.emulator-section{padding:2rem 0 1rem}.emulator-header{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.emulator-header h2{margin:0;font-size:1.5rem}.emu-badge{background:var(--yellow);color:#111;text-transform:uppercase;border-radius:.3rem;padding:.25rem .6rem;font:600 .75rem/1.2 DM Mono,monospace}.emulator-container{aspect-ratio:4/3;border:1px solid var(--line);background:#000;border-radius:.9rem;width:100%;max-height:70vh;position:relative;overflow:hidden}.emulator-placeholder{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:2rem;display:flex}.emu-icon{margin-bottom:1rem;font-size:4rem}.emulator-placeholder h3{margin-bottom:.5rem;font-size:1.4rem}.emulator-placeholder p{color:var(--muted);max-width:40ch;margin-bottom:1.5rem}.emu-start-btn{background:var(--yellow);color:#111;cursor:pointer;letter-spacing:.04em;border:none;border-radius:.5rem;padding:.9rem 2.5rem;font-size:1.1rem;font-weight:700;transition:transform .15s,background .15s}.emu-start-btn:hover{background:#fdd85d;transform:scale(1.04)}.emulator-info{color:var(--muted);padding:1rem 0;font-size:.88rem}.emulator-container #ejs-game{width:100%;height:100%}.legal-page{max-width:74ch;padding-bottom:4rem}.guide-list{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.guide-card{border:1px solid var(--line);background:var(--raised);border-radius:.7rem;padding:1.3rem}.guide-card p{color:var(--muted)}.guide-card h2{margin-bottom:.65rem;font-size:1.4rem}.site-footer{border-top:1px solid var(--line);background:#0c0d11;padding:3rem 0 1.25rem}.footer-grid{grid-template-columns:1.6fr repeat(3,1fr);gap:2rem;display:grid}.footer-grid h2{letter-spacing:.08em;text-transform:uppercase;margin-bottom:.7rem;font-size:.85rem}.footer-grid p,.footer-grid a{max-width:28ch;color:var(--muted);margin:.35rem 0;font-size:.88rem;display:block}.footer-grid a:hover{color:var(--yellow)}.footer-bottom{border-top:1px solid var(--line);color:#777984;margin-top:2.5rem;padding-top:1rem;font-size:.76rem}.pagination{justify-content:center;align-items:center;gap:1rem;padding:2.5rem 0 1rem;display:flex}.pagination-pages{gap:.3rem;display:flex}.pagination-page,.pagination-arrow{border:1px solid var(--line);min-width:2.2rem;height:2.2rem;color:var(--muted);border-radius:.4rem;justify-content:center;align-items:center;padding:0 .6rem;font:500 .85rem/1 DM Mono,monospace;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.pagination-page:hover,.pagination-arrow:hover{border-color:var(--yellow);color:var(--yellow)}.pagination-page.is-current{background:var(--yellow);border-color:var(--yellow);color:#111;font-weight:700}.pagination-arrow.is-disabled{opacity:.35;pointer-events:none}.pagination-ellipsis{color:var(--muted);align-items:center;padding:0 .3rem;display:inline-flex}@media (width<=900px){.hero-grid,.detail-grid{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.browse-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=680px){.menu-button{display:block}.site-nav{border:1px solid var(--line);background:#171921;border-radius:.65rem;align-items:stretch;padding:.8rem;display:none;position:absolute;top:100%;left:1rem;right:1rem;box-shadow:0 1rem 2rem #00000059}.site-nav.is-open{display:grid}.site-nav a,.platform-menu summary{padding:.55rem}.platform-popover{width:100%;box-shadow:none;grid-template-columns:1fr;margin-top:.5rem;position:static}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.browse-grid{grid-template-columns:repeat(2,1fr)}.filter-bar,.guide-list,.footer-grid{grid-template-columns:1fr}.detail-meta{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
