/* theme.css — identité visuelle de chitransit.us (chargé en DERNIER sur toutes les pages), portée de nyctransit.us.
 * Palette « bleu Chicago » : bleu #1f5f8b (6,84:1 avec le blanc, AA) pour l'en-tête, les boutons, les liens et les repères ;
 * accent bleu clair du drapeau #b3ddf2 TOUJOURS avec un texte foncé (jamais de blanc sur bleu clair : 1,5:1) ou en filet décoratif ;
 * neutres froids (slate) ; rouge #b91c1c réservé aux interruptions majeures, ambre aux perturbations ordinaires.
 * Les couleurs des lignes (GTFS) ne sont jamais modifiées. */
:root{
  --mm-brand:#1f5f8b; --mm-brand-dark:#174a6d; --mm-brand-soft:#e8f3fa;
  --mm-accent:#b3ddf2;          /* filets des titres de section : bleu clair (décoratif, jamais support de texte blanc) */
  --mm-ink:#111827; --mm-muted:#4b5563;
  --brand:#1f5f8b; --brand-hover:#174a6d; --brand-dark:#0f2b40; --brand-light:#eef1f5; --brand-tint:#f8fafc;
  --accent:#b3ddf2; --accent-dark:#6fa8cc; --accent-soft:#e8f3fa;
  --ink:#111827; --muted:#4b5563; --surface:#f3f4f6; --line:#e5e7eb;
}
body{background:#fff;color:#111827;}
/* Hiérarchie : titres en encre */
.mm-content h2, .mm-content h3, .mm-home-body h2, .mm-home-body h3,
.about-area5 h2, .about-area5 h3 { color:var(--mm-ink) !important; }
/* Liens de texte : encre soulignée, survol = soulignement bleu clair épais */
.mm-content p a, .mm-content li a, .mm-content td a,
.mm-home-body p a, .mm-home-body li a { color:#1f5f8b; text-decoration:underline; text-decoration-color:#9ca3af; text-decoration-thickness:1px; text-underline-offset:3px; font-weight:600; }
.mm-content p a:hover, .mm-content li a:hover, .mm-content td a:hover,
.mm-home-body p a:hover, .mm-home-body li a:hover { color:#000; text-decoration-color:#b3ddf2; text-decoration-thickness:3px; }
/* Focus clavier visible partout (WCAG 2.4.7 / 2.4.11) */
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible{ outline:3px solid #1f5f8b; outline-offset:2px; box-shadow:0 0 0 5px #b3ddf2; }
.header-area a:focus-visible, .header-area button:focus-visible{ outline:3px solid #b3ddf2; outline-offset:2px; box-shadow:none; }
/* Lien d'évitement : bleu clair + encre */
.bm-skip{ background:#b3ddf2 !important; color:#111827 !important; }
.bm-skip:focus{ outline:3px solid #111827 !important; }
/* En-tête : soulignement bleu clair au survol, sous-menus desktop */
.header-area .main-menu nav > ul > li > a:hover{ text-decoration-color:#b3ddf2 !important; text-decoration-thickness:3px !important; }
.main-menu .nav-dd > .sub-menu li a:hover, .main-menu .nav-dd > .sub-menu li a:focus{ color:#111827 !important; background:#e8f3fa !important; }
.bm-it-badge{ background:#b3ddf2 !important; color:#111827 !important; }
/* Bandeau titre : motif chicagoan (deux filets bleu clair + étoile à six branches), remplace tout motif hérité */
.breadcrumb-area > .container{ background:linear-gradient(120deg,#1f5f8b 0%,#1a5378 62%,#174a6d 100%) !important; }
.breadcrumb-area > .container::after{ opacity:.22 !important; background:no-repeat right bottom/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 120'%3E%3Cpath d='M60 12H238M60 101H238' stroke='%23b3ddf2' stroke-width='9' stroke-linecap='round'/%3E%3Cpath d='M190 22L198.7 41.6L220 39.3L207.3 56.6L220 73.9L198.7 71.5L190 91.2L181.3 71.5L160 73.9L172.7 56.6L160 39.3L181.3 41.6Z' fill='%23fff'/%3E%3C/svg%3E") !important; }
.mm-hero-sub{ color:#e5e7eb !important; }
/* Boutons : primaire encre / texte blanc ; secondaire bleu clair / texte encre */
.btn-primary, .mm-btn{ background:#1f5f8b !important; border-color:#1f5f8b !important; color:#fff !important; }
.btn-primary:hover, .mm-btn:hover{ background:#174a6d !important; }
.mm-btn-accent{ display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:10px 18px; border-radius:10px; background:#b3ddf2; color:#111827 !important; font-weight:700; text-decoration:none !important; border:1px solid #6fa8cc; }
.mm-btn-accent:hover{ background:#cbe7f6; }
/* Tuiles « Explore » : appel en encre, flèche bleu clair au survol ; carte vedette encre + accent bleu clair */
.bmx-card:not(.bmx-feature) .bmx-more{ color:var(--mm-ink) !important; }
.bmx-card:hover{ border-color:#b3ddf2 !important; }
.bmx-ic{ background:#e8f3fa !important; color:#1f5f8b !important; }
.bmx-card.bmx-feature{ background:linear-gradient(135deg,#1f5f8b,#174a6d) !important; }
.bmx-card.bmx-feature .bmx-ic{ background:#b3ddf2 !important; color:#111827 !important; }
.bmx-card.bmx-feature .bmx-more{ color:#b3ddf2 !important; }
.bmx-feature h2, .bmx-feature h3, .bmx-feature h4, .mm-home-body .bmx-feature h3 { color:#fff !important; }
.bmx-feature p{ color:#e5e7eb !important; }
/* Encadré « Last verified » et notes */
.mm-updated{ color:#4b5563 !important; }
.mm-verified{ display:inline-flex; gap:6px; align-items:center; background:#e8f3fa; border:1px solid #9fcbe6; color:#111827; border-radius:999px; padding:3px 12px; font-size:13.5px; font-weight:600; }
/* Badges de ligne maison : carré arrondi (≠ pastille ronde officielle), texte toujours présent, couleur GTFS comme repère */
.nyl{ display:inline-flex; align-items:center; justify-content:center; min-width:30px; height:30px; padding:0 6px; border-radius:7px; font-weight:800; font-size:15px; line-height:1; letter-spacing:0; font-family:inherit; text-decoration:none !important; }
.nyl-sm{ min-width:24px; height:24px; font-size:13px; border-radius:6px; }
/* Bandeau info trafic : ambre pour les perturbations ordinaires, rouge réservé aux interruptions majeures (.bm-it-major) */
.bm-it:not(.bm-it-major){ background:#fef3c7 !important; color:#78350f !important; border-bottom:1px solid #fcd34d; }
.bm-it:not(.bm-it-major) .bm-it-toggle{ background:#92400e !important; color:#fff !important; }
.bm-it:not(.bm-it-major) .bm-it-toggle:hover{ background:#78350f !important; }
.bm-it:not(.bm-it-major) .bm-it-close{ color:#78350f !important; }
.bm-it.bm-it-major{ background:#b91c1c !important; color:#fff !important; }
/* Module itinéraire (bmob-itineraire.css) : neutres froids accordés à l'encre */
.mmob-scope, .mmob-itn-page{
  --mmob-ink:#111827; --mmob-ink-soft:#374151; --mmob-muted:#4b5563;
  --mmob-line:#e5e7eb; --mmob-surface-2:#f9fafb;
  --mmob-shadow-sm:0 1px 2px rgba(17,24,39,.06), 0 1px 3px rgba(17,24,39,.10);
  --mmob-shadow:0 4px 12px rgba(17,24,39,.10), 0 2px 4px rgba(17,24,39,.06);
  --mmob-shadow-lg:0 18px 40px rgba(17,24,39,.16);
}
/* Cartes cliquables (hub Airports) */
a.mm-card{display:block;text-decoration:none !important;color:inherit;transition:border-color .15s, box-shadow .15s;}
a.mm-card:hover{border-color:#b3ddf2 !important;box-shadow:0 10px 24px rgba(17,24,39,.10);}
a.mm-card h3{text-decoration:underline;text-decoration-color:#b3ddf2;text-decoration-thickness:3px;text-underline-offset:4px;}
.mm-card .mm-card-ic{background:#e8f3fa !important;color:#1f5f8b !important;}
