/* Game-only presentation. Shared header/footer and site buttons come from brand.css. */
body.game-page main.game-page{width:min(100%,1000px);margin:0 auto;padding:28px 28px 0}
.game-page main.game-page .game-layout{max-width:650px;margin:0 auto}
.game-page .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}
.game-page [hidden]{display:none!important}

/* A shaped cabinet: flared hood, salmon side cheeks, projecting control deck, and a short plinth. */
.game-page .cabinet-frame{position:relative;isolation:isolate;padding:0 53px 0;filter:drop-shadow(10px 10px 0 #6c343329)}
.game-page .cabinet-frame::before,.game-page .cabinet-frame::after{content:"";position:absolute;top:15px;bottom:13px;width:72px;z-index:-1;background:linear-gradient(90deg,#b66d67,#df9d8d);clip-path:polygon(4% 0,96% 3%,68% 28%,66% 69%,100% 73%,96% 100%,8% 100%,0 72%,29% 67%,31% 27%)}
.game-page .cabinet-frame::before{left:3px}
.game-page .cabinet-frame::after{right:3px;transform:scaleX(-1);background:linear-gradient(90deg,#b66d67,#cd8a7e)}
.game-page .cabinet-marquee{height:65px;margin:0 -24px 0;position:relative;z-index:2;background:linear-gradient(#abd6a6,#84b47f);border:3px solid #53765e;border-bottom:9px solid #6c956d;clip-path:polygon(3% 0,97% 0,100% 87%,95% 100%,5% 100%,0 87%);display:flex;align-items:center;justify-content:space-between;padding:0 23px;box-shadow:inset 0 2px 0 #d7edc1}
.game-page .marquee-speaker{display:block;width:70px;height:24px;background:repeating-linear-gradient(0deg,transparent 0 3px,#39594b 3px 5px);opacity:.8;transform:skewX(-10deg)}
.game-page .marquee-lights{display:flex;gap:15px;align-items:center}
.game-page .marquee-lights i{width:12px;height:12px;border-radius:50%;background:#ffe34d;box-shadow:0 0 0 3px #4f755a,0 0 14px #ffe34d66}
.game-page .marquee-lights i:nth-child(2){width:18px;height:18px;background:#e8976c}
.game-page .screen-bezel{padding:13px 10px 8px;background:linear-gradient(110deg,#3e5c58,#243f44);border-inline:4px solid #8a5d5b;border-top:0;border-bottom:0}
.game-page .original-machine{position:relative;aspect-ratio:650/750;width:100%;overflow:hidden;background:#1d60a0}
.game-page .board,.game-page .start-screen,.game-page .start-screen>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:fill}
.game-page .power-art,.game-page .house-art,.game-page .robot-art{position:absolute;object-fit:contain;transform:translate(-50%,-50%);pointer-events:none}
.game-page .power-art{left:5.556%;top:50%;width:6.923%;height:28.8%}
.game-page .house-art{left:92.6%;top:71.43%;width:14%;height:9.333%}
.game-page .robot-art{left:50%;top:50%;width:33.85%;height:22.267%}
.game-page .image-button{border:0;border-radius:0;padding:0;position:absolute;background:transparent;touch-action:manipulation}
.game-page .image-button img{width:100%;height:100%;object-fit:contain;display:block}
.game-page .image-button:focus-visible{outline:4px solid #fff;outline-offset:3px;box-shadow:0 0 0 7px #172826;z-index:8}
.game-page .image-button:hover{filter:brightness(1.12)}
.game-page .draw{left:88.08%;top:41.93%;width:9.077%;height:16.133%}
.game-page .lock{left:.77%;top:64.6%;width:12.31%;height:17.47%}
.game-page .help{left:88.46%;top:19.33%;width:7.69%;height:9.33%;z-index:5}
.game-page .start-screen{z-index:6}
.game-page .start{left:24%;top:34%;width:53%;height:19%;border-radius:50%}
.game-page .replay{left:34.9%;top:63%;width:34%;height:15%;z-index:4}

/* Compact readouts live on a projecting green control deck. */
.game-page .machine-console{position:relative;z-index:2;background:linear-gradient(#a4cda0,#8bb986);color:#173b45;margin:0 -20px;padding:23px 20px 17px;border:3px solid #54735b;border-top:0;border-bottom:7px solid #5c805e;clip-path:polygon(4% 0,96% 0,100% 16%,99% 94%,95% 100%,5% 100%,1% 94%,0 16%)}
.game-page .machine-console::before{content:"";position:absolute;top:0;left:0;right:0;height:13px;background:linear-gradient(#d99888,#b87871);border-bottom:2px solid #a66b66;clip-path:polygon(4% 0,96% 0,100% 100%,0 100%)}
.game-page .readouts{display:flex;align-items:flex-start;justify-content:flex-start;gap:24px;padding-bottom:16px}
.game-page .readouts>div{display:flex;flex-direction:column;align-items:flex-start;gap:6px;flex:1}
.game-page .readouts>div>span:first-child{font-size:12px;font-weight:700;letter-spacing:.04em}
.game-page .readouts strong{font:600 32px/1 var(--font-display);color:#133c43}
.game-page .readouts small{font-size:12px;line-height:1.4}
.game-page .power-thresholds{display:flex;justify-content:space-between;gap:12px;font-size:12px;line-height:1.5;margin-bottom:8px}
.game-page .power-thresholds span:last-child{color:#861f28}
.game-page .power-thresholds strong{font-size:17px}
.game-page .meter{position:relative;display:block;height:25px;width:100%;border:2px solid #315b4a;border-radius:4px;background:#d6e7b6;overflow:visible;clip-path:none}
.game-page #meter-fill{height:100%;background:repeating-linear-gradient(90deg,#2e7257 0 13px,#57926b 13px 15px);border-radius:2px;transition:width .18s}
.game-page .overload-zone{position:absolute;right:0;top:0;bottom:0;width:5.9%;background:#b72e3b;border-left:2px solid #fff7}
.game-page .power-marker{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1;min-width:25px;padding:1px 3px;border-radius:3px;background:#fff;color:#173b45;text-align:center;font-size:13px;font-weight:700;box-shadow:0 1px 3px #0003}
.game-page .meter[data-overload=true] #meter-fill{background:#ad2636}
.game-page .power-console>p{font-size:12px;line-height:1.5;margin:9px 0 0}
.game-page .start:disabled{cursor:wait}
.game-page .feedback{max-width:420px;margin:9px auto 0;padding-top:9px;border-top:1px solid #436b5355;text-align:center}
.game-page .feedback p{font-size:10px;line-height:1.6;color:#173b45;margin:0;min-height:16px}
.game-page .game-layout[data-phase=lost] #total{color:#862e2f}
.game-page .game-layout[data-phase=won] #total{color:#164e32}
.game-page .cabinet-base{height:85px;background:linear-gradient(100deg,#7fa87b,#9bc394 55%,#7fa87b);margin:-5px -3px 0;padding:16px 30px 13px;display:flex;align-items:center;justify-content:space-between;border-bottom:10px solid #3d514b;clip-path:polygon(2% 0,98% 0,95% 100%,5% 100%)}
.game-page .coin-door{display:flex;gap:10px;padding:10px 11px;background:#273a40;border:3px solid #ae756e;box-shadow:inset 0 0 0 2px #112c39}
.game-page .coin-door i{display:block;width:15px;height:24px;background:#476499;border:3px solid #263e64;position:relative}
.game-page .coin-door i::after{content:"";position:absolute;width:4px;height:11px;background:#bb5450;left:2px;top:3px;box-shadow:2px 1px 0 #661f26}
.game-page .base-speaker{width:55px;height:24px;background:repeating-linear-gradient(90deg,transparent 0 4px,#3f614e 4px 6px);transform:skewY(-4deg)}

.game-page .arcade-placard{border-top:1px solid #b9c4c5;padding:21px 12px 0;margin:30px 30px 0}
.game-page .placard-heading{margin-bottom:17px}
.game-page .placard-heading h2{font-family:var(--font-display,Futura,Helvetica,sans-serif);font-size:15px;font-weight:500;margin:0;text-transform:uppercase;letter-spacing:.06em}
.game-page .placard-rules{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;row-gap:17px}
.game-page .placard-rules p{margin:0}
.game-page .placard-rules strong{display:block;font-size:11px;margin-bottom:5px}
.game-page .placard-rules span{display:block;font-size:11px;line-height:1.6;color:#4d5b5e}
.game-page .keyboard-note{font-size:9px;line-height:1.7;padding-top:13px;margin:17px 0 0;color:#55646a}
.game-page .game-exit{text-align:center;padding:28px 0 36px}
.game-page .game-exit p{font-size:9px;color:#5d696b;margin:18px 0 0}
.game-page .notice{padding:20px;border:1px solid #b9573b}

/* Native dialog retains the accessible guide and original archived instruction sheet. */
.game-page #help-dialog{border:0;padding:30px;max-width:550px;width:calc(100% - 30px);max-height:calc(100vh - 40px);background:#fff;color:#172826}
.game-page #help-dialog::backdrop{background:#172826bb}
.game-page #help-dialog h2{font-family:var(--font-display,Futura,Helvetica,sans-serif);font-size:29px;font-weight:500;letter-spacing:-.025em}
.game-page #help-dialog li,.game-page #help-dialog p{font-size:13px;line-height:1.8}
.game-page #help-dialog li{padding-bottom:12px}
.game-page #help-dialog .close{float:right;border:0;background:none;font-size:30px;min-width:44px;min-height:44px}
.game-page #help-dialog .text-button{display:block;background:#172826;color:#fff;padding:15px;border:0;margin-top:24px;width:100%;text-align:left;font-size:13px}
.game-page #help-dialog .original-help{width:100%;height:auto;margin-top:20px}
.game-page #help-dialog summary{font-size:12px;cursor:pointer;padding:12px 0}
.game-page #help-dialog .small-note{font-size:10px!important;line-height:1.8!important;color:#55625a}
.game-page #help-dialog .eyebrow{font-size:9px;letter-spacing:.13em;font-weight:700}

/* Phone: let the original game fill the screen; decorative cabinet yields to touch targets. */
@media(max-width:650px){
 body.game-page main.game-page{padding:10px 8px 0;width:100%}
 .game-page main.game-page .game-layout{max-width:540px}
 .game-page .cabinet-frame{padding:0;filter:none}
 .game-page .cabinet-frame::before,.game-page .cabinet-frame::after,.game-page .cabinet-marquee,.game-page .cabinet-base{display:none}
 .game-page .screen-bezel{padding:0;border:0;background:none}
 .game-page .machine-console{margin:0;padding:15px 10px 14px;border:0;border-bottom:4px solid #648b66;clip-path:none}
 .game-page .machine-console::before{display:none}
 .game-page .readouts>div{padding:0}
 .game-page .readouts strong{font-size:30px}
 .game-page .readouts .safe-max{font-size:9px}
 .game-page .readouts>div>span:first-child{font-size:12px}
 .game-page .feedback p{font-size:10px}
 .game-page .arcade-placard{padding:20px 12px 0;margin:22px 8px 0}
 .game-page .placard-rules{column-gap:22px;row-gap:15px}
 .game-page .placard-rules strong,.game-page .placard-rules span{font-size:10px}
 .game-page .image-button:focus-visible{outline-width:3px;outline-offset:0;box-shadow:0 0 0 3px #172826}
 .game-page .draw::before,.game-page .help::before,.game-page .lock::before{content:"";position:absolute;min-width:44px;min-height:44px;width:calc(100% + 18px);height:calc(100% + 18px);left:50%;top:50%;transform:translate(-50%,-50%)}
 .game-page .draw{left:92.6185%;min-width:44px;transform:translateX(-50%)}
 .game-page .draw img{height:100%;width:auto;max-width:none;margin:0 auto}
 .game-page .draw::before{width:calc(100% + 16px)}
 .game-page .game-exit{padding-bottom:28px}
}
@media(prefers-reduced-motion:reduce){.game-page .image-button{transition:none!important;animation:none!important}}
