/* ============================================================
   BASE MÉDICAMENTS — styles repris d'ordonnance.ma
   ------------------------------------------------------------
   Sur ordonnance.ma, ces règles vivent en <style> dans
   medicaments-page.php et medicament-fiche.php. Elles sont ici
   extraites dans un fichier à part : même structure, même style,
   mais chargé une fois et surchargeable par la couleur de marque.

   Les couleurs bleues codées en dur sont neutralisées plus bas
   dans net.css — ne pas les corriger ici, ce fichier doit rester
   une COPIE fidèle pour rester resynchronisable.
============================================================ */

/* ===== extrait de medicaments-page.php ===== */

/* ── Page médicaments ────────────────────────────────────────────────────── */
.meds-hero {
  background: linear-gradient(135deg, #1e3a8a 0%, #1d4ed8 40%, #0891b2 100%);
  color: #fff;
  padding: 56px 20px 44px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.meds-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
}
.meds-hero__inner { max-width: 780px; margin: 0 auto; position: relative; z-index: 1; }
.meds-hero__badge {
  display: inline-block;
  background: rgba(255,255,255,.18);
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 999px;
  padding: 4px 16px;
  font-size: .82rem;
  font-weight: 600;
  margin-bottom: 16px;
  letter-spacing: .04em;
}
.meds-hero__title { font-family: var(--font-ui); font-size: clamp(1.6rem, 4vw, 2.4rem); font-weight: 700; margin-bottom: 10px; }
.meds-hero__sub   { opacity: .85; font-size: .95rem; margin-bottom: 28px; }

.meds-search-bar {
  display: flex; align-items: center; gap: 10px;
  background: #fff; border-radius: var(--radius-lg);
  padding: 6px 6px 6px 16px;
  box-shadow: var(--shadow-lg);
}
.meds-search-bar__icon { color: var(--text-muted); flex-shrink: 0; }
.meds-search-bar__input {
  flex: 1; border: none; outline: none;
  font-family: var(--font-body); font-size: .95rem; color: var(--text);
  background: transparent;
}
.meds-search-bar__btn { border-radius: var(--radius)!important; }

/* Stats */
.meds-stats { background: var(--surface); border-bottom: 1px solid var(--border); }
.meds-stats__inner {
  max-width: var(--max-w); margin: 0 auto;
  display: flex; flex-wrap: wrap; justify-content: center; gap: 0;
}
.meds-stat {
  padding: 18px 28px; text-align: center;
  border-right: 1px solid var(--border);
}
.meds-stat:last-child { border-right: none; }
.meds-stat__num { font-family: var(--font-ui); font-size: 1.4rem; font-weight: 700; color: var(--primary); }
.meds-stat__lbl { font-size: .75rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: .05em; margin-top: 2px; }

/* Layout */
.meds-layout {
  max-width: var(--max-w); margin: 32px auto;
  padding: 0 20px;
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 28px;
  align-items: start;
}

/* Filtres */
.meds-filters {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 20px;
  position: sticky; top: calc(var(--header-h) + 12px);
}
.meds-filters__header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 18px; }
.meds-filters__title { font-family: var(--font-ui); font-size: .95rem; font-weight: 600; color: var(--text); }
.meds-filters__reset {
  font-size: .78rem; color: var(--primary); background: none; border: none;
  cursor: pointer; padding: 0; text-decoration: underline;
}
.filter-group { margin-bottom: 18px; }
.filter-group__label { display: block; font-size: .82rem; font-weight: 600; color: var(--text-md); margin-bottom: 8px; text-transform: uppercase; letter-spacing: .04em; }
.filter-select {
  width: 100%; padding: 8px 12px; border: 1px solid var(--border);
  border-radius: var(--radius-sm); font-size: .88rem; background: var(--bg);
  color: var(--text); outline: none; cursor: pointer;
}
.filter-select:focus { border-color: var(--primary); }
.filter-radio-group { display: flex; flex-direction: column; gap: 6px; }
.filter-radio { display: flex; align-items: center; gap: 8px; font-size: .88rem; color: var(--text-md); cursor: pointer; }
.filter-radio input { accent-color: var(--primary); }
.meds-filter-apply { margin-top: 4px; }
.btn--full { width: 100%; justify-content: center; }

/* Résultats */
.meds-results__bar {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 16px; flex-wrap: wrap; gap: 8px;
}
.meds-results__count { font-size: .9rem; color: var(--text-muted); }
.meds-results__count strong { color: var(--text); }
.meds-filters-toggle { display: none; }

