/* 此间 · 交互层样式：热区高亮、物件提示条
   手机横屏优先：无 hover 依赖（轻按高亮），热区 ≥44pt 由 JS 保证 */

/* T4 热区层：世界坐标系内，随 stage letterbox 缩放；平时透明，轻按/hover 高亮 */
#hotspots {
  position: absolute; inset: 0;
  pointer-events: none;
}
.hs {
  position: absolute;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
  cursor: pointer;
  outline: none;
}
.hs.poly { clip-path: var(--poly); }

/* 轻按高亮：像素风亮框+亮度提升（无 hover 依赖，6.5 决议） */
.hs.pressed { filter: brightness(1.25) saturate(1.15); }
.hs.pressed::after {
  content: ""; position: absolute; inset: 0;
  box-shadow: 0 0 0 4px #e0b870, 0 0 18px 4px rgba(255, 215, 122, .55);
}
.hs.poly.pressed::after { clip-path: var(--poly); }

/* 桌面 hover 微提示（触屏无此态） */
@media (hover: hover) {
  .hs:hover { filter: brightness(1.12); }
}

/* T5 物件描述：底部滑出小面板（6.5 决议移动端形态），像素风暖色 */
#prop-tip {
  position: fixed;
  left: 50%; bottom: calc(16px + env(safe-area-inset-bottom));
  transform: translate(-50%, 200%);
  max-width: min(86vw, 560px);
  background: #3f2d1b;
  border: 2px solid #b99e86;
  border-radius: 10px;
  padding: 12px 18px;
  color: #d0be9c;
  font-size: 15px; line-height: 1.6; letter-spacing: .5px;
  box-shadow: 0 4px 18px rgba(0, 0, 0, .5), inset 0 0 0 1px rgba(240, 224, 192, .08);
  transition: transform .35s ease;
  z-index: 90;
  text-align: center;
  /* T23.5：显示或隐藏都不吃点击——提示条只是「读」，下一次轻点照常落到它下面的门/座位/NPC */
  pointer-events: none;
}
#prop-tip.show { transform: translate(-50%, 0); }
#prop-tip .src { font-size: 12px; color: #ca8854; display: block; margin-bottom: 2px; }
