/* ============================================================
   mobile-p1.css — correctifs mobile prioritaires (audit P1)
   À charger APRÈS css/style.css et css/apple-theme.css.
   Ne touche à aucune classe existante : uniquement des surcharges.
   Pour revenir en arrière : retirer la ligne <link> de ce fichier.
   ============================================================ */

/* ── P1.5 — Champs de formulaire : 16 px minimum.
   En dessous, Safari iOS zoome tout seul au focus et décale la page. ── */
.field input,
.field select,
.field textarea {
  font-size: 16px;
  padding: 13px 14px;
}
.field label { font-size: 14px; }
/* Case de consentement : cible confortable au doigt */
.consent input[type="checkbox"] {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
}

/* ── P1.2 — Calendrier au pouce PARTOUT.
   Le grand format n'existait que dans .reserver__date : dans le formulaire
   de contact les cases restaient à ~39 px et les flèches de mois à 34 px. ── */
@media (max-width: 640px) {
  .flatpickr-calendar,
  .flatpickr-calendar .flatpickr-innerContainer,
  .flatpickr-calendar .flatpickr-rContainer,
  .flatpickr-calendar .flatpickr-days,
  .flatpickr-calendar .dayContainer {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }
  .flatpickr-day {
    max-width: none;
    height: 44px;
    line-height: 44px;
    font-size: 16px;
  }
  .flatpickr-current-month { font-size: 17px; }
  .flatpickr-months .flatpickr-prev-month,
  .flatpickr-months .flatpickr-next-month {
    width: 44px;
    height: 44px;
    padding: 11px 0;
  }
  /* Badge « Date choisie · Modifier », steppers du panier, croix de modale */
  .reserver__date-badge { min-height: 44px; padding: 10px 16px; }
  .panier__ligne button,
  .quiz-modal__fermer { min-width: 44px; min-height: 44px; }
}

/* ── P1.3 — Un seul verbe d'action, une seule cible dominante ── */
.nav__cta { min-height: 44px; display: inline-flex; align-items: center; }
@media (max-width: 640px) {
  .cta-mobile__btn {
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  /* « Vérifier ma date » porte l'action, « Appeler » reste secondaire */
  .cta-mobile__btn--primary { flex: 2; }
  .cta-mobile__btn--call    { flex: 1; }
}

/* ── P1.4 — Zone d'accueil iPhone : la barre collante ne doit pas passer
   sous l'indicateur d'accueil, et le bas de page doit rester atteignable. ── */
@media (max-width: 640px) {
  .cta-mobile {
    padding-bottom: calc(10px + env(safe-area-inset-bottom));
  }
  body {
    padding-bottom: calc(74px + env(safe-area-inset-bottom));
  }
}

/* ── P1.6 — Les ancres ne doivent plus arriver sous la nav translucide ── */
#accueil, #galerie, #how, #packs, #avis, #reserver, #contact, #faq {
  scroll-margin-top: 84px;
}
@media (max-width: 640px) {
  #accueil, #galerie, #how, #packs, #avis, #reserver, #contact, #faq {
    scroll-margin-top: 68px;
  }
}

/* ── P1.1 — Message d'indisponibilité de l'admin : lisible, pas décoratif.
   (le texte est posé par le script en bas de index.html) ── */
.date-hint a {
  color: var(--primaire);
  font-weight: 600;
  text-decoration: underline;
}
