/* Shared game chrome. The cabinet mechanics and controls keep their original IDs. */
body{background:radial-gradient(ellipse at 50% 5%,#2a30231f,transparent 58%),#101619}
.game-site-header{width:min(1120px,calc(100% - 64px));margin:0 auto;min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid #a68f543b}
.game-wordmark{display:block;position:relative;width:141px;height:45px;overflow:hidden;flex:none}
.game-wordmark img{display:block;position:absolute;width:141px;height:auto;top:-12px}
.game-site-header nav{display:flex;align-items:center;gap:31px}
.game-site-header nav a{display:inline-flex;align-items:center;min-height:44px;color:#b4bbad;font:12px/1.4 'Trebuchet MS',sans-serif;text-decoration:none}
.game-site-header nav a[aria-current]{color:#ead092}
.game-site-header nav a:hover,.game-site-footer a:hover{color:#ffe3a1}
.game-site-header a:focus-visible,.game-site-footer a:focus-visible{outline:2px solid #eff2c8;outline-offset:5px}
.arcade{margin-top:29px}
.masthead{margin-bottom:24px;gap:22px}
.masthead .brand{gap:0;min-width:0}
.masthead .brand-mark{display:none}
.masthead .brand h1{font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:42px;font-weight:400;letter-spacing:.025em;line-height:1.05;text-transform:uppercase;color:#f3dfb4}
.masthead .brand p{font:10px/1.65 'Trebuchet MS',sans-serif;letter-spacing:.12em;margin-top:9px;color:#9ba68f}
.header-actions{flex-shrink:0;gap:19px}
.game{border-color:#b198535c;border-radius:4px;overflow:hidden;box-shadow:0 15px 65px #0005,0 0 0 4px #bda56608}
.hud{background:linear-gradient(110deg,#252c21,#18231f);border-bottom:1px solid #b8a06559}
.hud .eyebrow,.arc-metric>span{font-family:'Trebuchet MS',sans-serif;color:#a5af97}
.score-box strong,.arc-metric>strong{color:#f1d594}
.controls{background:linear-gradient(100deg,#222b23,#18211e);border-top-color:#ac9d5859}
.action-button:hover{background:#d5c0790e}.action-button:active,.action-button.pressed{background:#a9ba641e}
.control-copy strong{font:700 13px/1.6 'Trebuchet MS',sans-serif;letter-spacing:.08em}
.controls-divider span{background:#1c2620}
.identity-note{font:12px/1.8 'Trebuchet MS',sans-serif;color:#aeb7a3;max-width:780px;text-align:left;margin:21px 0 25px}
.game-site-footer{display:block;width:min(1120px,calc(100% - 64px));margin:38px auto 28px;padding-top:22px;border-top:1px solid #ad995536;letter-spacing:0}
.game-site-footer nav{display:flex;gap:14px 25px;flex-wrap:wrap;margin-bottom:17px}
.game-site-footer a{min-height:30px;display:inline-flex;align-items:center;color:#c5c7b4;font:12px/1.5 'Trebuchet MS',sans-serif;text-decoration:none}
.game-site-footer p{font:11px/1.85 'Trebuchet MS',sans-serif;color:#8e9c8d;max-width:920px;margin:0}
.arcade-return{display:inline-flex;align-items:center;min-height:44px;color:var(--gold);font-size:12px;text-decoration:none;border-bottom:1px solid transparent}
.arcade-return:hover{border-bottom-color:var(--gold)}
.arcade-return:focus-visible{outline:3px solid var(--cream);outline-offset:5px}
@media(max-width:560px){.header-actions{gap:14px}.arcade-return{font-size:12px}}
@media(max-width:700px){.masthead .brand h1{font-size:35px}.masthead{align-items:flex-start}.masthead .brand p{font-size:9px;letter-spacing:.04em}.header-actions{flex-direction:column;gap:8px;align-items:flex-end}.arcade-return{font-size:10px}.sound-button{font-size:10px;padding:7px 10px}.game-site-header nav{gap:21px}}
@media(max-width:560px){
  .game-site-header,.game-site-footer{width:calc(100% - 32px)}.game-site-header{min-height:70px;gap:17px}.game-wordmark{width:110px;height:37px}.game-wordmark img{width:110px;top:-8px}.game-site-header nav{gap:15px}.game-site-header nav a{font-size:11px}
  .arcade{width:calc(100% - 28px);margin-top:25px}.masthead{gap:14px;margin-bottom:21px}.masthead .brand h1{font-size:33px}.masthead .brand p{font-size:8px;max-width:177px}.arcade-return{font-size:10px;white-space:nowrap}.header-actions{gap:2px}.sound-button{min-height:44px;font-size:9px;padding:5px 8px}.sound-button svg{width:16px;height:16px}.identity-note{font-size:12px;margin-top:19px}
  .game-site-footer{padding-top:18px;margin-top:31px}.game-site-footer nav{gap:6px 20px}.game-site-footer a{font-size:11px}.game-site-footer p{font-size:10px;line-height:1.9}
}
@media(max-width:360px){.game-site-header nav{gap:12px}.game-wordmark{width:96px}.game-wordmark img{width:96px;top:-4px}.masthead .brand h1{font-size:29px}.masthead .brand p{max-width:150px}.arcade-return{font-size:9px}}
/* Short landscape screens keep the playfield, score and inputs together. */
@media(orientation:landscape) and (max-height:550px){
  .game{display:grid;grid-template-rows:56px minmax(160px,1fr) 64px;height:calc(100dvh - 24px);min-height:304px;scroll-margin-block:12px}
  .hud{height:56px;padding:7px 18px;gap:18px}.score-box strong{font-size:22px}.hud .eyebrow{font-size:10px}.clock-top{margin-bottom:4px}.time{font-size:14px}.time-track{height:5px}
  .stage{min-height:0;height:100%;aspect-ratio:auto}#scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 70%}
  .stage-top{top:10px;font-size:10px}.stage-bottom{bottom:9px;font-size:10px}.controls{min-height:64px}.action-button{padding:7px 18px;gap:12px}.action-button .item-icon{width:36px;height:36px}.control-copy{gap:2px}.control-copy strong{font-size:12px}.control-copy>span{font-size:10px}.controls-divider:before{top:9px;bottom:9px}
  .overlay{padding:10px 20px 0}.overlay-kicker,.overlay .start-note{display:none}.overlay h2{font-size:22px;margin:5px 0 9px}.overlay p{font-size:13px;margin-bottom:13px}.start-button{min-height:44px;font-size:11px;padding:10px 16px 8px}
}
@media(pointer:coarse){.control-copy .desktop-control{display:none}.control-copy .touch-control{display:block}}
