/* ==========================================================================
   Pages publiques d'EZDent hors accueil — annuaire, espace patient,
   « Cabinet introuvable » (incs/platform_shell.php).
   --------------------------------------------------------------------------
   Barre et pied de page sont ceux de la page d'accueil (css/landing.css). Le
   corps de ces pages reste écrit en Bootstrap : plutôt que de le réécrire,
   cette feuille donne à ses composants la police, les couleurs, les boutons,
   les cartes et les champs de la page d'accueil. Elle passe d'abord par les
   variables de Bootstrap 5.3 : les composants gardent leur comportement,
   seul leur aspect change.
   ========================================================================== */

body.ez-page {
  --bs-body-font-family: var(--ez-font-sans);
  --bs-body-color: var(--ez-ink-700);
  --bs-emphasis-color: var(--ez-ink-900);
  --bs-secondary-color: var(--ez-ink-500);
  --bs-primary: #0d7490;
  --bs-primary-rgb: 13, 116, 144;
  --bs-link-color: #0d7490;
  --bs-link-color-rgb: 13, 116, 144;
  --bs-link-hover-color: #084253;
  --bs-link-hover-color-rgb: 8, 66, 83;
  --bs-border-color: var(--ez-border);
  --bs-border-radius: var(--ez-radius-sm);
  --bs-border-radius-sm: 8px;
  --bs-border-radius-lg: var(--ez-radius);
  --bs-focus-ring-color: rgba(13, 116, 144, 0.16);
  background: var(--ez-surface-alt);
}

/* La barre est fixe : le contenu commence sous elle. */
.ez-page__main {
  min-height: 60vh;
  padding-top: calc(var(--ez-nav-h) + clamp(1.5rem, 1rem + 2vw, 3rem));
  padding-bottom: clamp(2.5rem, 2rem + 3vw, 4.5rem);
}
@media (min-width: 1200px) {
  .ez-page .container { max-width: 1180px; }
}

/* `.ez-landing ul` retire les puces de toute la page (barre, pied) : on les
   rend aux listes du contenu qui n'ont pas demandé à s'en passer. */
.ez-page__main ul:not(.list-unstyled) { padding-left: 1.4rem; list-style: disc; }

/* -- Cartes ---------------------------------------------------------------- */

.ez-page .card {
  --bs-card-border-color: var(--ez-border);
  --bs-card-border-radius: var(--ez-radius);
  --bs-card-inner-border-radius: calc(var(--ez-radius) - 1px);
  --bs-card-cap-bg: var(--ez-surface-alt);
  --bs-card-spacer-x: 1.4rem;
  --bs-card-spacer-y: 1.25rem;
  box-shadow: var(--ez-shadow-sm);
}

/* -- Boutons : pilules, comme .ez-btn -------------------------------------- */

.ez-page .btn {
  --bs-btn-font-weight: 700;
  --bs-btn-padding-x: 1.3rem;
  --bs-btn-padding-y: 0.6rem;
  --bs-btn-border-width: 2px;
  --bs-btn-border-radius: var(--ez-radius-pill);
  --bs-btn-focus-shadow-rgb: 13, 116, 144;
}
.ez-page .btn-sm {
  --bs-btn-padding-x: 0.95rem;
  --bs-btn-padding-y: 0.35rem;
  --bs-btn-border-radius: var(--ez-radius-pill);
}
/* Accolé à un champ, un bouton prend l'arrondi du champ. */
.ez-page .input-group .btn { --bs-btn-border-radius: var(--ez-radius-sm); }

.ez-page .btn-primary {
  --bs-btn-bg: #0d7490;
  --bs-btn-border-color: #0d7490;
  --bs-btn-hover-bg: #0b5a70;
  --bs-btn-hover-border-color: #0b5a70;
  --bs-btn-active-bg: #084253;
  --bs-btn-active-border-color: #084253;
  --bs-btn-disabled-bg: #0d7490;
  --bs-btn-disabled-border-color: #0d7490;
  box-shadow: var(--ez-shadow);
}

/* Secondaires : le bouton « fantôme » de la page d'accueil. */
.ez-page .btn-secondary,
.ez-page .btn-outline-secondary,
.ez-page .btn-outline-primary {
  --bs-btn-color: var(--ez-primary-800);
  --bs-btn-bg: var(--ez-surface);
  --bs-btn-border-color: var(--ez-border);
  --bs-btn-hover-color: var(--ez-primary-700);
  --bs-btn-hover-bg: var(--ez-primary-50);
  --bs-btn-hover-border-color: var(--ez-primary-600);
  --bs-btn-active-color: var(--ez-primary-800);
  --bs-btn-active-bg: var(--ez-primary-100);
  --bs-btn-active-border-color: var(--ez-primary-600);
  --bs-btn-disabled-color: var(--ez-ink-300);
  --bs-btn-disabled-bg: var(--ez-surface);
  --bs-btn-disabled-border-color: var(--ez-border);
}

/* -- Champs : comme .ez-input ---------------------------------------------- */

.ez-page .form-control,
.ez-page .form-select {
  padding: 0.7rem 1rem;
  border-color: var(--ez-border);
  border-radius: var(--ez-radius-sm);
  color: var(--ez-ink-900);
}
.ez-page .form-control:focus,
.ez-page .form-select:focus {
  border-color: var(--ez-primary-600);
  box-shadow: 0 0 0 3px rgba(13, 116, 144, 0.16);
}
.ez-page .form-select { padding-right: 2.4rem; }
.ez-page .form-check-input:checked {
  background-color: #0d7490;
  border-color: #0d7490;
}
/* `.ez-landing label` met tous les libellés en petit gras : une case à cocher
   garde un libellé de texte courant. */
.ez-page .form-check-label {
  font-size: var(--ez-step--1);
  font-weight: 500;
  color: var(--ez-ink-700);
}

/* -- Pastilles et messages ------------------------------------------------- */

.ez-page .badge {
  border-radius: var(--ez-radius-pill);
  font-weight: 600;
}
.ez-page .badge.bg-light {
  background: var(--ez-primary-50) !important;
  border: 1px solid var(--ez-primary-100);
  color: var(--ez-primary-800) !important;
}
.ez-page .alert { border-radius: var(--ez-radius-sm); }