/* Tableau */
.meds-table-wrap { overflow-x: auto; border-radius: var(--radius); border: 1px solid var(--border); background: var(--surface); }
.meds-table { width: 100%; border-collapse: collapse; font-size: .875rem; }
.meds-table thead th {
  background: var(--bg-alt); padding: 11px 14px;
  text-align: left; font-family: var(--font-ui); font-size: .77rem;
  font-weight: 600; color: var(--text-muted); text-transform: uppercase;
  letter-spacing: .04em; border-bottom: 1px solid var(--border);
  white-space: nowrap;
}
.meds-table tbody td {
  padding: 11px 14px; border-bottom: 1px solid var(--border);
  color: var(--text-md); vertical-align: middle;
}
.meds-table__row:last-child td { border-bottom: none; }
.meds-table__row:hover td { background: var(--primary-lt); }
.meds-table__nom { font-weight: 600; color: var(--text)!important; }
.meds-table__dci { color: var(--text-muted)!important; font-size: .83rem; }
.meds-table__ppv { font-weight: 600; color: var(--accent)!important; white-space: nowrap; }
.meds-table__pres { font-size: .82rem; max-width: 180px; }
.meds-table__dosage { white-space: nowrap; }

/* Empty */
.meds-empty {
  text-align: center; padding: 60px 20px;
  background: var(--surface); border-radius: var(--radius); border: 1px solid var(--border);
}
.meds-empty__icon { font-size: 2.5rem; margin-bottom: 12px; }
.meds-empty__title { font-family: var(--font-ui); font-weight: 600; font-size: 1.1rem; margin-bottom: 6px; }
.meds-empty__sub { color: var(--text-muted); font-size: .9rem; }

