/* RetroDock · original local theme · no remote fonts or runtime assets. */
:root{color-scheme:dark;--bg:#101116;--surface:#191b23;--surface-2:#20232e;--surface-3:#292d3a;--line:#303442;--text:#f2f3f8;--muted:#a9adbf;--subtle:#767f96;--purple:#a58aff;--purple-bright:#8060ee;--cyan:#76dedc;--red:#ff898d;--green:#7fdeb0;--danger:#ffb0b4;--radius:18px;--radius-sm:11px;--shadow:0 18px 50px #03040b38;--container:1280px;--focus:0 0 0 3px #b7a0ff6b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;min-width:300px;background:var(--bg);color:var(--text);line-height:1.6;overflow-wrap:break-word}a{color:var(--purple);text-decoration:none}a:hover{color:#c9bbff}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,.button[aria-disabled=true]{opacity:.5;cursor:not-allowed}button,input,select,textarea,a{touch-action:manipulation}img,svg,video,canvas{max-width:100%}img{display:block}button,a,input,textarea,select,summary{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--purple);box-shadow:var(--focus)}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{line-height:1.22;color:var(--text);letter-spacing:-.035em}h1{font-size:clamp(2rem,4vw,3.35rem)}h2{font-size:clamp(1.45rem,2.4vw,2rem)}h3{font-size:1.15rem}p:last-child{margin-bottom:0}hr{border:0;border-top:1px solid var(--line);margin:28px 0}ul,ol{padding-left:1.35em}label{cursor:pointer}small{font-size:.83rem}::selection{background:#8060ee99;color:white}.container{width:min(var(--container),calc(100% - 56px));margin-inline:auto}.site-main{min-height:60vh;padding-bottom:72px}.site-main>.container{padding-top:30px}.muted{color:var(--muted)}.hidden,[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;left:20px;top:-100px;z-index:200;background:white;color:#14151b;padding:12px 18px;border-radius:8px}.skip-link:focus{top:16px}.text-center{text-align:center}.text-right{text-align:right}.no-wrap{white-space:nowrap}.stack{display:flex;flex-direction:column;gap:18px}.inline-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.mb-0{margin-bottom:0}
/* Header: a real navigation bar at every viewport. */
.site-header{position:sticky;top:0;z-index:60;background:#12131af5;border-bottom:1px solid #2b2e3a;box-shadow:0 5px 20px #00000015}.header-inner{width:min(var(--container),calc(100% - 56px));min-height:86px;margin:auto;display:flex;align-items:center;gap:36px}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;color:var(--text);line-height:1.2}.brand:hover{color:white}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border:1px solid #7565a9;background:linear-gradient(140deg,#8269d4,#544181);border-radius:13px;color:white;box-shadow:inset 0 1px 1px #ffffff38;font-size:1.35rem}.brand-mark img,.brand-mark svg{width:28px;height:28px;object-fit:contain}.brand-name{font-size:1.3rem;font-weight:800;letter-spacing:-.045em}.brand small,.brand-tagline{display:block;color:var(--muted);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;margin-top:4px}.main-nav{display:flex;align-items:center;gap:7px;margin-right:auto}.nav-link{display:flex;align-items:center;gap:7px;padding:10px 13px;color:#c8cbd7;font-weight:600;font-size:.87rem;border:1px solid transparent;border-radius:9px;white-space:nowrap}.nav-link:hover,.nav-link.active,.nav-link[aria-current=page]{background:#272331;color:#d5c8ff;border-color:#443853}.nav-dot{height:8px;width:8px;border-radius:2px;background:var(--purple)}.nav-dot.zx{background:linear-gradient(135deg,#f08799 25%,#f1ce75 25% 50%,#7cd49d 50% 75%,#76c5ed 75%)}.nav-dot.nes{background:#ff8088}.header-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.lang-switch,.language-switch{display:inline-flex;align-items:center;gap:0;border:1px solid var(--line);border-radius:9px;padding:3px;font-size:.73rem}.lang-switch a,.language-switch a{color:var(--muted);padding:4px 7px;border-radius:5px;font-weight:700}.lang-switch a.active,.lang-switch a[aria-current=true],.language-switch a.active{background:var(--surface-3);color:white}.mobile-menu-toggle{display:none;width:42px;height:42px;align-items:center;justify-content:center;flex-direction:column;gap:5px;background:var(--surface);border:1px solid var(--line);border-radius:10px;color:var(--text)}.mobile-menu-toggle span:not(.sr-only){display:block;width:18px;height:2px;border-radius:2px;background:currentColor}
/* Buttons share height and never get squeezed out of cards. */
.button,button.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 18px;border-radius:10px;border:1px solid transparent;font-size:.875rem;font-weight:700;line-height:1.35;text-align:center;text-decoration:none;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;color:var(--text);background:var(--surface-3);max-width:100%}.button:hover{color:white;background:#363947;border-color:#626274}.button-primary{background:var(--purple-bright);border-color:#a18ae7;box-shadow:inset 0 1px 0 #ffffff20,0 4px 15px #47348222}.button-primary:hover{background:#9477f4;border-color:#b39bf5;box-shadow:0 6px 22px #7351d132}.button-secondary{background:#272731;border-color:#464452}.button-secondary:hover{background:#34313f;border-color:#807190}.button-small{min-height:36px;padding:7px 12px;font-size:.8rem;border-radius:8px}.button-danger{background:#44262f;border-color:#73424f;color:#ffcad0}.button-danger:hover{background:#60323f;border-color:#b96478;color:white}.button-ghost{background:transparent;border-color:var(--line);color:#d0d2df}.button-ghost:hover{background:#262735}.button-block{width:100%}.button-cyan{background:#275452;border-color:#548b86;color:#c4ffed}.button svg,.button img{width:17px;height:17px;flex-shrink:0}.button .keycap{margin-left:5px;background:#ffffff20;border-color:#ffffff30}.icon-button{width:40px;min-width:40px;height:40px;padding:0;display:inline-grid;place-items:center;border:1px solid var(--line);background:var(--surface);border-radius:10px;color:var(--muted)}.icon-button:hover{color:white;background:var(--surface-3)}
/* A restrained, roomy hero, with original hardware illustration. */
.hero{position:relative;isolation:isolate;display:grid;grid-template-columns:1.04fr 1fr;gap:20px;align-items:center;min-height:445px;padding:48px 48px 34px;border:1px solid #3a334c;border-radius:25px;overflow:hidden;background:radial-gradient(ellipse at 75% 40%,#4c3b753d,transparent 58%),linear-gradient(130deg,#21202e,#191c27 67%,#20232d);box-shadow:var(--shadow);margin-bottom:34px}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:40px 40px;opacity:.2}.hero-copy{position:relative;z-index:2;max-width:555px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#d3c4ff;font-size:.68rem;letter-spacing:.19em;line-height:1.5;font-weight:800;text-transform:uppercase;margin-bottom:18px}.eyebrow:before{content:"";width:6px;height:6px;flex:none;background:#b396ff;border-radius:1px;box-shadow:0 0 10px #b396ff55}.hero-title{font-size:clamp(2.3rem,4.4vw,3.65rem);line-height:1.08;letter-spacing:-.052em;margin-bottom:20px;text-wrap:balance}.hero-title em,.hero-title .accent{font-style:normal;color:#b49afe}.hero-text{max-width:460px;color:#bac0d1;font-size:1rem;line-height:1.75;margin-bottom:26px}.hero-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.hero-actions .button{min-height:47px}.hero-art{display:flex;justify-content:center;align-items:center;min-width:0;position:relative}.hero-art>img,.hero-art>svg{width:100%;height:auto;max-height:400px;object-fit:contain;filter:drop-shadow(0 20px 18px #03051230)}.hero-stats{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px;color:#9198ad;font-size:.76rem}.hero-stats>span,.hero-stats>div{display:flex;align-items:center;gap:8px}.hero-stats strong{color:#dedde9;font-size:.88rem}.hero-stats .status-dot{width:6px;height:6px;background:var(--green);border-radius:50%;display:inline-block}.platform-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0 0 38px}.platform-card{position:relative;display:flex;align-items:center;gap:20px;min-height:112px;padding:22px 26px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);overflow:hidden;transition:border-color .16s,background .16s}.platform-card:hover{color:white;background:#20232e;border-color:#73608c}.platform-card:before{content:"";position:absolute;left:0;top:24px;bottom:24px;width:3px;border-radius:2px;background:var(--purple)}.platform-card.zx:before,.platform-card[data-platform=zx]:before{background:linear-gradient(#f58fa1 25%,#f2cf7b 25% 50%,#7cdbaa 50% 75%,#7dccff 75%)}.platform-card.nes:before,.platform-card[data-platform=nes]:before{background:#ec7986}.platform-card h2,.platform-card h3{margin:0 0 5px;font-size:1.16rem;letter-spacing:-.03em}.platform-card p{color:var(--muted);font-size:.81rem;margin:0}.platform-icon{width:58px;height:58px;flex:none;padding:10px;border-radius:13px;background:#2b263d;color:#bba6fb}.platform-card.nes .platform-icon{background:#39272e;color:#f0a1aa}.platform-arrow{margin-left:auto;color:var(--subtle);font-size:1.25rem}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:32px 0 21px}.section-heading>div{min-width:0}.section-title{margin:0 0 5px;font-size:1.55rem}.section-description{margin:0;color:var(--muted);font-size:.85rem}.section-heading>a{font-size:.84rem;font-weight:600;flex:none}.section-kicker{font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;color:var(--cyan);margin-bottom:8px}
/* Catalog: an explicit height for content makes every card identical. */
.catalog-layout,.catalog-main{min-width:0}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:20px}.search-form{display:flex;gap:8px;flex:1;min-width:240px;max-width:650px}.search-form .form-control,.search-form input[type=search]{min-width:0;flex:1}.search-form .button{flex:none}.search-icon{width:19px;height:19px;flex:none;color:var(--subtle)}.filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.filter-row select{min-width:145px;max-width:220px}.filter-row label{font-size:.8rem;color:var(--muted)}.alphabet{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 25px;padding:0}.alphabet-link{display:flex;justify-content:center;align-items:center;min-width:31px;min-height:33px;padding:3px 7px;font-size:.75rem;font-weight:700;border:1px solid #333544;border-radius:7px;color:#b6bac9;background:#1a1c24}.alphabet-link:hover{color:white;background:#373046;border-color:#6d5d89}.alphabet-link.active,.alphabet-link[aria-current=page]{color:white;border-color:#9b80e8;background:#6650a4}.catalog-summary{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:.8rem;color:var(--muted);margin:15px 0}.games-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}.game-card{min-width:0;width:100%;display:flex;flex-direction:column;height:100%;background:var(--surface);border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 4px 10px #00000012;transition:border-color .18s,box-shadow .18s}.game-card:hover{border-color:#73658f;box-shadow:0 10px 25px #03030b42}.game-media{position:relative;display:block;aspect-ratio:4/3;width:100%;flex:0 0 auto;overflow:hidden;background:#07090e;border-bottom:1px solid #323441}.game-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.game-media:after{content:"";pointer-events:none;position:absolute;inset:0;border:6px solid #0000000d}.game-badges{position:absolute;z-index:2;top:10px;left:10px;right:10px;display:flex;gap:5px;align-items:flex-start;flex-wrap:wrap;pointer-events:none}.badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:4px 7px;border:1px solid #5e5578;border-radius:5px;background:#272232ed;color:#e2d5ff;font-size:.62rem;line-height:1.1;font-weight:800;letter-spacing:.035em;white-space:nowrap;max-width:100%}.badge.zx,.badge-zx{background:#273631eb;color:#b1f2d4;border-color:#45775f}.badge.nes,.badge-nes{background:#4c252deb;color:#ffc7ce;border-color:#855460}.badge-players{margin-left:auto;background:#15171be8;color:#dae0e8;border-color:#4a4e5a}.badge-success{background:#233d33;color:#a9e7c8;border-color:#456858}.badge-warning{background:#433822;color:#f7d69a;border-color:#726140}.badge-danger{background:#4b2a32;color:#ffb8c3;border-color:#885361}.badge-muted{background:#30333f;color:#b7bece;border-color:#525665}.game-content{height:248px;min-height:248px;max-height:248px;flex:0 0 248px;padding:16px;display:flex;flex-direction:column;overflow:hidden}.game-title{font-size:1rem;font-weight:750;line-height:1.4;height:2.8em;min-height:2.8em;max-height:2.8em;flex:0 0 2.8em;margin:0 0 7px;letter-spacing:-.025em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.game-title a{color:var(--text)}.game-title a:hover{color:#cdbaff}.game-meta{color:#919bb0;font-size:.68rem;line-height:1.4;height:1.4em;min-height:1.4em;max-height:1.4em;flex:0 0 1.4em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 11px}.game-meta span+span:before{content:"·";padding:0 6px;color:#666d80}.game-description{color:#b0b6c7;font-size:.8rem;line-height:1.65;height:4.95em;min-height:4.95em;max-height:4.95em;flex:0 0 4.95em;margin:0 0 13px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow-wrap:anywhere}.game-footer{display:flex;align-items:center;gap:8px;min-height:40px;max-height:44px;margin-top:auto;flex:0 0 40px}.game-footer>.button{flex:1;min-width:0;min-height:40px;padding:8px 9px;font-size:.8rem;white-space:nowrap}.game-footer form{display:flex;margin:0;flex-shrink:0}.game-footer .rating{font-size:.7rem;gap:3px;max-width:59px}.rating{display:inline-flex;align-items:center;gap:5px;color:#f2d490;font-size:.84rem;white-space:nowrap}.rating small{color:var(--subtle);font-size:.7rem}.favorite-button{width:38px;height:38px;min-width:38px;display:inline-grid;place-items:center;padding:0;border:1px solid #464052;border-radius:9px;background:#27232f;color:#b2a9c3;font-size:1.2rem;line-height:1}.favorite-button:hover{color:#eed7ff;border-color:#88739e;background:#392e45}.favorite-button.active,.favorite-button[aria-pressed=true]{color:#ffc0d6;background:#4a2a3b;border-color:#aa6f8c}.favorite-button svg{width:18px;height:18px}.game-placeholder{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle,#343143,#171822);color:#777288}.game-placeholder svg{width:70px;max-width:45%;height:auto}.pagination{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;margin:32px 0}.page-link{display:inline-flex;align-items:center;justify-content:center;min-width:39px;min-height:39px;padding:6px 10px;background:var(--surface);border:1px solid var(--line);border-radius:9px;color:#c4c9d9;font-size:.82rem;font-weight:650}.page-link:hover{background:#332c44;border-color:#6b588e;color:white}.page-link.current,.page-link[aria-current=page]{background:var(--purple-bright);color:white;border-color:#b29cf0}.page-link.disabled{opacity:.35;pointer-events:none}.pagination-summary{text-align:center;color:var(--subtle);font-size:.74rem;margin-top:-18px}
/* Advertising is part of the spacing rhythm, never a blank reserved hole. */
.ad-slot{position:relative;margin:28px auto;max-width:100%;overflow:hidden;text-align:center;border-radius:12px}.ad-slot:empty{display:none}.ad-label{color:#9298aa;display:block;font-size:.58rem;text-transform:uppercase;letter-spacing:.15em;margin:0 0 6px;line-height:1.5}.ad-slot img{max-width:100%;height:auto;margin:auto}.ad-slot iframe{max-width:100%;border:0}.ad-slot a{display:inline-block;max-width:100%}.ad-demo{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;min-height:90px;padding:20px;border:1px dashed #5a526d;border-radius:11px;background:repeating-linear-gradient(135deg,#22212c,#22212c 12px,#252431 12px,#252431 24px);color:#c0b3d8;font-size:.9rem}.ad-demo small{color:#938aab;font-size:.72rem}.ad-sidebar .ad-demo{min-height:250px}.ad-wide{width:100%}.ad-grid{grid-column:1/-1}.ad-demo .badge{margin-top:3px}
/* Auth, installation and consistent forms. */
.auth-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(350px,1fr);max-width:980px;margin:45px auto 10px;border:1px solid #3c3450;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);background:var(--surface)}.auth-art{position:relative;display:flex;flex-direction:column;justify-content:center;padding:42px;background:radial-gradient(ellipse at 10% 95%,#67519755,transparent 65%),#202030;border-right:1px solid #3c3450}.auth-art>img{width:100%;margin:15px 0}.auth-art h2{font-size:2rem;margin-bottom:14px}.auth-art p{font-size:.87rem;color:#b1b4c9;line-height:1.8}.auth-art ul{padding:0;list-style:none;color:#d0c8e5;font-size:.8rem;display:grid;gap:13px}.auth-art li:before{content:"✓";margin-right:9px;color:var(--cyan)}.auth-card{padding:38px 40px;min-width:0}.auth-card>h1{font-size:1.85rem;margin-bottom:9px}.auth-card>p{color:var(--muted);font-size:.85rem;margin-bottom:25px}.form-stack{display:flex;flex-direction:column;gap:18px}.form-group{min-width:0}.form-group+.form-group{margin-top:16px}.form-stack>.form-group+.form-group{margin-top:0}.form-label{display:block;margin-bottom:7px;font-size:.81rem;font-weight:650;color:#d6d8e3}.form-control,input[type=text],input[type=email],input[type=password],input[type=search],input[type=url],input[type=number],input[type=date],input[type=datetime-local],select,textarea{width:100%;min-height:44px;padding:11px 13px;border:1px solid #444755;border-radius:9px;background:#11131c;color:var(--text);font-size:.87rem;line-height:1.45;transition:border-color .16s,box-shadow .16s;box-shadow:inset 0 1px 3px #00000014}.form-control:focus,input:focus,select:focus,textarea:focus{border-color:#ad91f8;outline:0;box-shadow:0 0 0 3px #a38ae81c}.form-control::placeholder,input::placeholder,textarea::placeholder{color:#81889e;opacity:1}.form-control[readonly]{background:#222430;color:#bbc0cf}select{appearance:auto;padding-right:28px}textarea{resize:vertical;min-height:120px}textarea.code-editor{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.79rem;line-height:1.7;tab-size:2;min-height:200px;white-space:pre;overflow-wrap:normal}input[type=file]{color:var(--muted);width:100%;padding:10px;border:1px dashed #55566a;border-radius:9px;background:#171923;font-size:.8rem}input[type=file]::file-selector-button{margin-right:10px;padding:8px 11px;border:1px solid #65567e;border-radius:6px;background:#353044;color:#ebe2ff;font-weight:600;cursor:pointer}input[type=checkbox],input[type=radio]{accent-color:#aa8bf6;width:17px;height:17px;flex-shrink:0;margin:2px 0 0;cursor:pointer}.form-help{display:block;color:#9aa2b7;font-size:.72rem;line-height:1.6;margin:7px 0 0}.form-error{display:block;color:#ffb8c2;font-size:.76rem;margin-top:6px}.form-control[aria-invalid=true],input[aria-invalid=true],textarea[aria-invalid=true]{border-color:#bf6f82}.checkbox-label{display:flex;align-items:flex-start;gap:10px;color:#b8becf;font-size:.77rem;line-height:1.6}.checkbox-label a{text-decoration:underline;text-decoration-color:#8d75b577;text-underline-offset:3px}.consent-list{display:flex;flex-direction:column;gap:12px;padding:3px 0}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:7px}.form-actions .button-block{flex:0 0 100%}.password-wrap{position:relative}.password-wrap input{padding-right:48px}.password-toggle{position:absolute;right:5px;top:5px;width:35px;height:35px;display:grid;place-items:center;border:0;background:transparent;color:var(--muted);border-radius:6px}.form-divider{display:flex;align-items:center;gap:12px;color:var(--subtle);font-size:.72rem;margin:22px 0}.form-divider:before,.form-divider:after{content:"";flex:1;border-top:1px solid var(--line)}.auth-bottom{text-align:center;font-size:.79rem;color:var(--muted);padding-top:22px;margin-top:22px;border-top:1px solid var(--line)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid>.form-group{margin:0}.form-grid .full-width{grid-column:1/-1}.captcha{margin:5px 0 0;padding:15px;background:#11141d;border:1px solid #3b4050;border-radius:12px}.captcha-question{display:block;font-size:.79rem;font-weight:650;color:#e1deeb;margin:0 0 12px;line-height:1.5}.captcha-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.captcha-option{position:relative;min-width:0;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;border:2px solid #393e50;background:#f4f3f9;border-radius:10px;overflow:hidden;transition:border-color .15s,box-shadow .15s}.captcha-option:hover{border-color:#a992df;box-shadow:0 0 0 2px #a992df22}.captcha-option img{width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none;-webkit-user-drag:none}.captcha-option input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;z-index:2;cursor:pointer}.captcha-option.selected,.captcha-option:has(input:checked){border-color:#9270ee;box-shadow:0 0 0 2px #9973ee5c}.captcha-option.selected:after,.captcha-option:has(input:checked):after{content:"✓";position:absolute;right:2px;bottom:2px;color:white;background:#6e4dc8;border-radius:50%;width:20px;height:20px;font-weight:bold;font-size:13px;line-height:20px;text-align:center;pointer-events:none}.captcha-option:has(input:focus-visible){outline:2px solid #b89cff;outline-offset:3px}.captcha-refresh{display:inline-flex;gap:6px;padding:5px 0 0;background:none;border:0;color:#a9a0bf;font-size:.71rem;text-decoration:underline;text-underline-offset:3px}.notice{position:relative;padding:15px 18px;margin:20px 0;border:1px solid #60547c;border-radius:11px;background:#292337;color:#ded0ff;font-size:.85rem;line-height:1.7}.notice-success{border-color:#426e5b;background:#1d342b;color:#b9eed3}.notice-error{border-color:#8b5563;background:#3a252e;color:#ffd0d7}.notice-warning{border-color:#796845;background:#372f22;color:#f6dfb0}.notice p{margin:0 0 7px}.notice p:last-child{margin:0}.notice ul{margin:7px 0 0}.notice strong{color:inherit}.notice a{color:inherit;text-decoration:underline}.installer,.install-layout{max-width:880px;margin:38px auto}.install-header{text-align:center;margin-bottom:28px}.install-header .brand{justify-content:center;margin-bottom:20px}.install-steps,.step-list{display:flex;list-style:none;gap:10px;padding:0;counter-reset:step;margin:0 0 30px}.install-step,.step-list li{display:flex;align-items:center;gap:8px;flex:1;color:#929ab0;font-size:.74rem;border-bottom:2px solid #343846;padding-bottom:13px}.install-step:before,.step-list li:before{counter-increment:step;content:counter(step);display:grid;place-items:center;width:24px;height:24px;flex:none;background:#282d3a;border-radius:50%;font-size:.69rem;font-weight:700}.install-step.active,.step-list li.active{color:#d9caff;border-color:#aa89ff}.install-step.active:before,.step-list li.active:before{background:#795bd0;color:white}.install-step.completed,.step-list li.completed{color:#a3dac0;border-color:#57977d}.install-panel{padding:30px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.install-panel h1{font-size:1.7rem}.check-list{list-style:none;padding:0;margin:0}.check-list li{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:.84rem}.check-list li:last-child{border-bottom:0}.check-ok{color:var(--green)}.check-fail{color:var(--danger)}progress{width:100%;height:10px;border:0;border-radius:10px;overflow:hidden;background:#353442;accent-color:#a489ee}progress::-webkit-progress-bar{background:#353442}progress::-webkit-progress-value{background:#a489ee}.progress-track{height:8px;border-radius:8px;background:#323644;overflow:hidden}.progress-bar{height:100%;background:#a489ee;transition:width .2s}
/* Reading and history pages. */
.breadcrumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#8f98ae;font-size:.73rem;padding:0;margin:0 0 23px;list-style:none}.breadcrumbs a{color:#aeb5c8}.breadcrumbs a:hover{color:#d9c6ff}.breadcrumbs .separator{color:#596174}.page-heading{margin:5px 0 29px}.page-heading h1{margin:0 0 12px}.page-heading p{max-width:760px;color:var(--muted);font-size:.93rem}.page-heading .eyebrow{margin-bottom:12px}.prose{max-width:880px;color:#c1c6d5;font-size:.96rem;line-height:1.9;overflow-wrap:anywhere}.prose>h2{margin:40px 0 16px;font-size:1.5rem;scroll-margin-top:110px}.prose>h3{margin:27px 0 12px;font-size:1.08rem}.prose p{margin:0 0 20px}.prose ul,.prose ol{margin:14px 0 24px}.prose li{margin:9px 0}.prose a{color:#c3aaff;text-decoration:underline;text-decoration-color:#b294e457;text-underline-offset:3px}.prose a:hover{text-decoration-color:currentColor}.prose strong{color:#edf0f9}.prose figure{margin:28px 0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#181a23}.prose figure img{width:100%;height:auto;max-height:490px;object-fit:contain;background:#f7f7f7;padding:18px}.prose figcaption{padding:12px 17px;color:#959eb3;font-size:.71rem;line-height:1.7}.prose figcaption a{color:#bcacce}.prose blockquote{margin:26px 0;padding:18px 24px;background:#242131;border-left:3px solid var(--purple);border-radius:0 10px 10px 0;color:#d3c7e9}.prose code{padding:2px 5px;background:#2b2837;border-radius:4px;color:#d8c3ff;font-size:.87em}.prose table{width:100%;border-collapse:collapse;font-size:.84rem}.prose th,.prose td{padding:12px 14px;border:1px solid var(--line);text-align:left}.prose th{background:#242734;color:#e0e3ef}.prose .lead{font-size:1.1rem;line-height:1.85;color:#dadbea}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start}.content-grid>.prose{min-width:0}.content-card{background:var(--surface);padding:24px;border:1px solid var(--line);border-radius:var(--radius);min-width:0}.content-card h2{font-size:1.25rem}.content-card h3{font-size:1rem}.content-card p{font-size:.84rem;color:var(--muted)}.content-card+.content-card{margin-top:20px}.history-toc{padding:22px 25px;border:1px solid #474055;border-radius:13px;background:#23202e;margin:25px 0}.history-toc h2,.history-toc h3{font-size:.9rem;margin:0 0 12px}.history-toc ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 24px;margin:0;padding-left:18px;font-size:.81rem}.history-toc li{margin:0}.history-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0}.history-timeline>div{padding:19px 17px;border:1px solid #3e394e;border-radius:12px;background:#211e2c}.history-timeline strong{display:block;font-size:1.45rem;line-height:1.3;color:#c0a5ff}.history-timeline span{display:block;margin-top:8px;color:#aeb1c2;font-size:.74rem;line-height:1.6}.source-list{border-top:1px solid var(--line);padding-top:17px;font-size:.77rem;line-height:1.75}.source-list li{margin:10px 0}.source-ref{font-size:.75em;vertical-align:super;margin-left:3px;white-space:nowrap}.legal-draft{padding:17px 20px;border:1px solid #6a5b42;background:#2d2820;color:#e5cfa8;border-radius:11px;font-size:.81rem;margin-bottom:25px}.operator-card{padding:18px 22px;background:#23232e;border:1px solid var(--line);border-radius:12px;margin:22px 0;font-size:.82rem}.operator-card dt{color:#9ea6b9;margin-top:10px}.operator-card dt:first-child{margin-top:0}.operator-card dd{margin:2px 0 0;color:#e3e5ee}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0}.stat-card{padding:21px 22px;border:1px solid var(--line);border-radius:13px;background:var(--surface);min-width:0}.stat-card strong,.stat-value{display:block;color:#e9e3fa;font-size:1.8rem;line-height:1.25;letter-spacing:-.04em}.stat-card span,.stat-label{display:block;color:#9ea8be;font-size:.76rem;margin-top:8px}.stat-card small{font-size:.67rem;color:var(--cyan)}.empty-state{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;min-height:250px;padding:38px 24px;border:1px dashed #494151;border-radius:var(--radius);background:#1b1923;color:var(--muted)}.empty-state h2,.empty-state h3{font-size:1.2rem;margin-bottom:10px}.empty-state p{max-width:480px;font-size:.84rem}.empty-state .button{margin-top:10px}.empty-state .empty-icon{width:65px;height:65px;padding:15px;margin-bottom:20px;background:#30273d;border-radius:17px;color:#b297d7}.avatar{display:inline-grid;place-items:center;width:40px;height:40px;flex-shrink:0;border-radius:11px;background:#393148;color:#d5c1f4;font-size:.8rem;font-weight:800}.user-row,.friend-card{display:flex;align-items:center;gap:13px;padding:15px;border:1px solid var(--line);background:var(--surface);border-radius:12px}.user-row>div,.friend-card>div{min-width:0}.user-row .inline-actions,.friend-card .inline-actions{margin-left:auto}.friend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.comment{padding:21px 0;border-bottom:1px solid var(--line)}.comment-head{display:flex;align-items:center;gap:10px;font-size:.84rem;margin-bottom:12px}.comment-head time{margin-left:auto;color:var(--subtle);font-size:.69rem}.comment-body{font-size:.86rem;color:#c7ccdc;white-space:pre-wrap;overflow-wrap:anywhere}.comment-actions{display:flex;gap:10px;margin-top:9px;font-size:.7rem}.rating-input{display:flex;align-items:center;gap:8px}.rating-input label{display:grid;place-items:center;min-width:40px;min-height:42px;border:1px solid #595043;border-radius:9px;background:#302923;color:#ead099}.rating-input input{margin-right:5px}.rating-input label:has(input:checked){border-color:#edce87;background:#574527;color:#fff4c9}
/* Local emulator: black screen, stable tools, touch-safe controls. */
.player-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:24px;align-items:start}.player-main{min-width:0}.player-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.player-heading h1{font-size:1.9rem;margin:0 0 7px}.player-shell{position:relative;width:100%;min-width:0;padding:15px;background:#080b11;border:1px solid #4a425b;border-radius:18px;box-shadow:var(--shadow);overflow:hidden;color:#dee3ee}.player-shell:fullscreen{border:0;border-radius:0;overflow:auto;display:flex;flex-direction:column;justify-content:center;max-width:100%;background:#050609}.player-shell:-webkit-full-screen{border:0;border-radius:0;background:#050609}.player-shell:fullscreen #emulator-screen{max-height:calc(100dvh - 130px);max-width:100%}#player-status{color:#b1bdd3;font-size:.77rem;line-height:1.6;min-height:0;margin:0 0 10px}#player-status:empty{display:none}#emulator-screen{width:100%;min-width:0;position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;max-height:660px;margin:auto;background:#000;border-radius:7px;overflow:hidden;isolation:isolate;outline-offset:2px}#emulator-screen:empty:before{content:"";width:42px;height:42px;border:3px solid #363145;border-top-color:#b292ef;border-radius:50%;animation:rd-spin 1s linear infinite}#emulator-screen canvas{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;image-rendering:pixelated;outline:0}#emulator-screen iframe{display:block;width:100%;height:100%;border:0}#player-toolbar{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding:14px 0 2px}#player-toolbar:empty{display:none}#player-toolbar button,#player-toolbar select{min-height:38px;padding:8px 11px;font-size:.72rem;border:1px solid #495061;border-radius:8px;background:#242b38;color:#e0e7f3}#player-toolbar button:hover{background:#35314b;border-color:#9581c0}#player-toolbar label{display:flex;align-items:center;gap:7px;font-size:.7rem;color:#bbc5d8}#player-toolbar input[type=range]{width:80px}#player-toolbar select{width:auto;max-width:180px}#touch-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 8px 4px;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}#touch-controls:empty{display:none}#touch-controls button{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;min-height:45px;min-width:45px;padding:8px 12px;border:1px solid #69708b;border-radius:12px;background:#2c3446;color:#f4f2ff;font-size:.84rem;font-weight:800;box-shadow:0 3px 0 #101621}#touch-controls button:active,#touch-controls button.pressed{background:#6b52ac;border-color:#b8a1e9;transform:translateY(2px);box-shadow:0 1px 0 #101621}.dpad,.touch-dpad{display:grid;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(3,44px);gap:4px}.dpad button,.touch-dpad button{min-width:0!important;min-height:0!important;padding:0!important}.dpad .up,.touch-dpad .up{grid-column:2;grid-row:1}.dpad .left,.touch-dpad .left{grid-column:1;grid-row:2}.dpad .right,.touch-dpad .right{grid-column:3;grid-row:2}.dpad .down,.touch-dpad .down{grid-column:2;grid-row:3}.touch-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.touch-actions .action-a,.touch-actions .action-b{border-radius:50%!important;width:54px;height:54px;background:#66384b!important;border-color:#a76883!important}.touch-center{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.touch-center button{min-width:48px!important;min-height:29px!important;font-size:.62rem!important;border-radius:20px!important}#spectrum-keyboard{margin-top:10px;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;touch-action:pan-x}#spectrum-keyboard:empty{display:none}#spectrum-keyboard button{min-width:31px;min-height:34px;margin:2px;padding:5px;font-size:.65rem;border:1px solid #51566d;border-radius:5px;color:#e7e8f0;background:#242934;touch-action:none}#spectrum-keyboard button:active,#spectrum-keyboard button.pressed{background:#655090;border-color:#c6adf5}.keyboard-row{display:flex;justify-content:center;gap:2px;white-space:nowrap}.keycap,kbd{display:inline-grid;place-items:center;min-width:23px;min-height:24px;padding:2px 6px;border:1px solid #50566b;border-bottom-width:3px;border-radius:5px;background:#252a37;color:#d9e0f0;font-size:.7rem;font-family:ui-monospace,Consolas,monospace;line-height:1.2}.controls-list{display:grid;gap:11px;list-style:none;padding:0;font-size:.78rem;color:var(--muted)}.controls-list li{display:flex;align-items:center;justify-content:space-between;gap:15px}.player-note{font-size:.75rem;color:#98a5bd;margin:14px 0 0}.rom-selector{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:15px 0}.rom-selector label{font-size:.79rem;color:var(--muted)}.rom-selector select{max-width:400px}.player-tabs{margin:27px 0 0}.save-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.save-slot{padding:14px;background:#232634;border:1px solid #434959;border-radius:10px;font-size:.77rem}.save-slot strong{display:block;margin-bottom:6px}
/* Administration: calm dense UI, tables scroll inside their own container. */
.admin-layout{display:grid;grid-template-columns:224px minmax(0,1fr);gap:25px;align-items:start;margin-top:25px}.admin-sidebar{position:sticky;top:111px;padding:20px 13px;border:1px solid var(--line);border-radius:16px;background:#191b25}.admin-sidebar h2,.admin-sidebar h3{font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;color:#929bb1;margin:0 11px 15px}.admin-nav{display:flex;flex-direction:column;gap:5px}.admin-nav a{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid transparent;border-radius:9px;color:#b6bfd2;font-size:.8rem}.admin-nav a:hover{background:#2a2939;color:white}.admin-nav a.active,.admin-nav a[aria-current=page]{background:#362c48;border-color:#5d467d;color:#ddcbff}.admin-nav a .badge{margin-left:auto;padding:3px 5px;font-size:.56rem}.admin-nav a svg{width:17px;height:17px}.admin-main{min-width:0}.admin-main>.page-heading{margin-bottom:24px}.admin-main>.page-heading h1{font-size:2rem}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:18px 0}.admin-toolbar .search-form{min-width:200px;max-width:480px}.admin-toolbar .button{flex-shrink:0}.table-responsive{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;border:1px solid var(--line);border-radius:12px;background:var(--surface);-webkit-overflow-scrolling:touch}.admin-table{width:100%;border-collapse:collapse;text-align:left;font-size:.77rem;line-height:1.55;min-width:650px}.admin-table thead{background:#242733}.admin-table th{padding:13px 15px;color:#b1b8cb;font-size:.65rem;font-weight:750;text-transform:uppercase;letter-spacing:.065em;border-bottom:1px solid #3d4152;white-space:nowrap}.admin-table td{padding:13px 15px;border-bottom:1px solid #2c303e;vertical-align:middle;color:#c6cdde}.admin-table tbody tr:last-child td{border-bottom:0}.admin-table tbody tr:hover{background:#252735}.admin-table td strong{color:#eeeaf6;font-weight:650}.admin-table td small{display:block;color:#858fa6;font-size:.65rem;line-height:1.6;margin-top:4px}.admin-table td input[type=checkbox],.admin-table th input[type=checkbox]{margin:0}.admin-table td .inline-actions{gap:6px}.admin-table td .button-small{font-size:.67rem;min-height:30px;padding:5px 8px}.admin-table .table-image{width:68px;height:51px;object-fit:contain;image-rendering:pixelated;background:black;border-radius:5px;border:1px solid #464455}.admin-table .table-title{max-width:250px;min-width:150px}.admin-table .table-actions{min-width:160px}.admin-table code{font-size:.67rem;color:#bda7ed}.table-caption{font-size:.72rem;color:var(--subtle);margin:8px 0}.tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin:0 0 23px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;white-space:nowrap}.tab{display:inline-flex;align-items:center;gap:6px;padding:12px 17px;border:0;border-bottom:2px solid transparent;color:#9ea8bd;font-size:.8rem;font-weight:650;background:transparent}.tab:hover{color:#d7c5fa;background:#242030}.tab.active,.tab[aria-selected=true]{color:#d1b8ff;border-bottom-color:#aa88f5;background:#282032}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}.settings-grid>.content-card{margin:0}.settings-grid .full-width{grid-column:1/-1}.settings-section{padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--surface);min-width:0}.settings-section h2{font-size:1.05rem;margin-bottom:20px}.settings-section .form-help{max-width:590px}.admin-preview{padding:15px;background:#12151f;border:1px dashed #55516a;border-radius:10px;margin:12px 0;overflow:hidden}.admin-preview img{max-height:180px;object-fit:contain;margin:auto}.admin-preview.logo-preview img{max-width:230px;max-height:70px}.image-upload-row{display:flex;align-items:center;gap:20px}.image-upload-row .image-preview{width:90px;height:70px;object-fit:contain;flex:none;background:#292d3c;border-radius:8px;padding:9px}.image-upload-row>.form-group{flex:1}.admin-log{max-height:340px;overflow:auto;padding:17px;background:#11151e;border:1px solid #3b4050;border-radius:9px;font:12px/1.8 ui-monospace,Consolas,monospace;color:#b5c4d9;white-space:pre-wrap;overflow-wrap:anywhere}.import-progress{padding:24px;border:1px solid #504462;border-radius:14px;background:#201c2b}.import-progress h3{margin-bottom:15px}.import-progress .stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.import-progress .stat-card{padding:14px;background:#252030}.import-progress .stat-card strong{font-size:1.25rem}.import-errors{font-size:.76rem;color:#e7b9c6;max-height:220px;overflow-y:auto}.bulk-actions{display:flex;gap:10px;align-items:center;padding:13px 16px;border:1px solid var(--line);background:#242633;border-radius:10px;margin:14px 0}.bulk-actions select{width:auto;max-width:230px;font-size:.75rem;min-height:36px;padding:7px 10px}.bulk-actions>span{margin-left:auto;color:var(--muted);font-size:.74rem}
/* A complete footer and accessible, optional-cookie dialog. */
.site-footer{position:relative;border-top:1px solid #343440;background:#14151d;padding:43px 0 0}.site-footer:before{content:"";position:absolute;top:-1px;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#c9819766,#d1ae6566,#78b98c66,#7aa7cc66,transparent)}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:30px;padding-bottom:38px}.footer-brand .brand{margin-bottom:15px}.footer-brand>p{color:#8f98ac;font-size:.77rem;line-height:1.85;max-width:290px;margin-bottom:15px}.footer-links h2,.footer-links h3,.footer-grid h3{font-size:.69rem;text-transform:uppercase;letter-spacing:.115em;color:#dadde7;margin:5px 0 16px}.footer-links ul{display:flex;flex-direction:column;gap:9px;padding:0;list-style:none;margin:0}.footer-links a,.footer-links>button{color:#969fb3;font-size:.76rem;line-height:1.6;text-align:left;display:block;background:none;border:0;padding:0}.footer-links a:hover,.footer-links>button:hover{color:#ccb4f3}.footer-bottom{display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap;border-top:1px solid #2b2e3a;padding:21px 0 24px;color:#838da1;font-size:.68rem}.footer-bottom p{margin:0}.footer-bottom a{color:#a7a0b9}.footer-badges{display:flex;align-items:center;gap:8px;margin-top:13px}.footer-badges span{font-size:.6rem;line-height:1.2;padding:5px 6px;color:#959dad;border:1px solid #343947;border-radius:5px}.counter-code{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;max-width:100%;padding:8px 0 16px;overflow:hidden}.counter-code:empty{display:none}.counter-code img{max-width:100%}.cookie-banner{position:fixed;z-index:90;bottom:22px;left:50%;transform:translateX(-50%);width:min(1120px,calc(100% - 40px));display:flex;align-items:center;gap:24px;padding:19px 23px;background:#292532;border:1px solid #695776;border-radius:15px;box-shadow:0 12px 45px #0008;color:#dbd6e4}.cookie-banner>div:first-child{flex:1;min-width:0}.cookie-banner h2,.cookie-banner h3{font-size:.92rem;margin:0 0 6px}.cookie-banner p{font-size:.75rem;line-height:1.7;color:#bcb3c7;margin:0}.cookie-banner a{color:#dac0f7;text-decoration:underline;text-underline-offset:3px}.cookie-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0;flex-wrap:wrap}.cookie-actions .button{font-size:.73rem;padding:9px 12px;min-height:39px}.cookie-modal,.cookie-dialog,#cookie-dialog,.modal-light{color-scheme:light;--text:#222330;--muted:#606373;--line:#dce0e8;--surface:#f5f5fa;--surface-2:#ececf5;--purple:#6d45b4;width:min(580px,calc(100% - 34px));max-height:calc(100dvh - 44px);padding:28px;border:1px solid #d8d6e1;border-radius:19px;background:#fff;color:#292834;box-shadow:0 25px 90px #0008;overflow:auto}.cookie-modal::backdrop,.cookie-dialog::backdrop,#cookie-dialog::backdrop,.modal-light::backdrop{background:#090812bd}.cookie-modal h2,.cookie-dialog h2,#cookie-dialog h2,.modal-light h2{color:#222330;font-size:1.35rem;margin-bottom:13px}.cookie-modal p,.cookie-dialog p,#cookie-dialog p,.modal-light p{color:#656274;font-size:.82rem;line-height:1.8}.cookie-modal .button,.cookie-dialog .button,#cookie-dialog .button,.modal-light .button{color:#383142;background:#f0ecf5;border-color:#d1c6dd}.cookie-modal .button-primary,.cookie-dialog .button-primary,#cookie-dialog .button-primary,.modal-light .button-primary{background:#7651c7;border-color:#7651c7;color:white}.cookie-modal .button-primary:hover,.cookie-dialog .button-primary:hover,#cookie-dialog .button-primary:hover{background:#6540b7}.cookie-option{display:flex;align-items:flex-start;gap:12px;padding:16px 0;border-top:1px solid #e4e0e9}.cookie-option input{margin-top:5px;accent-color:#7750c6}.cookie-option strong{font-size:.86rem;color:#292432}.cookie-option small{display:block;margin-top:5px;color:#75717e;font-size:.73rem;line-height:1.7}.cookie-option .badge{margin-left:auto;align-self:flex-start;background:#f2eff7;border-color:#d4cae2;color:#715f83;font-size:.58rem}.cookie-modal .cookie-actions,.cookie-dialog .cookie-actions,#cookie-dialog .cookie-actions{padding-top:20px;border-top:1px solid #e6e0ed;margin-top:6px}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.modal-close{width:32px;height:32px;display:grid;place-items:center;border:1px solid #ded6e9;border-radius:9px;background:#f6f3f9;color:#706578;font-size:1.3rem}.dialog-overlay{position:fixed;inset:0;z-index:110;display:flex;align-items:center;justify-content:center;padding:20px;background:#090812bd}.dialog-overlay .cookie-modal{margin:0}.toast{position:fixed;z-index:120;right:20px;bottom:24px;max-width:min(420px,calc(100% - 40px));padding:14px 18px;border:1px solid #69627b;border-radius:11px;background:#282431;color:#efe5fc;box-shadow:0 12px 35px #0007;font-size:.83rem}.credits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.credit-card{padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.credit-card img{width:100%;height:150px;object-fit:contain;background:#fff;border-radius:7px;margin-bottom:15px}.credit-card h3{font-size:.95rem;margin-bottom:8px}.credit-card p{font-size:.74rem;color:var(--muted)}
@keyframes rd-spin{to{transform:rotate(360deg)}}
@media(min-width:1450px){.container,.header-inner{width:min(var(--container),calc(100% - 90px))}.hero-art>img{max-height:420px}}
@media(max-width:1180px){.header-inner{gap:18px}.main-nav{gap:1px}.nav-link{padding:9px 10px;font-size:.79rem}.header-actions{gap:7px}.header-actions .button{font-size:.76rem;padding:9px 12px}.brand-name{font-size:1.15rem}.brand-mark{width:38px;height:38px}.brand{gap:9px}.games-grid{gap:15px}.game-content{padding:14px}.game-footer{gap:6px}.game-footer .rating{display:none}.hero{padding:35px;min-height:395px}.hero-title{font-size:3rem}.hero-text{font-size:.91rem}.footer-grid{gap:24px}.admin-layout{grid-template-columns:198px minmax(0,1fr);gap:20px}.admin-nav a{padding:10px;font-size:.76rem}.player-layout{grid-template-columns:minmax(0,1fr) 245px;gap:18px}.content-grid{grid-template-columns:minmax(0,1fr) 255px;gap:22px}}
@media(max-width:980px){.header-inner{min-height:74px;gap:14px;flex-wrap:wrap}.mobile-menu-toggle{display:flex;order:4}.main-nav{display:none;order:5;flex:0 0 100%;gap:7px;margin:0;padding:0 0 15px}.site-header.menu-open .main-nav,.main-nav.is-open{display:flex;flex-wrap:wrap}.nav-link{font-size:.84rem;padding:10px 15px}.header-actions{margin-left:auto}.hero{padding:30px;grid-template-columns:1.07fr .93fr;min-height:370px;gap:6px}.hero-title{font-size:2.55rem}.hero-text{font-size:.85rem}.hero-actions{gap:9px}.hero-actions .button{font-size:.76rem;padding:10px 13px}.hero-stats{gap:14px;font-size:.67rem;margin-top:21px}.hero-art>img{min-width:0}.platform-card{padding:20px;gap:14px}.platform-card p{font-size:.74rem}.platform-icon{width:48px;height:48px}.games-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.game-content{height:248px;min-height:248px;max-height:248px;flex-basis:248px;padding:12px}.game-title{font-size:.9rem}.game-description{font-size:.75rem}.game-footer>.button{font-size:.7rem;padding:8px 5px;gap:4px}.game-footer>.button svg{width:14px;height:14px}.favorite-button{width:33px;height:36px;min-width:33px;font-size:1.05rem}.game-footer{gap:5px}.game-badges{top:7px;left:7px;right:7px}.badge{font-size:.52rem;padding:4px 5px}.auth-layout{grid-template-columns:.8fr 1fr}.auth-art{padding:27px}.auth-card{padding:30px}.auth-art h2{font-size:1.65rem}.footer-grid{grid-template-columns:1.3fr 1fr 1fr;gap:30px}.footer-grid>.footer-links:last-child{grid-column:2/4}.footer-grid>.footer-links:last-child ul{display:grid;grid-template-columns:1fr 1fr;gap:9px 18px}.content-grid,.player-layout{grid-template-columns:minmax(0,1fr)}.player-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.player-sidebar>.content-card{margin:0}.admin-layout{grid-template-columns:minmax(0,1fr)}.admin-sidebar{position:static;padding:14px;border-radius:12px}.admin-sidebar h2,.admin-sidebar h3{display:none}.admin-nav{flex-direction:row;gap:6px;overflow-x:auto;overscroll-behavior-x:contain}.admin-nav a{white-space:nowrap;flex:none;padding:9px 12px}.stat-card{padding:18px}.stat-card strong{font-size:1.6rem}.cookie-banner{align-items:flex-start;gap:18px}.cookie-actions{max-width:300px}.cookie-modal .cookie-actions,.cookie-dialog .cookie-actions,#cookie-dialog .cookie-actions{max-width:none}.settings-grid{gap:17px}}
@media(max-width:760px){.container,.header-inner{width:calc(100% - 32px)}.site-main{padding-bottom:46px}.site-main>.container{padding-top:20px}.header-inner{gap:10px;min-height:69px}.brand small,.brand-tagline{font-size:.55rem}.header-actions .button{min-height:37px;padding:8px 10px;font-size:.72rem}.header-actions .button-secondary{max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-actions .lang-switch,.language-switch{font-size:.66rem}.lang-switch a,.language-switch a{padding:4px 5px}.mobile-menu-toggle{width:37px;height:37px}.hero{grid-template-columns:1fr;gap:0;padding:31px 27px 21px;border-radius:20px;min-height:0;text-align:left;margin-bottom:20px}.hero-copy{max-width:100%}.hero-title{font-size:clamp(2.2rem,7vw,3rem);max-width:550px}.hero-text{max-width:540px;font-size:.9rem;margin-bottom:21px}.hero-actions .button{min-height:43px;font-size:.8rem}.hero-art{max-width:430px;width:100%;margin:0 auto -10px;max-height:280px}.hero-art>img{max-height:290px}.hero-stats{gap:16px;justify-content:flex-start;font-size:.71rem;margin-top:21px}.eyebrow{font-size:.6rem;margin-bottom:14px}.platform-grid{gap:12px;margin-bottom:26px}.platform-card{align-items:flex-start;padding:17px 15px;gap:11px;min-height:112px;border-radius:13px}.platform-card h2,.platform-card h3{font-size:1rem}.platform-card p{font-size:.69rem;line-height:1.7}.platform-icon{width:39px;height:39px;padding:8px;border-radius:9px}.platform-arrow{display:none}.section-heading{margin:27px 0 17px;gap:12px}.section-title{font-size:1.4rem}.section-description{font-size:.77rem}.section-heading>a{font-size:.71rem}.catalog-toolbar{padding:15px;gap:13px}.search-form{min-width:0;max-width:none;flex-basis:100%}.filter-row{width:100%;gap:8px}.filter-row select{flex:1;max-width:none;min-width:0}.alphabet{gap:5px;margin-bottom:20px}.alphabet-link{min-width:30px;min-height:31px;font-size:.69rem}.games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.game-card{border-radius:12px}.game-content{padding:15px;height:249px;min-height:249px;max-height:249px;flex-basis:249px}.game-title{font-size:1rem}.game-meta{font-size:.65rem}.game-description{font-size:.79rem}.game-footer>.button{font-size:.78rem;padding:8px;gap:6px}.game-footer{gap:8px}.favorite-button{width:37px;min-width:37px;height:38px;font-size:1.15rem}.badge{font-size:.58rem;padding:4px 6px}.game-badges{top:9px;left:9px;right:9px}.game-footer .rating{display:inline-flex}.pagination{gap:5px;margin-top:25px}.page-link{min-width:35px;min-height:36px;font-size:.75rem;padding:5px 8px}.ad-slot{margin:24px auto}.ad-demo{min-height:84px;padding:16px;font-size:.78rem}.auth-layout{display:block;margin:25px auto 0;max-width:490px}.auth-art{border-right:0;border-bottom:1px solid #3d344d;padding:25px 30px}.auth-art>img{display:none}.auth-art h2{font-size:1.65rem;margin-bottom:10px}.auth-art p{font-size:.79rem}.auth-art ul{display:none}.auth-card{padding:29px}.auth-card>h1{font-size:1.7rem}.form-control,input[type=text],input[type=email],input[type=password],input[type=search],input[type=url],input[type=number],input[type=date],input[type=datetime-local],select,textarea{font-size:16px}.form-grid,.settings-grid{grid-template-columns:1fr}.form-grid .full-width,.settings-grid .full-width{grid-column:auto}.settings-section{padding:20px}.form-actions{justify-content:flex-start}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat-card{padding:18px}.page-heading h1{font-size:2rem}.page-heading p{font-size:.85rem}.content-card{padding:21px}.prose{font-size:.91rem;line-height:1.9}.prose .lead{font-size:1rem}.prose>h2{font-size:1.35rem;margin-top:31px}.history-toc{padding:19px 22px}.history-toc ol{font-size:.77rem;gap:9px 24px}.history-timeline{gap:10px}.history-timeline>div{padding:16px 13px}.history-timeline strong{font-size:1.3rem}.history-timeline span{font-size:.69rem}.prose figure img{padding:10px;max-height:370px}.prose figcaption{font-size:.66rem;padding:11px 14px}.prose table{display:block;max-width:100%;overflow-x:auto}.friend-grid{grid-template-columns:1fr}.user-row .inline-actions,.friend-card .inline-actions{max-width:155px}.player-heading{align-items:flex-start;gap:14px;flex-wrap:wrap}.player-heading h1{font-size:1.65rem}.player-shell{padding:9px;border-radius:13px}#player-toolbar{gap:6px;padding:11px 0 1px}#player-toolbar button,#player-toolbar select{font-size:.67rem;padding:7px 9px;min-height:36px}.player-sidebar{grid-template-columns:1fr}.save-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-main>.page-heading h1{font-size:1.75rem}.admin-toolbar{gap:12px}.admin-toolbar .search-form{max-width:none;min-width:0}.admin-table{font-size:.73rem;min-width:620px}.admin-table th,.admin-table td{padding:11px 12px}.table-responsive{border-radius:9px}.install-steps,.step-list{gap:7px}.install-step,.step-list li{flex-direction:column;align-items:flex-start;gap:7px;font-size:.64rem}.install-panel{padding:22px}.install-panel h1{font-size:1.55rem}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 23px;padding-bottom:27px}.footer-brand{grid-column:1/-1}.footer-brand>p{max-width:460px}.footer-grid>.footer-links:last-child{grid-column:auto}.footer-grid>.footer-links:last-child ul{display:flex}.footer-links h2,.footer-links h3,.footer-grid h3{font-size:.63rem}.footer-links a{font-size:.72rem}.site-footer{padding-top:32px}.footer-bottom{padding:18px 0 21px;font-size:.65rem;gap:11px}.cookie-banner{width:calc(100% - 24px);bottom:12px;display:block;padding:18px;border-radius:13px}.cookie-banner p{font-size:.71rem}.cookie-actions{max-width:none;justify-content:flex-start;margin-top:13px;gap:7px}.cookie-actions .button{font-size:.68rem;padding:9px 10px;min-height:38px}.cookie-modal,.cookie-dialog,#cookie-dialog,.modal-light{padding:23px;width:calc(100% - 26px)}.credits-grid{grid-template-columns:1fr}}
@media(max-width:460px){.container,.header-inner{width:calc(100% - 24px)}.header-inner{gap:7px}.brand{gap:7px}.brand-mark{width:33px;height:33px;border-radius:10px}.brand-mark img,.brand-mark svg{width:23px;height:23px}.brand-name{font-size:1rem}.brand small,.brand-tagline{font-size:.48rem;letter-spacing:.07em}.header-actions{gap:5px}.header-actions .button{font-size:.64rem;padding:8px;min-height:34px}.mobile-menu-toggle{width:33px;height:34px}.lang-switch,.language-switch{border:0;padding:1px}.lang-switch a,.language-switch a{padding:4px}.hero{padding:27px 20px 17px;border-radius:17px}.hero-title{font-size:2.27rem}.hero-text{font-size:.84rem}.hero-actions{gap:8px}.hero-actions .button{font-size:.72rem;padding:10px 12px}.hero-art{max-height:245px}.hero-stats{font-size:.64rem;gap:14px}.hero-stats strong{font-size:.75rem}.platform-grid{gap:10px}.platform-card{display:block;padding:17px 14px;min-height:141px}.platform-icon{width:36px;height:36px;margin-bottom:10px}.platform-card h2,.platform-card h3{font-size:.93rem}.platform-card p{font-size:.65rem}.platform-card:before{top:18px;bottom:18px}.section-title{font-size:1.2rem}.section-description{font-size:.7rem}.section-heading>a{font-size:.65rem}.games-grid{gap:11px}.game-content{padding:11px;height:239px;min-height:239px;max-height:239px;flex-basis:239px}.game-title{font-size:.88rem;line-height:1.4;margin-bottom:8px}.game-meta{font-size:.58rem;margin-bottom:9px}.game-description{font-size:.72rem;line-height:1.65;margin-bottom:10px}.game-footer .rating{display:none}.game-footer>.button{font-size:.68rem;padding:7px 6px;gap:4px;min-height:36px}.game-footer{gap:5px;flex-basis:36px;min-height:36px}.favorite-button{min-width:31px;width:31px;height:35px;font-size:1rem;border-radius:7px}.game-footer>.button svg{width:13px;height:13px}.game-badges{top:6px;left:6px;right:6px;gap:4px}.badge{font-size:.49rem;padding:3px 4px}.game-media:after{border-width:3px}.catalog-toolbar{padding:12px;border-radius:12px}.search-form .button{padding:10px 12px;font-size:.74rem}.alphabet-link{min-width:28px;min-height:29px;font-size:.65rem}.catalog-summary{font-size:.7rem}.auth-art{padding:23px}.auth-card{padding:25px 22px}.auth-card>h1{font-size:1.6rem}.checkbox-label{font-size:.7rem}.captcha{padding:12px}.captcha-options{gap:7px}.captcha-question{font-size:.75rem}.notice{padding:13px 15px;font-size:.77rem}.stat-card{padding:16px}.stat-card strong{font-size:1.45rem}.stat-card span{font-size:.68rem}.history-toc ol{grid-template-columns:1fr}.history-timeline{grid-template-columns:1fr}.history-timeline>div{display:flex;align-items:center;gap:20px}.history-timeline strong{min-width:58px;flex:none}.history-timeline span{margin:0}.page-heading h1{font-size:1.8rem}.prose>h2{font-size:1.24rem}.content-card{padding:19px}.cookie-banner h2,.cookie-banner h3{font-size:.85rem}.cookie-actions .button{flex:1;min-width:0;font-size:.64rem;padding:9px 7px}.cookie-modal .cookie-actions .button,.cookie-dialog .cookie-actions .button,#cookie-dialog .cookie-actions .button{flex:1 0 auto}.footer-grid{gap:25px 20px}.footer-grid>.footer-links:last-child{grid-column:1/-1}.footer-grid>.footer-links:last-child ul{display:grid;grid-template-columns:1fr 1fr;gap:9px 14px}.footer-links a{font-size:.68rem}.image-upload-row{align-items:flex-start;gap:12px}.image-upload-row .image-preview{width:60px;height:50px}.user-row,.friend-card{gap:10px;padding:12px;font-size:.75rem;flex-wrap:wrap}.user-row .inline-actions,.friend-card .inline-actions{width:100%;max-width:none;margin-left:50px}.comment-head time{font-size:.59rem}.install-panel{padding:19px}.check-list li{font-size:.75rem;gap:12px}.import-progress{padding:18px}.import-progress .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#touch-controls{padding-inline:0;gap:8px}.dpad,.touch-dpad{grid-template-columns:repeat(3,37px);grid-template-rows:repeat(3,37px);gap:3px}.touch-actions{gap:7px}.touch-actions .action-a,.touch-actions .action-b{width:45px;height:45px}.touch-center{max-width:70px;gap:6px}#spectrum-keyboard button{min-width:25px;font-size:.57rem;min-height:31px;padding:3px;margin:1px}.keyboard-row{gap:1px}}
@media(max-width:350px){.games-grid{grid-template-columns:1fr}.game-content{padding:17px;height:248px;min-height:248px;max-height:248px;flex-basis:248px}.game-title{font-size:1rem}.game-meta{font-size:.68rem}.game-description{font-size:.8rem}.game-footer>.button{font-size:.8rem}.game-footer .rating{display:inline-flex}.favorite-button{width:38px;min-width:38px;height:38px}.game-footer{gap:9px}.badge{font-size:.62rem}.header-actions>.button-ghost{display:none}.header-actions>.button-secondary{max-width:100px}.brand-name{font-size:.94rem}.hero-title{font-size:2rem}.hero-actions .button{width:100%}.footer-grid{grid-template-columns:1fr}.footer-grid>.footer-links:last-child ul{display:flex}.platform-card{padding:15px 12px}.platform-card h2,.platform-card h3{font-size:.84rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media print{.site-header,.site-footer,.cookie-banner,.ad-slot,.header-actions,.admin-sidebar,.form-actions,.hero-art,#touch-controls,#player-toolbar{display:none!important}body{background:white;color:#222}.container{width:100%}.prose,.prose p,.prose h2,.prose h3,.page-heading h1{color:#222}.prose a{color:#444}.prose figure{break-inside:avoid;border-color:#ccc}.prose figcaption{color:#555}.content-grid,.admin-layout{display:block}.site-main{padding:0}.prose{max-width:none}.game-card{break-inside:avoid}.table-responsive{overflow:visible;border-color:#bbb}.admin-table{min-width:0}}

/* Integration aliases for the locally bundled player and concrete PHP views. */
.footer-grid{grid-template-columns:1.15fr 1fr 1.4fr}.footer-links>a{margin-bottom:8px}.footer-platforms{font-size:.64rem;letter-spacing:.08em;color:#9b8bad}.header-actions>a.language-switch{padding:7px 9px;color:#c8bddb;font-size:.74rem}.brand-logo{width:auto;max-width:200px;max-height:45px;object-fit:contain}.text-button{background:none;border:0;color:#b9a6d1;font-size:inherit;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.cookie-form{flex-shrink:0;max-width:540px}.cookie-options{display:flex;gap:17px;justify-content:flex-end;margin-bottom:10px}.cookie-options .checkbox-label{font-size:.74rem}.player-controls{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px}.player-hint{font-size:.74rem;line-height:1.7;color:#9fabc0}.player-select{max-width:220px}.player-volume{max-width:110px}.zx-keyboard-row{display:flex;justify-content:center;gap:2px;white-space:nowrap}.zx-key{touch-action:none;user-select:none}.account-nav{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 25px}.account-nav form{margin:0}.player-info-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:23px;margin-top:25px}.player-info-grid>.content-card{margin:0}.game-facts{display:grid;grid-template-columns:minmax(110px,.6fr) 1fr;gap:10px 15px;font-size:.81rem;margin:24px 0}.game-facts dt{color:#9ba5b9}.game-facts dd{margin:0;color:#dbdcea}.game-source{margin-top:20px;color:#a7a0ba;font-size:.76rem}.metadata-details{font-size:.66rem;white-space:pre-wrap;overflow-wrap:anywhere;color:#929cb1}.rating-form{display:flex;flex-wrap:wrap;gap:7px}.rating-form .button{padding:9px 11px;min-height:40px;font-size:.8rem}.rating-form .star-active{background:#665232;border-color:#ddba76;color:#ffe8b3}.page-ellipsis{color:#83899a;padding:0 3px}.nav-zx:before,.nav-nes:before{content:"";display:inline-block;width:7px;height:7px;border-radius:2px;background:linear-gradient(135deg,#ee90a2 25%,#f3cf75 25% 50%,#82cba2 50% 75%,#7abcdc 75%)}.nav-nes:before{background:#ec8b99}
@media(max-width:980px){.footer-grid{grid-template-columns:1.2fr 1fr 1.3fr}.footer-grid>.footer-links:last-child{grid-column:auto}.cookie-form{max-width:460px}}
@media(max-width:760px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-grid>.footer-links:last-child{grid-column:auto}.cookie-form{max-width:none}.cookie-options{justify-content:flex-start;margin-top:13px}.player-info-grid{grid-template-columns:1fr}.brand-logo{max-width:155px;max-height:38px}.zx-keyboard-row{gap:1px}}
@media(max-width:460px){.footer-grid>.footer-links:last-child{grid-column:auto}.header-actions>a.language-switch{font-size:.66rem;padding:5px 6px}.brand-logo{max-width:125px}.game-facts{font-size:.76rem;grid-template-columns:1fr 1.2fr}.cookie-options .checkbox-label{font-size:.69rem}}
@media(max-width:350px){.footer-grid{grid-template-columns:1fr}.footer-grid>.footer-links:last-child{grid-column:1/-1}}

/* Direct-child markup used by the PHP catalog and platform links. */
.hero-title>span{color:#b49afe}.platform-card.platform-zx,.platform-card.platform-nes{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;align-items:start;min-height:190px}.platform-card>.eyebrow{grid-column:1/-1;margin:0;font-size:.59rem}.platform-card>h2{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;width:100%;font-size:1.45rem;margin:0}.platform-card>h2>span{color:#a59bb8;font-size:1.2rem;font-weight:400}.platform-card>p{grid-column:1;align-self:center;max-width:370px}.platform-card>.badge{grid-column:2;justify-self:end;align-self:center;padding:6px 9px}.platform-card.platform-zx:before{background:linear-gradient(#f58fa1 25%,#f2cf7b 25% 50%,#7cdbaa 50% 75%,#7dccff 75%)}.platform-card.platform-nes:before{background:#ec7986}.filter-form{max-width:none;flex-wrap:wrap;width:100%}.filter-form>.filter-row{flex-basis:100%;width:100%;margin-top:5px}.page-heading>.game-badges{position:static;pointer-events:auto;margin-bottom:16px;gap:7px}.page-heading>.game-badges .badge{font-size:.63rem;padding:5px 8px}.auth-art>h1{font-size:clamp(1.85rem,3vw,2.7rem)}.prose .history-toc h2{margin-top:0}
@media(max-width:760px){.platform-card.platform-zx,.platform-card.platform-nes{min-height:182px;gap:10px 12px;padding:19px}.platform-card>h2{font-size:1.2rem}.platform-card>p{font-size:.76rem}.platform-card>.badge{grid-column:1/-1;justify-self:start;padding:5px 7px}.filter-form>.filter-row{gap:9px}.filter-form>.filter-row>.form-control{flex:1 1 140px}.filter-form>.filter-row>.button{flex:0 0 auto}.auth-art>h1{font-size:1.95rem}.page-heading>.game-badges .badge{font-size:.58rem}}
@media(max-width:460px){.platform-card.platform-zx,.platform-card.platform-nes{min-height:187px;gap:10px;padding:17px 14px}.platform-card>h2{font-size:1rem}.platform-card>h2>span{font-size:1rem}.platform-card>p{grid-column:1/-1;font-size:.69rem;line-height:1.6}.platform-card>.eyebrow{font-size:.49rem;letter-spacing:.1em}.platform-card>.badge{font-size:.55rem}.filter-form>.filter-row>.form-control{flex-basis:100%;max-width:none}.filter-form>.filter-row>.button{width:100%}.auth-art>h1{font-size:1.75rem}}
