/* Compact, readable training controls on desktop, iPhone and tablet. */
.mode-choice{max-width:470px;flex-wrap:wrap;}
.mode-choice button[data-mode="training"]{color:#b1dce0;white-space:nowrap;}
.mode-choice button[data-mode="training"][aria-pressed="true"]{color:#f5f7fc;border-color:#7ce8f1;}
.training-hud{
 position:absolute;top:max(92px,calc(env(safe-area-inset-top) + 76px));left:50%;
 transform:translateX(-50%);width:min(610px,calc(100vw - 24px));
 padding:12px 15px 11px;box-sizing:border-box;
 border:1px solid #8cc6d95c;border-radius:12px;background:linear-gradient(120deg,#10202cec,#141b2aef);
 box-shadow:0 8px 40px #0007,0 0 19px #56bddd16;
 color:#e8f3f7;text-align:center;pointer-events:none;
 z-index:16;font:600 12px/1.5 system-ui,sans-serif;letter-spacing:.045em;
}
.training-hud[hidden]{display:none!important;}
.training-hud>strong{display:block;color:#8be1ea;font-size:12px;line-height:1.5;letter-spacing:.09em;}
.training-stats{display:flex;align-items:center;justify-content:space-around;gap:8px;margin-top:7px;}
.training-stats span{font-size:10px;color:#a1b6c9;letter-spacing:.04em;white-space:nowrap}
.training-stats b{display:block;margin-top:1px;font-size:18px;color:#fff;line-height:1.3;font-variant-numeric:tabular-nums;}
.training-hud>small{display:block;margin-top:7px;color:#ffd4a0;letter-spacing:.06em;}
@media(max-width:600px){
 .training-hud{top:max(85px,calc(env(safe-area-inset-top) + 70px));padding:8px 7px;max-width:96vw}
 .training-hud>strong{font-size:10px;letter-spacing:.025em}
 .training-stats{gap:4px;}
 .training-stats span{font-size:8px;}
 .training-stats b{font-size:14px;}
 .training-hud>small{margin-top:3px;font-size:9px;}
 .mode-choice{max-width:100%;gap:3px}
 .mode-choice button{font-size:8px;padding:8px 6px}
}

#training-arsenal{color:#83d7ed;font-size:10px;letter-spacing:.04em;opacity:.9}


/* In-range armory: never shown in the lobby or other game modes. */
.range-weapon-selector{margin-top:9px;padding-top:9px;border-top:1px solid #98d2db3c;pointer-events:auto}
.range-weapon-caption{display:block;font-size:10px;letter-spacing:.12em;color:#d4e2e9}
.range-weapon-buttons{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:7px}
.range-weapon-buttons button{appearance:none;touch-action:manipulation;min-height:34px;padding:6px 3px;
  border:1px solid #7796a187;border-radius:6px;background:#152937;color:#bed1db;
  font:800 11px/1.2 system-ui,sans-serif;letter-spacing:.03em;cursor:pointer}
.range-weapon-buttons button[aria-pressed="true"]{background:linear-gradient(135deg,#277284,#244553);
  border-color:#9df5fa;color:#fff;box-shadow:inset 0 0 0 1px #bcf9ff65,0 0 16px #43e6f530}
.range-weapon-buttons button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.range-weapon-selector>small{display:block;color:#9dc7d4;font-size:9px;margin-top:6px;font-weight:500;letter-spacing:0}
@media(max-width:600px){
  .range-weapon-selector{margin-top:5px;padding-top:5px}
  .range-weapon-caption{font-size:9px}
  .range-weapon-buttons{gap:3px;margin-top:5px}
  .range-weapon-buttons button{font-size:9px;min-height:29px;padding:5px 1px}
  .range-weapon-selector>small{font-size:8px}
}

/* V3.43: keep the sight picture unobstructed.
   Results are anchored upper-left; the armory is a short independent strip.
   In narrow/portrait screens they stack along the very top, never the reticle. */
.training-hud{
  position:fixed;top:max(14px,env(safe-area-inset-top));
  left:max(13px,env(safe-area-inset-left));right:auto;
  transform:none;width:248px;max-width:none;
  padding:8px 11px 7px;text-align:left;border-radius:9px;
  background:linear-gradient(115deg,#0b1926ee,#132333d9);
}
.training-hud>strong{font-size:10px;letter-spacing:.035em}
.training-hud .training-stats{display:grid;grid-template-columns:1fr 1fr;gap:3px 10px;text-align:left;margin-top:4px}
.training-hud .training-stats span{font-size:9px}
.training-hud .training-stats b{display:inline;margin-left:4px;font-size:13px;line-height:1.2}
.training-hud>small{font-size:9px;margin-top:3px}
.training-hud .range-weapon-selector{
 position:fixed;top:max(47px,calc(env(safe-area-inset-top) + 33px));
 left:50vw;transform:translateX(-50%);
 width:min(440px,calc(100vw - 335px));
 max-width:440px;box-sizing:border-box;margin:0;padding:7px 9px 6px;
 text-align:center;border:1px solid #8ed8e255;border-radius:9px;
 background:linear-gradient(110deg,#0e1e2de9,#15283bcf);
 box-shadow:0 8px 24px #0006;pointer-events:auto;
}
.training-hud .range-weapon-caption{font-size:9px;letter-spacing:.07em}
.training-hud .range-weapon-buttons{gap:4px;margin-top:3px}
.training-hud .range-weapon-buttons button{min-height:28px;padding:4px 2px;font-size:9px}
.training-hud .range-weapon-selector>small{font-size:8px;margin-top:3px}
@media (max-width:790px){
 .training-hud{
   top:max(52px,calc(env(safe-area-inset-top) + 36px));
   left:2vw;width:96vw;max-width:96vw;padding:6px 9px;
   text-align:center;border-radius:8px;
 }
 .training-hud>strong{font-size:10px}
 .training-hud .training-stats{display:flex;justify-content:space-around;gap:4px;margin-top:2px}
 .training-hud .training-stats span{font-size:8px}
 .training-hud .training-stats b{font-size:12px;margin-left:1px}
 .training-hud>small{display:inline-block;margin:2px 5px 0;font-size:8px}
 .training-hud .range-weapon-selector{
   top:max(146px,calc(env(safe-area-inset-top) + 130px));left:50vw;
   width:96vw;max-width:96vw;padding:3px 6px 4px;
 }
 .training-hud .range-weapon-caption{font-size:8px}
 .training-hud .range-weapon-buttons{gap:3px;margin-top:3px}
 .training-hud .range-weapon-buttons button{min-height:25px;font-size:9px}
 .training-hud .range-weapon-selector>small{display:none}
}
@media(max-height:520px) and (max-width:790px){
 .training-hud{top:47px}
 .training-hud .range-weapon-selector{top:123px}
}
