/* 发布版外壳：横屏引导、载入遮罩、移动端手势收敛。不改动游戏本体样式。 */
:root { color-scheme: light; }

html, body {
  overscroll-behavior: none;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

/* iOS 竖屏时把 1920×1080 舞台缩得极小，先给一张横屏引导；旋转后自动恢复。 */
#rotate-hint { display: none; }
@media (orientation: portrait) and (pointer: coarse) {
  #rotate-hint { display: flex; }
  #stage { visibility: hidden; }
}

#rotate-hint {
  position: fixed;
  inset: 0;
  z-index: 4000;
  align-items: center;
  justify-content: center;
  padding: calc(env(safe-area-inset-top) + 24px) 24px calc(env(safe-area-inset-bottom) + 24px);
  background: #FFC21A url('/kit-assets/bg/tile_felt_paws.svg') repeat;
  background-size: 160px 160px;
  font-family: system-ui, -apple-system, "PingFang SC", "Hiragino Sans GB", sans-serif;
  color: #3B2A22;
  text-align: center;
}

.rotate-card {
  max-width: 340px;
  padding: 26px 26px 24px;
  border: 4px solid #3B2A22;
  border-radius: 26px;
  background: #FFFDF6;
  box-shadow: 0 8px 0 #3B2A22;
}

.rotate-cat {
  width: 88px;
  height: 88px;
  display: block;
  margin: 0 auto;
  animation: rotate-nudge 2.6s ease-in-out infinite;
}

@keyframes rotate-nudge {
  0%, 100% { transform: rotate(-7deg) translateY(0); }
  50% { transform: rotate(7deg) translateY(-4px); }
}

.rotate-card h1 {
  margin: 10px 0 8px;
  font-size: 24px;
  letter-spacing: 1px;
}

.rotate-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.6;
  color: #6B564B;
}

@media (prefers-reduced-motion: reduce) {
  .rotate-cat { animation: none; }
}

/* 首帧前盖一层奶油底，避免白闪；脚本在 load 后淡出。 */
#boot-veil {
  position: fixed;
  inset: 0;
  z-index: 3900;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #FFC21A;
  color: #3B2A22;
  font-family: system-ui, -apple-system, "PingFang SC", "Hiragino Sans GB", sans-serif;
  font-size: 18px;
  letter-spacing: 2px;
  transition: opacity .35s ease;
  opacity: 1;
}

#boot-veil.gone { opacity: 0; pointer-events: none; }
