*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#030611;color:#fff;font-family:Arial,Helvetica,sans-serif;touch-action:none}
.space-wrap{width:min(980px,100%);margin:auto;padding:12px}
header{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px}
.brand{font-size:1.45rem;font-weight:1000;color:#00eaff;text-shadow:0 0 18px rgba(0,234,255,.35)}
.sub{color:#9caed0;font-size:.88rem}
.stats{display:flex;gap:7px;flex-wrap:wrap}
.stats div{min-width:78px;background:#0c1530;border:1px solid rgba(0,234,255,.14);border-radius:12px;padding:7px 9px;text-align:center;flex:1}
.stats span{display:block;color:#8fa0c1;font-size:.68rem;text-transform:uppercase}
.stats b{font-size:1.08rem}
.online-strip{display:flex;gap:8px;align-items:center;margin-bottom:9px;background:#0a1430;border:1px solid rgba(0,234,255,.12);border-radius:12px;padding:9px 11px;color:#a9b8d3;font-size:.85rem}
.online-strip strong{color:#fff}
.game-shell{position:relative;overflow:hidden;border-radius:20px;border:1px solid rgba(0,234,255,.17);box-shadow:0 20px 55px rgba(0,0,0,.4)}
canvas{display:block;width:100%;height:auto;background:#030817}
.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(2,5,14,.66);padding:18px}
.overlay.hidden{display:none}
.panel{width:min(470px,94%);max-height:94%;overflow:auto;background:linear-gradient(145deg,rgba(14,24,54,.98),rgba(8,18,39,.98));border:1px solid rgba(0,234,255,.2);border-radius:22px;padding:25px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.48)}
.hero{font-size:4.2rem}
.panel h1{font-size:2.2rem;margin:5px 0}
.panel p{color:#b2c0d9;line-height:1.4}
.panel>button,.mobile-controls button{border:0;border-radius:16px;background:linear-gradient(135deg,#705dff,#00bfe8);color:#fff;font-weight:1000;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.24)}
.panel>button{padding:14px 25px;font-size:1rem}
.help{color:#8394b8;font-size:.82rem;margin-top:14px;line-height:1.35}
.online-box{margin:12px 0;padding:11px;border-radius:14px;background:#081329;border:1px solid rgba(0,234,255,.14);text-align:left}
.online-box label{display:block;font-weight:800;font-size:.84rem;margin:5px 0}
.online-check{display:flex!important;align-items:center;gap:8px;color:#dffaff}
.online-check input{width:18px;height:18px}
.online-box input#onlineName{width:100%;padding:10px 11px;border-radius:10px;border:1px solid rgba(255,255,255,.13);background:#050d1d;color:#fff;outline:none;font-size:.94rem}
.online-box input#onlineName:focus{border-color:#00eaff}
.online-box small{display:block;color:#8fa1c2;font-size:.7rem;line-height:1.35;margin-top:6px}
.online-message{min-height:17px;color:#ff8aa1;font-size:.75rem;margin-top:4px}
.mobile-controls{display:none;grid-template-columns:1fr 1.55fr 1fr;gap:10px;margin-top:12px}
.mobile-controls button{padding:18px 12px;font-size:1.08rem;min-height:76px}
#shootBtn{font-size:1.22rem}
@media(max-width:720px){
  header{flex-direction:column;align-items:flex-start}
  .stats{width:100%}
  .sub{display:none}
  .mobile-controls{display:grid}
  .space-wrap{padding:7px}
}
@media(max-width:560px){
  .space-wrap{padding:4px}
  .brand{font-size:1.08rem}
  .stats{gap:5px}
  .stats div{min-width:0;padding:6px 4px;border-radius:10px;flex-basis:calc(50% - 5px)}
  .stats span{font-size:.58rem}
  .stats b{font-size:.94rem}
  .online-strip{font-size:.75rem;padding:8px}
  .game-shell{border-radius:16px}
  canvas{aspect-ratio:390/880}
  .overlay{padding:9px}
  .panel{width:min(310px,90%);padding:15px 13px;border-radius:18px;max-height:calc(100% - 16px)}
  .hero{font-size:2.3rem}
  .panel h1{font-size:1.42rem;margin:4px 0 8px}
  .panel p{font-size:.9rem;line-height:1.35;margin:0 0 8px}
  .panel>button{padding:12px 16px;font-size:.94rem;width:100%}
  .online-box{padding:9px;margin:8px 0}
  .help{font-size:.7rem;line-height:1.35;margin-top:9px}
  .mobile-controls{display:grid;position:sticky;bottom:0;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:92px;font-size:1.16rem;border-radius:18px;padding:12px 8px}
  #shootBtn{font-size:1.25rem}
}
