@font-face{font-family:Pixel;src:url('../assets/press-start-2p-latin.woff2')}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#111310}canvas{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;touch-action:none}#overlay{outline:none}body:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,#00000017 0px,#00000017 1px,transparent 1px,transparent 3px);box-shadow:inset 0 0 100px #0008}

body:after{z-index:2}

.hidden{display:none!important}
#pause-btn{position:fixed;top:12px;right:12px;z-index:52;width:38px;height:38px;display:flex;align-items:center;justify-content:center;color:#d9cf9a;background:#20281d;border:1px solid #0c0f0a;box-shadow:inset 0 0 0 2px #a38a54,inset 0 0 0 4px #40492f,0 2px 0 #00000066;touch-action:manipulation}
#pause-btn svg{width:20px;height:20px;shape-rendering:crispEdges}
#pause-btn:hover{filter:brightness(1.2)}
#pause-btn:active{transform:translateY(1px)}
.modal{position:fixed;inset:0;z-index:50;background:#0c0f0aee;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto}
.report-frame{position:relative;width:min(420px,92vw);max-height:100%;overflow-y:auto;background:#1b2117;background-image:repeating-conic-gradient(#171c14 0% 25%,#212819 0% 50%);background-size:4px 4px;border:2px solid #070a06;box-shadow:inset 0 0 0 2px #a38a54,inset 0 0 0 5px #40492f,inset 0 0 0 7px #a38a54,0 6px 0 #00000070;padding:24px 26px 28px;font-family:Pixel,monospace;color:#d9cf9a;text-align:center}
.report-frame.slam{animation:menu-slam .62s steps(2,end) both}
@keyframes menu-slam{0%{transform:translate(0,-55px) rotate(-3deg);filter:brightness(3)}15%{transform:translate(13px,12px) rotate(2deg);filter:brightness(1.8)}30%{transform:translate(-11px,-7px) rotate(-1.5deg)}45%{transform:translate(8px,5px) rotate(1deg)}60%{transform:translate(-5px,-3px)}80%{transform:translate(3px,1px)}100%{transform:translate(0,0);filter:brightness(1)}}
.report-frame h2{font-size:clamp(16px,4.5vw,22px);font-weight:normal;letter-spacing:1px;margin:0 0 14px;color:#e0c56b;text-shadow:2px 2px 0 #0c0f0a}
.report-frame h3{font-size:10px;font-weight:normal;letter-spacing:1px;margin:22px 0 4px;color:#c7c19b;text-align:left}
.report-frame p{font-size:9px;line-height:1.9;color:#a8b491;margin:0 0 18px}
.pause-actions{display:grid;gap:12px;margin-top:4px}
.primary{display:flex;justify-content:center;gap:10px;align-items:center;width:100%;padding:14px 16px;background:#d9c174;color:#1b2117;border:1px solid #f0d371;font-family:Pixel,monospace;font-size:10px;letter-spacing:1px;transition:background .12s;text-decoration:none}
.primary:hover{background:#f0d371}
.primary:active{transform:translateY(1px)}
.primary.secondary{background:#2c3722;color:#dfcc8b;border-color:#697a4c}
.build-version{display:block;font-size:7px;color:#8fa088;margin-top:18px;line-height:1.5}
.volume-control{display:grid;grid-template-columns:1fr auto;gap:18px;text-align:left;font-size:10px;margin:10px 0 14px;line-height:1.7}
.volume-control input{grid-column:1/-1;width:100%}
.retro-range{appearance:none;-webkit-appearance:none;height:12px;background:repeating-linear-gradient(90deg,#12160d 0 7px,#4d5c40 7px 9px);border:2px solid #0c0f0a;border-radius:0;box-shadow:0 0 0 1px #697a4c;cursor:pointer}
.retro-range::-webkit-slider-thumb{appearance:none;width:14px;height:22px;border:2px solid #f0d371;border-radius:0;background:#a38a54;box-shadow:inset -3px -3px #6b5a34,2px 2px #070a06}
.retro-range::-moz-range-thumb{width:12px;height:18px;border:2px solid #f0d371;border-radius:0;background:#a38a54;box-shadow:inset -3px -3px #6b5a34,2px 2px #070a06}
.retro-range:focus-visible{outline:2px solid #f0d371;outline-offset:5px}
@media(max-width:520px){.report-frame{padding:18px 16px 22px}.primary{font-size:9px;padding:12px 14px}}

/* --- Social links: fixed bottom-right slot, shared style across our games --- */
.social{position:fixed;right:16px;bottom:16px;z-index:51;display:flex;gap:10px}
.social-btn{--sz:40px;width:var(--sz);height:var(--sz);display:flex;align-items:center;justify-content:center;color:#d9cf9a;background:#20281d;border:1px solid #1b2117;box-shadow:inset 0 0 0 2px #a38a54,inset 0 0 0 4px #40492f,0 2px 0 #00000066;text-decoration:none;transition:transform .08s ease,filter .12s ease;touch-action:manipulation}
.social-btn:hover{filter:brightness(1.25)}
.social-btn:active{transform:translateY(1px) scale(.9);filter:brightness(.82)}
.social-btn.social-more{width:auto;padding:0 10px;font:9px Pixel,monospace;white-space:nowrap;letter-spacing:.02em}
@media(max-width:520px){.social{right:10px;bottom:10px;gap:8px}.social-btn{--sz:34px}.social-btn.social-more{font-size:8px;padding:0 8px}}
#language-control{position:fixed;left:16px;bottom:16px;z-index:52;display:flex;gap:10px;align-items:center;padding:8px;color:#d9cf9a;background:#20281d;border:2px solid #a38a54;font:9px Pixel,monospace}
#language-control select{font:inherit;background:#151816;color:#e2cf8c;border:1px solid #40492f;padding:8px;max-width:150px;border-radius:0}
@media(max-width:600px){#language-control{left:8px;bottom:10px;font-size:8px;gap:5px}#language-control>span{display:none}#language-control select{max-width:130px}}
html:lang(zh) .primary,html:lang(ja) .primary,html:lang(ko) .primary{font-family:monospace;font-size:14px;letter-spacing:0}
html:lang(zh) .report-frame p,html:lang(ja) .report-frame p,html:lang(ko) .report-frame p{font-family:monospace;font-size:12px}
html:lang(zh) body,html:lang(zh) .report-frame,html:lang(zh) .primary,html:lang(zh) .report-frame p,html:lang(zh) .social-more{font-family:Pixel,'Microsoft YaHei',sans-serif}
html:lang(ja) body,html:lang(ja) .report-frame,html:lang(ja) .primary,html:lang(ja) .report-frame p,html:lang(ja) .social-more{font-family:Pixel,'Yu Gothic','Meiryo',sans-serif}
html:lang(ko) body,html:lang(ko) .report-frame,html:lang(ko) .primary,html:lang(ko) .report-frame p,html:lang(ko) .social-more{font-family:Pixel,'Malgun Gothic',sans-serif}
