/* ============================================================================
   Pro Re Nata — Consultation vaccination (PIQ)
   ----------------------------------------------------------------------------
   Spécifique à vaccination.html. Réutilise le shell wizard (voyage-shell),
   les en-têtes d'étape (cons-step-head) et les cartes (cons-card) déjà
   chargés ; n'ajoute que le profil, l'historique et les cartes de
   recommandation. Tokens --prn-* pour rester cohérent light/dark.
   ============================================================================ */

/* ── Fieldsets profil / historique ──────────────────────────────────────── */
.vaccination-page .vacc-fieldset,
.vaccination-page .vacc-hist-item {
    border: 1px solid var(--prn-line);
    border-radius: 12px;
    padding: 1rem 1.1rem;
    margin: 0 0 1rem;
    background: var(--prn-surface);
}
.vaccination-page .vacc-fieldset > legend,
.vaccination-page .vacc-hist-item > legend {
    font-weight: 700;
    color: var(--prn-ink);
    padding: 0 0.4rem;
    font-size: 0.95rem;
}
.vaccination-page .cons-card-hint,
.vaccination-page .vacc-muted {
    color: var(--prn-muted);
    font-size: 0.85rem;
    margin: 0.2rem 0 0.7rem;
}

.vaccination-page .vacc-profile-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin-bottom: 0.7rem;
}
.vaccination-page .vacc-profile-grid label {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--prn-ink-soft);
}
.vaccination-page .vacc-profile-grid input {
    width: 8rem;
    padding: 0.5rem 0.6rem;
    border: 1px solid var(--prn-line);
    border-radius: 8px;
    background: var(--prn-bg);
    color: var(--prn-text);
    font-size: 1rem;
}
.vaccination-page .cons-req { color: var(--prn-danger); font-weight: 700; }

/* ── Lignes chips (sexe / grossesse) ────────────────────────────────────── */
.vaccination-page .vacc-preg-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin: 0.5rem 0;
}
.vaccination-page .vacc-preg-label {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--prn-ink-soft);
    margin-right: 0.3rem;
}

/* ── Chips (radio pilules + checkbox facteurs de risque) ────────────────── */
.vaccination-page .vacc-chip-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}
.vaccination-page .vacc-chip,
.vaccination-page .vacc-ci-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 0.85rem;
    border: 1.5px solid var(--prn-line);
    border-radius: 999px;
    background: var(--prn-surface);
    color: var(--prn-text);
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    min-height: 44px;
    transition: background .15s ease, border-color .15s ease;
}
.vaccination-page .vacc-ci-chip { border-radius: 10px; text-align: left; }
.vaccination-page .vacc-chip:hover,
.vaccination-page .vacc-ci-chip:hover {
    border-color: var(--prn-int-hover-border);
    background: var(--prn-int-hover-bg);
}
.vaccination-page .vacc-chip.is-selected,
.vaccination-page .vacc-ci-chip.is-selected {
    border-color: var(--prn-int-selected-border);
    background: var(--prn-int-selected-bg);
    color: var(--prn-int-text);
}
.vaccination-page .vacc-ci-check {
    opacity: 0;
    color: var(--prn-success);
    font-weight: 800;
}
.vaccination-page .vacc-ci-chip.is-selected .vacc-ci-check { opacity: 1; }

.vaccination-page .vacc-risk-group { margin-bottom: 0.9rem; }
.vaccination-page .vacc-risk-group h4 {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--prn-muted);
    margin: 0 0 0.45rem;
}

/* ── Saisie rapide de l'historique ──────────────────────────────────────── */
.vaccination-page .vacc-quickset {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
    padding: 0.6rem 0.8rem;
    border: 1px dashed var(--prn-line);
    border-radius: 10px;
    background: var(--prn-bg-alt);
}
.vaccination-page .vacc-quickset-label {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--prn-ink-soft);
}
.vaccination-page .btn-sm {
    padding: 0.35rem 0.75rem;
    font-size: 0.82rem;
    min-height: 36px;
}

/* ── Historique : sigle en pastille ─────────────────────────────────────── */
.vaccination-page .vacc-hist-sigle {
    display: inline-block;
    background: var(--prn-teal);
    color: #fff;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 0.1rem 0.5rem;
    border-radius: 6px;
    margin-right: 0.35rem;
    vertical-align: middle;
    white-space: nowrap;
}

/* ── Cartes de recommandation ───────────────────────────────────────────── */
.vaccination-page .vacc-reco-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1rem;
}
.vaccination-page .vacc-reco {
    border: 1px solid var(--prn-line);
    border-left: 5px solid var(--prn-muted);
    border-radius: 12px;
    padding: 0.85rem 1rem;
    background: var(--prn-surface);
}
.vaccination-page .vacc-reco--due       { border-left-color: var(--prn-success); background: var(--prn-success-bg); }
.vaccination-page .vacc-reco--recommended { border-left-color: var(--prn-blue); }
.vaccination-page .vacc-reco--consider   { border-left-color: var(--prn-muted); }
.vaccination-page .vacc-reco--blocked    { border-left-color: var(--prn-danger); background: var(--prn-danger-bg-soft); }

.vaccination-page .vacc-reco-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-bottom: 0.4rem;
}
.vaccination-page .vacc-reco-head h3 {
    margin: 0;
    font-size: 1rem;
    color: var(--prn-ink);
}
.vaccination-page .vacc-reco-badges {
    display: flex;
    gap: 0.4rem;
    flex-wrap: wrap;
    align-items: center;
}
.vaccination-page .vacc-reco-reason {
    margin: 0.3rem 0;
    color: var(--prn-ink-soft);
    font-size: 0.9rem;
    line-height: 1.5;
}
.vaccination-page .vacc-reco-sched,
.vaccination-page .vacc-reco-prod {
    margin: 0.3rem 0 0;
    font-size: 0.88rem;
    color: var(--prn-text);
}
.vaccination-page .vacc-reco-freenote {
    margin: 0.4rem 0 0;
    font-size: 0.82rem;
    color: var(--prn-muted);
    font-style: italic;
}
.vaccination-page .vacc-reco-ci {
    margin: 0.3rem 0 0;
    font-size: 0.9rem;
    color: var(--prn-danger);
    font-weight: 600;
}

.vaccination-page .vacc-actions-row {
    display: flex;
    gap: 0.6rem;
    flex-wrap: wrap;
    margin-bottom: 1rem;
}

@media (max-width: 640px) {
    .vaccination-page .vacc-profile-grid input { width: 100%; }
    .vaccination-page .vacc-actions-row .btn { flex: 1 1 auto; }
}
