/* V90 · tablet expansion only. All original mobile selectors are untouched. */
html[data-ui-mode="tablet"] #game {
  width:100vw!important;max-width:100vw!important;
  height:100dvh!important;max-height:none!important;
}
html[data-ui-mode="tablet"] #game > #canvas {
  left:0!important;top:0!important;width:100%!important;height:100%!important;
  transform:none!important;object-fit:fill!important;
}
/* Tablet world has a different internal WIDTH (same 694-unit height); it is
   drawn to viewport pixels at equal X/Y scale, not a phone canvas blown wide. */
html[data-ui-mode="tablet"] #game.stage-trap-shake #canvas {animation:tabletWideJitter .22s steps(2,end) 3!important;}
html[data-ui-mode="tablet"] #game.slime-shake #canvas {animation:tabletWideJitter .22s steps(2,end) infinite!important;}
html[data-ui-mode="tablet"] #game.deadline-final #canvas {animation:tabletWideJitter .28s linear infinite!important;}
@keyframes tabletWideJitter {
  0%,100% {transform:translate(0,0)}
  25% {transform:translate(3px,-1px)}
  50% {transform:translate(-3px,2px)}
  75% {transform:translate(2px,1px)}
}
/* The illustrated boss and kneeling worker preserve natural SVG proportions. */
html[data-ui-mode="tablet"] #bossRoom .boss-character,
html[data-ui-mode="tablet"] #bossRoom .boss-surrender-pose {
  width:min(70vw,365px)!important;
  aspect-ratio:360 / 420;
}
html[data-ui-mode="tablet"] #bossRoom .boss-character svg,
html[data-ui-mode="tablet"] #bossRoom .boss-surrender-pose svg{
  width:100%;height:100%;preserveAspectRatio:xMidYMid meet;
}
html[data-ui-mode="tablet"] #bossRoom .boss-playfield{
  min-width:0;overflow:hidden;
}
html[data-ui-mode="tablet"] #bossRoom #bossCatchCanvas{
  display:block;width:100%;height:100%;object-fit:contain;
}

/* Runtime messages start below the tablet score/deadline/quota panels. */
html[data-ui-mode="tablet"] #game #message{
  top:266px!important;left:50%!important;right:auto!important;
  width:min(78%,680px)!important;transform:translateX(-50%)!important;
  z-index:9;text-align:center;
}
@media(max-width:599px){
  /* Manual 'tablet' override on a phone must not distort the character. */
  html[data-ui-mode="tablet"] #game > #canvas{
    width:min(100%,56.25dvh)!important;height:min(100%,177.7778vw)!important;
    top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;
  }
}
