/* Game chrome inherits the shared Power Clue/game-template styles. */
.power-shift-app { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:auto auto minmax(0,1fr); width:100%; height:100dvh; min-width:0; min-height:0; }
.power-shift-shell { margin:12px; padding:14px 20px; border:1px solid var(--pc-line); border-radius:8px; background:white; display:flex; flex-direction:column; align-items:stretch; min-width:0; min-height:0; overflow:hidden; }
.power-shift-status { display:flex; justify-content:center; gap:48px; font-size:18px; color:var(--pc-muted); font-weight:700; }
.power-shift-status strong { color:var(--pc-ink); }
.power-shift-calculation { font-size:clamp(24px,3vw,42px); font-weight:800; text-align:center; margin:12px 0 0; min-height:100px; display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:.3em; }
.power-shift-stage-instruction { text-align:center; font-size:20px; font-weight:700; margin:0 0 8px; }
.power-shift-model { flex:1; width:100%; min-width:0; min-height:0; display:flex; align-items:center; justify-content:center; }
.power-shift-chart-stage { position:relative; width:100%; flex:none; aspect-ratio:514 / 192; }
.power-shift-chart-stage figure { margin:0; width:100%; height:100%; }
.power-shift-chart-stage svg { width:100%; height:100%; display:block; max-width:none; }
.power-shift-digit-entry { position:absolute; text-align:center; color:var(--pc-ink); border:2px dashed #91a8bb; border-radius:4px; background:#f5faff; padding:0; font-weight:700; font-family:Arial,Helvetica,sans-serif; min-width:0; cursor:pointer; }
.power-shift-digit-entry:focus { outline:4px solid #149bd7; outline-offset:-4px; }
.power-shift-feedback { display:flex; align-items:center; justify-content:center; text-align:center; min-height:60px; margin:8px 0; font-size:18px; font-weight:700; }
.power-shift-feedback[data-tone="correct"] { color:#1d8f5a; }
.power-shift-feedback[data-tone="incorrect"] { color:#aa3030; }
.power-shift-actions { display:flex; justify-content:center; gap:10px; flex-wrap:wrap; }
.power-shift-actions button { min-width:110px; padding:8px 18px; border:2px solid var(--pc-line); background:#edf4f9; color:var(--pc-ink); font-weight:800; }
.power-shift-actions button.primary { background:#149bd7; color:white; border-color:#149bd7; }
.power-shift-teams { display:flex; gap:12px; justify-content:center; margin-top:8px; }
.power-shift-team { display:flex; gap:18px; align-items:center; padding:6px 14px; border:2px solid #d8e2ea; border-radius:8px; font-weight:700; }
.power-shift-team.active { border-color:#149bd7; background:#eef8ff; }
@media (max-width:899px), (max-height:649px) {
  html,body { height:auto; overflow:auto; }
  .power-shift-app { height:auto; min-height:100dvh; }
  .power-shift-shell { overflow:visible; padding:12px; }
  .power-shift-model { min-height:210px; }
  .power-shift-chart-stage { width:100%; }
  .power-shift-status { gap:18px; font-size:16px; }
  .power-shift-teams { flex-wrap:wrap; }
  .power-shift-calculation { font-size:24px; min-height:95px; }
  .power-shift-actions { gap:8px; }
  .power-shift-actions button { flex:1; min-width:100px; }
}
@media print {
  @page { size:A4 landscape; margin:10mm; }
  html,body { height:auto!important; overflow:visible!important; background:white!important; }
  .power-shift-app { height:auto!important; display:block; }
  .topbar,.toolbar,.power-shift-actions { display:none!important; }
  .power-shift-shell { margin:0; padding:0; border:0; height:180mm; overflow:hidden; }
  .power-shift-calculation { min-height:20mm; margin:5mm 0 0; font-size:26pt; }
  .power-shift-model { flex:none; height:100mm; }
  .power-shift-chart-stage { width:235mm!important; max-width:100%; height:100mm; }
  .power-shift-stage-instruction,.power-shift-feedback { font-size:13pt; }
  .power-shift-feedback { min-height:15mm; }
  .power-shift-status { margin-top:4mm; }
  .power-shift-digit-entry { border:1px solid #333; background:white; }
}