/* Pagination */
.meds-pagination {
  display: flex; flex-wrap: wrap; gap: 6px; justify-content: center;
  margin-top: 24px;
}
.meds-pagination__btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 36px; height: 36px; padding: 0 10px;
  border: 1px solid var(--border); border-radius: var(--radius-sm);
  background: var(--surface); color: var(--text-md); font-size: .875rem;
  text-decoration: none; transition: all .15s;
}
.meds-pagination__btn:hover { border-color: var(--primary); color: var(--primary); }
.meds-pagination__btn--active { background: var(--primary); color: #fff; border-color: var(--primary); font-weight: 600; }
.meds-pagination__dots { display: inline-flex; align-items: center; padding: 0 4px; color: var(--text-muted); }

/* Indicateur fiche complète */
.meds-table__has-info { font-size: .75rem; margin-left: 4px; opacity: .6; }

/* Responsive */
@media (max-width: 900px) {
  .meds-layout { grid-template-columns: 1fr; }
  .meds-filters {
    display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    z-index: 900; border-radius: 0; overflow-y: auto;
    padding-top: 60px;
  }
  .meds-filters.open { display: block; }
  .meds-filters-toggle { display: inline-flex; }
}

/* ── Mobile : le tableau devient des cartes empilées (plus de scroll latéral) ── */
@media (max-width: 768px) {
  .meds-layout { margin: 20px auto; padding: 0 14px; }
  .meds-table-wrap { overflow: visible; border: none; background: transparent; }
  .meds-table { font-size: .9rem; }
  .meds-table thead { display: none; }
  .meds-table,
  .meds-table tbody,
  .meds-table .meds-table__row,
  .meds-table tbody td { display: block; width: 100%; }

  .meds-table__row {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, .06);
    margin-bottom: 12px;
    padding: 14px 16px 12px;
    position: relative;
  }
  .meds-table__row:hover td { background: transparent; }

  .meds-table tbody td {
    border: none !important;
    padding: 2px 0;
    color: var(--text);
    font-weight: 500;
    font-size: .85rem;
    white-space: normal;
    max-width: none;
  }
  .meds-table tbody td:empty { display: none; }

  .meds-table__nom {
    font-size: 1.04rem !important;
    font-weight: 700;
    color: var(--text) !important;
    padding-right: 54px !important;
    margin-bottom: 1px;
  }
  /* Molécule (DCI) en vert, comme la fiche médicament */
  .meds-table__dci { color: #047857 !important; font-weight: 600; margin-bottom: 8px; }

  /* Libellé devant les champs secondaires */
  .meds-table tbody td[data-label]::before {
    content: attr(data-label) " : ";
    font-weight: 700;
    color: var(--text-light);
    text-transform: uppercase;
    font-size: .64rem;
    letter-spacing: .04em;
  }
  .meds-table__ppv {
    font-weight: 800;
    color: var(--primary) !important;
    font-size: 1rem !important;
    margin-top: 4px;
  }

  /* Badge Princeps / Générique en haut à droite de la carte */
  .meds-pg-cell {
    position: absolute !important;
    top: 14px; right: 14px;
    padding: 0 !important;
    width: auto !important;
  }
}

@media (max-width: 640px) {
  .meds-hero { padding: 36px 18px 28px; }
  .meds-stat { padding: 14px 16px; }
  .meds-stat__num { font-size: 1.1rem; }
}

/* ===== extrait de medicament-fiche.php ===== */

/* Page en clair uniquement (pas de mode sombre global sur le site) */
html{ color-scheme: light; }
/* ── Fiche médicament ─────────────────────────────────────────────── */
.fiche-wrap      { max-width: 900px; margin: 0 auto; padding: 24px 16px 60px; }
.fiche-wrap--wide{ max-width: 1140px; }
.med-sim         { display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:-8px 0 22px; }
.med-sim__lbl    { font-size:.8rem;font-weight:700;color:#6b7280; }
.med-sim__chip   { display:inline-flex;align-items:center;gap:5px;background:#eff6ff;border:1px solid #dbeafe;color:#1d4ed8;border-radius:20px;padding:5px 12px;font-size:.82rem;font-weight:600;text-decoration:none; }
.med-sim__chip small{ color:#64748b;font-weight:500; }
.med-sim__chip:hover{ background:#dbeafe; }
.med-sim__all    { display:inline-flex;align-items:center;gap:4px;font-size:.8rem;color:#fff;background:#1d4ed8;text-decoration:none;font-weight:700;padding:6px 14px;border-radius:20px; }
.med-sim__all:hover{ background:#1e40af; }
@media(max-width:640px){
  .med-sim__chip:nth-child(n+5){ display:none; }
  .med-sim       { gap:7px; }
  .med-sim__all  { font-size:.82rem;padding:7px 15px; }
}
.fiche-back      { display:inline-flex;align-items:center;gap:6px;color:var(--primary,#2563eb);font-size:.9rem;text-decoration:none;margin-bottom:20px; }
.fiche-back:hover{ text-decoration:underline; }

.fiche-hero      { background:linear-gradient(135deg,#1e40af,#2563eb);color:#fff;border-radius:14px;padding:28px 32px;margin-bottom:24px; }
.fiche-hero__nom { font-size:1.7rem;font-weight:800;margin:0 0 6px; }
.fiche-hero__forme{ display:block;font-size:1rem;font-weight:600;opacity:.9;margin-top:3px; }
.fiche-hero__dci { font-size:1rem;opacity:.85;margin:0 0 14px; }
.fiche-hero__tags{ display:flex;flex-wrap:wrap;gap:8px; }
.fiche-tag       { background:rgba(255,255,255,.2);border-radius:20px;padding:4px 12px;font-size:.82rem;font-weight:600; }
.fiche-tag--green{ background:#16a34a; }
.fiche-tag--gray { background:rgba(255,255,255,.12); }

.fiche-grid      { display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px; }
@media(max-width:640px){ .fiche-grid{ grid-template-columns:1fr; } }

.fiche-card      { background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px; }
.fiche-card__title{ font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;margin:0 0 12px; }
.fiche-card--full{ grid-column:1/-1; }

.fiche-row       { display:flex;justify-content:space-between;align-items:baseline;padding:7px 0;border-bottom:1px solid #f3f4f6;gap:12px; }
.fiche-row:last-child{ border-bottom:none; }
.fiche-row__lbl  { color:#6b7280;font-size:.85rem;flex-shrink:0; }
.fiche-row__val  { font-weight:600;font-size:.9rem;text-align:right; }
.fiche-row__val--green{ color:#16a34a; }
.fiche-row__val--blue { color:#2563eb; }

.fiche-text      { font-size:.9rem;line-height:1.7;color:#374151; }
.fiche-text p    { margin:0 0 10px; }

.fiche-section   { background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;margin-bottom:16px; }
.fiche-section__title{ font-size:1rem;font-weight:700;color:#111827;margin:0 0 14px;display:flex;align-items:center;gap:8px; }

.equiv-list      { display:flex;flex-direction:column;gap:8px; }
.equiv-item      { display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#f9fafb;border-radius:8px;text-decoration:none;color:inherit;transition:background .15s; }
.equiv-item:hover{ background:#eff6ff; }
.equiv-item__nom { font-weight:600;font-size:.9rem; }
.equiv-item__info{ font-size:.8rem;color:#6b7280; }
.equiv-item__ppv { font-weight:700;color:#2563eb;font-size:.9rem;white-space:nowrap; }

/* ── Molécule ─────────────────────────────────────────────────────── */
.mol-wrap        { border:2px solid #e0e7ff;border-radius:14px;overflow:hidden;margin-bottom:16px; }
.mol-header      { background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;padding:14px 20px;display:flex;align-items:center;gap:10px; }
.mol-header__icon{ font-size:1.2rem; }
.mol-header__title{ font-size:1rem;font-weight:700; }
.mol-grid        { display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#e5e7eb; }
@media(max-width:640px){ .mol-grid{ grid-template-columns:1fr; } }
.mol-card        { background:#fff;padding:16px 18px; }
.mol-card--full  { grid-column:1/-1; }
.mol-card__title { font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;display:flex;align-items:center;gap:6px; }
.mol-card__body  { font-size:.875rem;line-height:1.75;color:#374151; }

/* Couleurs par type */
.mol-card--blue   .mol-card__title { color:#1d4ed8; }
.mol-card--red    .mol-card__title { color:#dc2626; }
.mol-card--orange .mol-card__title { color:#d97706; }
.mol-card--purple .mol-card__title { color:#7c3aed; }
.mol-card--gray   .mol-card__title { color:#4b5563; }
.mol-card--red    { background:#fff5f5; }
.mol-card--orange { background:#fffbeb; }
.mol-card--purple { background:#faf5ff; }
.mol-card--blue   { background:#eff6ff; }

/* Contenu formaté molécule */
.mol-card__body p        { margin:0 0 6px;font-size:.875rem;line-height:1.75;color:#374151; }
.mol-card__body br       { display:block;content:'';margin:4px 0; }
.mol-subtitle            { font-weight:700;color:#111827!important;font-size:.9rem!important;margin:10px 0 4px!important; }
.mol-list                { margin:4px 0 10px 0;padding:0;list-style:none; }
.mol-list li             { display:flex;gap:10px;padding:5px 0;border-bottom:1px solid rgba(0,0,0,.05);font-size:.875rem;line-height:1.6;color:#374151; }
.mol-list li:last-child  { border-bottom:none; }
.mol-list__num           { display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:50%;background:currentColor;color:#fff;font-size:.72rem;font-weight:700;flex-shrink:0;opacity:.85; }
.mol-card--red    .mol-list__num { background:#dc2626; color:#fff; }
.mol-card--orange .mol-list__num { background:#d97706; color:#fff; }
.mol-card--blue   .mol-list__num { background:#1d4ed8; color:#fff; }
.mol-card--purple .mol-list__num { background:#7c3aed; color:#fff; }
.mol-card--gray   .mol-list__num { background:#4b5563; color:#fff; }
.mol-list--dash li::before       { content:'—';font-weight:700;opacity:.5;flex-shrink:0; }

.badge-pg        { display:inline-block;padding:3px 10px;border-radius:20px;font-size:.78rem;font-weight:700; }
.badge-pg--G     { background:#dcfce7;color:#15803d; }
.badge-pg--P     { background:#dbeafe;color:#1d4ed8; }

.ppv-big         { font-size:1.4rem;font-weight:800;color:#16a34a; }

/* Cette page s'affiche en clair quel que soit le réglage du navigateur :
   le site n'a pas de mode sombre global (header/fond restent clairs), donc
   on neutralise toute bascule auto pour éviter un rendu incohérent. */

/* ===== extrait de medicament-fiche.php ===== */

@media(prefers-color-scheme:dark){
  .fr-toc,.fr-sec{background:#fff;border-color:#e5e7eb}
  .fr-toc a{color:#475569}.fr-toc a:hover{background:#eff6ff;color:#1d4ed8}
  .fr-sec__t{color:#111827}.fr-sec__body{color:#374151}
  .fr-faq{background:#f9fafb;border-color:#e5e7eb}.fr-faq summary{color:#1f2937}.fr-faq__a{color:#4b5563}
  .fr-table th{background:#f3f4f6;color:#374151}.fr-table td{color:#111827}
  .fr-adapt th{background:#eff6ff;color:#1e40af;border-color:#dbeafe}
  .fr-adapt td{color:#374151;border-color:#e5e7eb}
  .fr-adapt tr{background:#fff;border-color:#e5e7eb}
}
