/* ============================================================
   PATH OF LUMEN — responsive.css
   Tablet / mobile / small-screen adaptation and orientation
   ============================================================ */

@media (max-width: 900px) {
  .panel {
    padding: 28px 24px;
  }
  .howto-grid {
    grid-template-columns: 1fr;
  }
  .hud-center {
    flex-direction: row;
  }
}

@media (max-width: 640px) {
  .hud {
    padding-left: 12px;
    padding-right: 12px;
  }
  .hud-left, .hud-right {
    gap: 8px;
  }
  .hud-center {
    flex-direction: column;
    gap: 4px;
  }
  .hud-timer {
    display: none;
  }
  .hud-btn {
    width: 42px;
    height: 42px;
  }
  .hud-level {
    padding: 9px 12px;
    font-size: 13px;
  }
  .menu-title {
    font-size: clamp(30px, 9vw, 48px);
  }
  .btn {
    min-width: 200px;
  }
  .range {
    width: 130px;
  }
  .setting-row {
    gap: 12px;
  }
  .complete-stats {
    gap: 18px;
  }
  .stat-value {
    font-size: 24px;
  }
  .direction-hint {
  top: auto;
  bottom: calc(env(safe-area-inset-bottom, 0px) + 18px);
  transform: none;
}
  .dh-arrow {
    width: 58px;
    height: 58px;
  }
}

@media (max-width: 420px) {
  .btn {
    min-width: 176px;
    font-size: 13px;
    padding: 12px 20px;
  }
  .hud-lumen {
    font-size: 12px;
  }
}

/* ---------- Portrait mobile: show a compact hint instead of full instr ---------- */
@media (orientation: portrait) and (max-width: 640px) {
  .hud-level { display: none; }
}

/* ---------- Landscape-small (phone rotated): keep gameplay usable ---------- */
@media (orientation: landscape) and (max-height: 460px) {
  .panel {
    padding: 16px 20px;
    max-height: 86dvh;
  }
  .panel-title {
    margin-bottom: 12px;
    font-size: 22px;
  }
  .modal-buttons {
    gap: 8px;
  }
  .menu-buttons {
    gap: 8px;
  }
  .hud {
    top: 6px;
  }
}
