*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#040816;color:#fff;font-family:Arial,Helvetica,sans-serif;touch-action:manipulation}
.wrap{width:min(980px,100%);margin:auto;padding:14px}
header{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px}
.brand{font-weight:1000;font-size:1.35rem;color:#00eaff;text-shadow:0 0 18px rgba(0,234,255,.35)}
.sub{font-size:.88rem;color:#9fb0d1}
.tools{display:flex;align-items:center;gap:10px}
.stats{display:flex;gap:7px;flex-wrap:wrap}
.stats div{min-width:86px;background:#0c1530;border:1px solid rgba(0,234,255,.14);border-radius:12px;padding:8px 12px;text-align:center}
.stats span{display:block;color:#8fa0c1;font-size:.72rem;text-transform:uppercase}
.stats b{font-size:1.15rem}
.audio-btn{cursor:pointer;border:0;border-radius:12px;background:#121d38;color:#fff;border:1px solid rgba(0,234,255,.16);padding:10px 12px;font-weight:900}
.game-shell{position:relative;background:#020611;border:1px solid rgba(0,234,255,.16);border-radius:22px;overflow:hidden;box-shadow:0 20px 55px rgba(0,0,0,.35)}
canvas{display:block;width:100%;height:auto;background:#000}
.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(1,5,14,.22)}
.overlay.hidden{display:none}
.panel{width:min(430px,92%);background:rgba(7,14,35,.94);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:28px;text-align:center;box-shadow:0 20px 40px rgba(0,0,0,.25)}
.hero{font-size:3rem}
.panel h1{margin:10px 0 8px;font-size:2.2rem;line-height:1.05}
.panel p,.help{color:#b2bdd6}
#startBtn,.mobile-controls button{cursor:pointer;border:0;border-radius:16px;background:linear-gradient(135deg,#6d5dfc,#00bada);color:#fff;font-weight:900;box-shadow:0 10px 26px rgba(0,0,0,.22)}
#startBtn{padding:14px 26px;font-size:1rem;margin:12px 0}
.mobile-controls{display:none;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.mobile-controls button{padding:16px 18px;font-size:1.05rem}
@media(max-width:760px){
  header{flex-direction:column;align-items:flex-start}
  .tools{width:100%;flex-direction:column;align-items:stretch}
  .stats{width:100%}
  .stats div{flex:1;min-width:0}
  .sub{display:none}
  .mobile-controls{display:grid;position:sticky;bottom:0;z-index:20}
  .wrap{padding:7px}
}
@media(max-width:560px){
  .wrap{padding:4px}
  .brand{font-size:1.08rem}
  .stats{gap:6px}
  .stats div{padding:7px 5px;border-radius:10px}
  .stats span{font-size:.62rem}
  .stats b{font-size:1rem}
  .audio-btn{padding:9px 10px}
  .game-shell{border-radius:16px}
  canvas{aspect-ratio:390/880}
  .overlay{padding:10px}
  .panel{width:min(318px,92%);max-height:calc(100% - 16px);overflow:auto;border-radius:18px;padding:16px 14px}
  .hero{font-size:2.4rem}
  .panel h1{font-size:1.42rem;margin:4px 0 8px}
  .panel p{font-size:.94rem;line-height:1.35;margin:0 0 10px}
  #startBtn{width:100%;padding:12px 15px;font-size:.95rem}
  .help{font-size:.72rem;line-height:1.35;margin-top:10px}
  .mobile-controls{padding:8px 2px 2px;background:linear-gradient(180deg,rgba(3,6,17,0),rgba(3,6,17,.92) 28%,rgba(3,6,17,1));gap:8px}
  .mobile-controls button{min-height:88px;border-radius:18px;font-size:1.25rem;padding:14px 10px}
}
