/* East / West / All Japan share the Hokkaido / Tohoku panel geometry. */
body .allNav.homeFloat{
  position:fixed;left:calc(14px + var(--safeL, 0px));
  top:calc(10px + var(--safeT, 0px));bottom:auto;right:auto;
  z-index:90;display:flex;flex-direction:row;align-items:center;
  gap:12px;margin:0;padding:0;
}
.allNav a{
  display:flex;align-items:center;justify-content:center;
  width:88px;height:40px;flex:0 0 88px;touch-action:manipulation;
}
.allNav img{display:block;width:88px;height:40px;object-fit:contain;}
.allNav a:focus-visible,.panelRestart:focus-visible{outline:2px solid #ffd400;outline-offset:2px;}
.allNav a:active,.panelRestart:active{transform:translateY(1px);}
body .floatingInfo{
  left:calc(14px + var(--safeL, 0px));top:calc(60px + var(--safeT, 0px));
  width:188px;gap:7px;
}
body .floatTitleBar,body .floatStatus,body .panelActions{
  box-sizing:border-box;width:188px;min-width:0;max-width:100%;
}
body .floatTitleBar{
  font-size:18px;font-weight:600;line-height:1.15;letter-spacing:0;
  padding:7px 8px;border-width:1.5px;border-radius:15px;text-shadow:none;
}
html[lang="en"] body .floatTitleBar{font-size:14px;white-space:normal;}
body .floatStatus{
  font-size:16px;font-weight:600;line-height:1.15;
  padding:6px 10px;gap:8px;border-width:1.5px;border-radius:15px;
}
#floatTimer{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.02em;white-space:nowrap;}
.panelActions{
  display:flex;justify-content:flex-end;margin:12px 0 8px;
  flex:0 0 auto;pointer-events:auto;
}
.panelRestart{
  display:flex;align-items:center;justify-content:center;gap:3px;
  min-height:32px;padding:3px 5px;border:1px solid rgba(20,102,255,.25);
  border-radius:8px;background:rgba(245,252,255,.94);color:#1466ff;
  font-family:inherit;font-size:11px;font-weight:600;line-height:1.2;
  white-space:nowrap;cursor:pointer;touch-action:manipulation;
}
.panelRestart svg{width:14px;height:14px;flex:0 0 14px;}

/* Stable bilingual panels and a compact restart action. */
body .allNav.homeFloat{width:188px;box-sizing:border-box;}
body .floatingInfo{min-width:188px;max-width:188px;box-sizing:border-box;}
body .floatTitleBar{height:48px;min-height:48px;display:flex;align-items:center;justify-content:center;white-space:normal;text-align:center;}
body .floatStatus{height:36px;min-height:36px;display:flex;align-items:center;font-size:14px;white-space:nowrap;}
body .panelActions{justify-content:flex-start;height:36px;min-height:36px;}
body .panelRestart{gap:7px;height:36px;min-width:110px;padding:7px 12px;border-radius:999px;border:1px solid rgba(170,220,255,.42);background:linear-gradient(180deg,#305991,#183769);color:#edf8ff;font-size:12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 4px 12px rgba(0,0,0,.16);}
body .panelRestart svg{width:18px;height:18px;flex:0 0 18px;}
body .panelRestart .resetReload{fill:none;stroke:currentColor;stroke-width:1.8;}
body .panelRestart:hover{background:#315d98;border-color:#aadeff;}
body .frame{--answerEnglishSize:clamp(20px,2.2vw,28px);}
html[lang="en"] body .choiceYomi{font-size:var(--answerEnglishSize) !important;}
body .choice{padding-left:6px;padding-right:6px;}
body .side .cardBody{padding-left:6px;padding-right:6px;}
body .choiceYomi,body .choiceKanji{white-space:nowrap;}
@media (orientation:landscape) and (max-height:520px){body .frame{--answerEnglishSize:clamp(18px,3.2vh,24px);}}

/* Give the map the full available canvas without a decorative frame. */
body .stage{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;}
html body > .sg-game-viewport{padding-top:var(--safeT,0px);gap:6px;}
html[lang="en"] body .instr{font-size:12px;letter-spacing:0;min-width:0;}
@media (max-width:520px), (orientation:landscape) and (max-height:520px){
  html[lang="en"] body .instr{font-size:11px;}
}
