/* ════════════════════════════════════════════════════════════════
   HM-themes.css — Thèmes sélectionnables pour l'accueil v2 (HM)

   Activation : classe sur body, ex. body.HM-theme-night-sea
   Désactivation implicite quand night mode actif (mer rouge prime).
   Chaque thème surcharge HM.css via spécificité (body.HM-theme-X).

   Thèmes actuels :
     - night-sea   : nuit en mer, dark premium, glass-morphism, néons
     - radar       : radar Ingress, HUD gaming vert phosphore, grille géodésique
     (à venir : papier nautique, liquid glass, côte atlantique, régate)
   ════════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@500;600;700&family=Share+Tech+Mono&display=swap');


/* ═══════════════════════════════════════════════════════════════════
   THÈME : NIGHT SEA  (nuit en mer — dark premium)
   ═══════════════════════════════════════════════════════════════════ */

body.HM-theme-night-sea:not(.gn-night-mode),
html.HM-theme-night-sea:not(.gn-night-mode) body {
  background: radial-gradient(ellipse at 50% -10%, #0d2b4a 0%, #05111e 60%, #02080f 100%) !important;
  color: #e0eaf5;
  position: relative;
  min-height: 100vh;
}

/* Header principal (barre du haut) — bleu nuit cohérent */
html.HM-theme-night-sea:not(.gn-night-mode) .header2-bar {
  background: linear-gradient(180deg, #0a1f3a 0%, #071629 100%) !important;
  border-bottom: 1px solid rgba(120,200,255,0.10);
  box-shadow: 0 2px 20px rgba(0,0,0,0.4);
}
html.HM-theme-night-sea:not(.gn-night-mode) .header2-bar .header2-link,
html.HM-theme-night-sea:not(.gn-night-mode) .header2-bar .header2-dropbtn { color: #d5e3f5; }
html.HM-theme-night-sea:not(.gn-night-mode) .header2-bar .header2-link:hover,
html.HM-theme-night-sea:not(.gn-night-mode) .header2-bar .header2-dropbtn:hover { color: #ffffff; }

/* Drawer mobile (menu burger) */
html.HM-theme-night-sea:not(.gn-night-mode) .header2-drawer {
  background: linear-gradient(180deg, #0a1f3a 0%, #05111e 100%) !important;
  color: #d5e3f5;
  box-shadow: 4px 0 30px rgba(0,0,0,0.6);
}
html.HM-theme-night-sea:not(.gn-night-mode) .header2-drawer a,
html.HM-theme-night-sea:not(.gn-night-mode) .header2-drawer .header2-dropbtn { color: #d5e3f5; }
html.HM-theme-night-sea:not(.gn-night-mode) .header2-drawer a:hover { background: rgba(255,255,255,0.06); }
html.HM-theme-night-sea:not(.gn-night-mode) .header2-drawer .header2-dropdown-content {
  background: rgba(255,255,255,0.04);
  border-radius: 8px;
}

/* Sous-menus du header DESKTOP (déroulants depuis la barre top) */
html.HM-theme-night-sea:not(.gn-night-mode) .header2-bar .header2-dropdown-content {
  background: rgba(10,26,46,0.98) !important;
  border-color: rgba(255,255,255,0.12) !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.5) !important;
  backdrop-filter: blur(16px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .header2-bar .header2-dropdown-content a {
  background: transparent !important;
  color: #d5e3f5 !important;
  border-bottom-color: rgba(255,255,255,0.06) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .header2-bar .header2-dropdown-content a:hover {
  background: rgba(99,226,255,0.12) !important;
  color: #ffffff !important;
}

/* Avatar (badge/menu) dans le thème nuit */
html.HM-theme-night-sea:not(.gn-night-mode) .HD-avatar-menu {
  background: rgba(10, 26, 46, 0.98);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 10px 40px rgba(0,0,0,0.7);
  backdrop-filter: blur(20px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .HD-avatar-menu a { color: #d5e3f5; }
html.HM-theme-night-sea:not(.gn-night-mode) .HD-avatar-menu a:hover { background: rgba(255,255,255,0.08); color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .HD-avatar-menu-logout { border-top-color: rgba(255,255,255,0.12); color: #ff8a8a !important; }
html.HM-theme-night-sea:not(.gn-night-mode) .HD-avatar-menu-logout:hover { background: rgba(255, 80, 80, 0.15) !important; color: #ffb0b0 !important; }
html.HM-theme-night-sea:not(.gn-night-mode) .HD-avatar-menu-theme { border-top-color: rgba(255,255,255,0.12); color: #d5e3f5; }
html.HM-theme-night-sea:not(.gn-night-mode) .HD-theme-btn {
  background: rgba(255,255,255,0.06) !important;
  color: #d5e3f5 !important;
  border-color: rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .HD-theme-btn:hover { background: rgba(255,255,255,0.12) !important; color: #ffffff !important; }

/* Footer global */
html.HM-theme-night-sea:not(.gn-night-mode) .GN-footer {
  background: #05111e !important;
  border-top: 1px solid rgba(120,200,255,0.08);
  color: #b5c7dd;
}
html.HM-theme-night-sea:not(.gn-night-mode) .GN-footer a { color: #d5e3f5 !important; }
html.HM-theme-night-sea:not(.gn-night-mode) .GN-footer a:hover { color: #ffffff !important; }

/* Cartouches / blocs génériques sur pages secondaires (profil, événements, etc.) */
html.HM-theme-night-sea:not(.gn-night-mode) .GN-block,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-card,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-kpi,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-cartouche {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  color: #d5e3f5;
  box-shadow: 0 6px 20px rgba(0,0,0,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .GN-block-title { color: #ffffff; }

/* Champ d'étoiles très discret */
body.HM-theme-night-sea:not(.gn-night-mode)::before {
  content: '';
  position: fixed;
  inset: 0;
  background-image:
    radial-gradient(1px 1px at 20% 30%, rgba(255,255,255,0.35), transparent 50%),
    radial-gradient(1px 1px at 70% 60%, rgba(255,255,255,0.28), transparent 50%),
    radial-gradient(1px 1px at 40% 80%, rgba(255,255,255,0.25), transparent 50%),
    radial-gradient(1px 1px at 85% 15%, rgba(255,255,255,0.30), transparent 50%),
    radial-gradient(1px 1px at 10% 90%, rgba(255,255,255,0.20), transparent 50%),
    radial-gradient(2px 2px at 55% 35%, rgba(120,220,255,0.4), transparent 50%),
    radial-gradient(1.5px 1.5px at 25% 55%, rgba(180,220,255,0.3), transparent 50%);
  background-size: 400px 400px, 600px 600px, 500px 500px, 700px 700px, 450px 450px, 800px 800px, 550px 550px;
  pointer-events: none;
  z-index: 0;
  opacity: 0.6;
}

/* HM container */
body.HM-theme-night-sea:not(.gn-night-mode) .HM-main {
  position: relative;
  z-index: 1;
}

/* Tuile météo+marée — même glass-morphism que les autres mega-tuiles */
body.HM-theme-night-sea:not(.gn-night-mode) .SM-tile--meteo.HM-meteo-keep,
html.HM-theme-night-sea:not(.gn-night-mode) .SM-tile--meteo.HM-meteo-keep {
  background: rgba(255,255,255,0.04) !important;
  backdrop-filter: blur(18px) saturate(1.3);
  -webkit-backdrop-filter: blur(18px) saturate(1.3);
  border: 1px solid rgba(255,255,255,0.10);
  box-shadow:
    0 8px 32px rgba(0,0,0,0.45),
    inset 0 1px 0 rgba(255,255,255,0.10),
    inset 0 0 60px rgba(100,180,255,0.03) !important;
  color: #e0eaf5;
}
/* Liseré néon gauche (cohérent avec les autres mega-tuiles night-sea) */
html.HM-theme-night-sea:not(.gn-night-mode) .SM-tile--meteo.HM-meteo-keep::before {
  content: '';
  position: absolute;
  top: 12px; bottom: 12px; left: 0;
  width: 3px;
  background: #63e2ff;
  box-shadow: 0 0 14px #63e2ff, 0 0 4px #63e2ff;
  border-radius: 0 3px 3px 0;
  opacity: 0.9;
  pointer-events: none;
}
html.HM-theme-night-sea:not(.gn-night-mode) .SM-tile--meteo.HM-meteo-keep { position: relative; }

/* Mega-tuiles : glass-morphism + liseré néon gauche */
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile {
  background: rgba(255,255,255,0.04) !important;
  backdrop-filter: blur(18px) saturate(1.3);
  -webkit-backdrop-filter: blur(18px) saturate(1.3);
  border: 1px solid rgba(255,255,255,0.10);
  box-shadow:
    0 8px 32px rgba(0,0,0,0.45),
    inset 0 1px 0 rgba(255,255,255,0.10),
    inset 0 0 60px rgba(100,180,255,0.03);
  color: #e0eaf5;
  position: relative;
  overflow: hidden;
}

/* Liseré néon gauche (accent par catégorie) */
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile::before {
  content: '';
  position: absolute;
  top: 12px; bottom: 12px; left: 0;
  width: 3px;
  background: var(--hm-accent, #63e2ff);
  box-shadow: 0 0 14px var(--hm-accent, #63e2ff), 0 0 4px var(--hm-accent, #63e2ff);
  border-radius: 0 3px 3px 0;
  opacity: 0.9;
}

/* Accent par tuile */
body.HM-theme-night-sea .HM-tile--bateau  { --hm-accent: #63e2ff; }  /* cyan glacé */
body.HM-theme-night-sea .HM-tile--marina  { --hm-accent: #ffcb6b; }  /* doré chaud */
body.HM-theme-night-sea .HM-tile--aide    { --hm-accent: #ff7a7a; }  /* corail */
body.HM-theme-night-sea .HM-tile--commu   { --hm-accent: #e879f9; }  /* magenta */
body.HM-theme-night-sea .HM-tile--ia      { --hm-accent: #60a5fa; }  /* bleu ciel */
body.HM-theme-night-sea .HM-tile--msg     { --hm-accent: #2dd4bf; }  /* turquoise */
body.HM-theme-night-sea .HM-tile--shortcut{ --hm-accent: #c084fc; }

body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile:hover {
  background: rgba(255,255,255,0.07) !important;
  border-color: rgba(255,255,255,0.20);
  box-shadow:
    0 12px 40px rgba(0,0,0,0.55),
    0 0 30px rgba(100,200,255,0.12),
    inset 0 1px 0 rgba(255,255,255,0.15);
  transform: translateY(-2px);
}

/* Typo tuiles — aérée, subtile */
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile-head h2 {
  color: #ffffff;
  font-weight: 500;
  letter-spacing: 0.3px;
  text-shadow: 0 0 12px var(--hm-accent, rgba(100,200,255,0.3));
}
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile-head { border-bottom-color: rgba(255,255,255,0.08); }
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile-summary { color: #b5c7dd; }
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile-foot    { color: #8ca3bf; text-shadow: none; }
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile--action h2 { color: #ffffff; text-shadow: 0 0 12px var(--hm-accent); }
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile--action .HM-action-sub { color: #8ca3bf; }

/* Tuile "Ajouter un raccourci" — discrète */
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile--add {
  background: transparent !important;
  border: 2px dashed rgba(255,255,255,0.15) !important;
  color: #b5c7dd !important;
}
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile--add h2,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile--add .HM-action-emoji,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile--add .HM-action-sub {
  color: #b5c7dd !important;
  text-shadow: none !important;
}
body.HM-theme-night-sea:not(.gn-night-mode) .HM-tile--add::before { display: none; }

/* Badges — néons lumineux */
body.HM-theme-night-sea:not(.gn-night-mode) .HM-badge--head,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-action-badge {
  background: rgba(255, 90, 90, 0.9);
  color: #fff;
  border: 1px solid rgba(255,255,255,0.2);
  box-shadow: 0 0 12px rgba(255, 90, 90, 0.6);
}
body.HM-theme-night-sea:not(.gn-night-mode) .HM-badge--soft {
  background: rgba(255,255,255,0.10);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.2);
}

/* ───────── OVERLAYS ───────── */
body.HM-theme-night-sea:not(.gn-night-mode) .HM-backdrop {
  background: rgba(0, 10, 20, 0.65);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sheet {
  background: rgba(10, 26, 46, 0.92);
  backdrop-filter: blur(30px) saturate(1.2);
  -webkit-backdrop-filter: blur(30px) saturate(1.2);
  border: 1px solid rgba(255,255,255,0.12);
  border-bottom: none;
  box-shadow: 0 -20px 60px rgba(0,0,0,0.7);
  color: #e0eaf5;
}
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sheet::before { background: rgba(255,255,255,0.3); }
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sheet-title { color: #ffffff; font-weight: 500; letter-spacing: 0.3px; }
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sheet-head { border-bottom-color: rgba(255,255,255,0.08); }
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sheet-close {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.15);
  color: #e0eaf5;
}
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sheet-close:hover { background: rgba(255,255,255,0.15); }

/* Sections picker */
body.HM-theme-night-sea:not(.gn-night-mode) .HM-picker-cat {
  color: #8ca3bf;
  letter-spacing: 1.2px;
}

/* Sous-tuiles : glass aussi, avec accent coloré par gradient d'origine */
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--bateau,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--logbook,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--checklist,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--tracemap,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--compass,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--hud,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--cap,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--amis,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--entraide,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--veilleur,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--events,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--actu,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--gazette,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--profil,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--soon {
  background: rgba(255,255,255,0.04) !important;
  backdrop-filter: blur(14px) saturate(1.2);
  -webkit-backdrop-filter: blur(14px) saturate(1.2);
  border: 1px solid rgba(255,255,255,0.10);
  box-shadow:
    0 6px 20px rgba(0,0,0,0.4),
    inset 0 1px 0 rgba(255,255,255,0.08);
}

/* Accent par sous-tuile (halo coloré discret) */
body.HM-theme-night-sea .HM-sub--bateau    { --hm-sub-accent: #94a3b8; }
body.HM-theme-night-sea .HM-sub--logbook   { --hm-sub-accent: #63b3ed; }
body.HM-theme-night-sea .HM-sub--checklist { --hm-sub-accent: #4ade80; }
body.HM-theme-night-sea .HM-sub--tracemap  { --hm-sub-accent: #63e2ff; }
body.HM-theme-night-sea .HM-sub--compass   { --hm-sub-accent: #a3b5cc; }
body.HM-theme-night-sea .HM-sub--hud       { --hm-sub-accent: #60a5fa; }
body.HM-theme-night-sea .HM-sub--cap       { --hm-sub-accent: #ffcb6b; }
body.HM-theme-night-sea .HM-sub--amis      { --hm-sub-accent: #f0a878; }
body.HM-theme-night-sea .HM-sub--entraide  { --hm-sub-accent: #ff7a7a; }
body.HM-theme-night-sea .HM-sub--veilleur  { --hm-sub-accent: #4ade80; }
body.HM-theme-night-sea .HM-sub--events    { --hm-sub-accent: #93c5fd; }
body.HM-theme-night-sea .HM-sub--actu      { --hm-sub-accent: #fbbf24; }
body.HM-theme-night-sea .HM-sub--gazette   { --hm-sub-accent: #7dd3fc; }
body.HM-theme-night-sea .HM-sub--profil    { --hm-sub-accent: #86efac; }
body.HM-theme-night-sea .HM-sub--soon      { --hm-sub-accent: #64748b; }

body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub:hover {
  background: rgba(255,255,255,0.08) !important;
  border-color: var(--hm-sub-accent);
  box-shadow:
    0 10px 26px rgba(0,0,0,0.55),
    0 0 24px color-mix(in srgb, var(--hm-sub-accent) 30%, transparent),
    inset 0 1px 0 rgba(255,255,255,0.15);
}

body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub-icon {
  filter: drop-shadow(0 0 10px var(--hm-sub-accent));
}
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub-label { color: #ffffff; text-shadow: 0 0 10px var(--hm-sub-accent); }
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub-sub   { color: #b5c7dd; text-shadow: none; }
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub-date {
  background: rgba(255,255,255,0.12);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub-avatar,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub-mini-avatar,
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub-mini-circle {
  border-color: rgba(255,255,255,0.25);
  box-shadow: 0 4px 14px rgba(0,0,0,0.5);
}

/* Image de fond des sous-tuiles (capitainerie, bateau, event) — ton bleu nuit */
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub-bg {
  opacity: 0.22;
  filter: saturate(0.8) contrast(1.1) brightness(0.7) hue-rotate(-5deg);
}
body.HM-theme-night-sea:not(.gn-night-mode) .HM-sub--has-bg::after {
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(5,17,30,0.7) 100%);
}

/* Bouton supprimer raccourci - cohérent dark */
body.HM-theme-night-sea:not(.gn-night-mode) .HM-shortcut-del {
  background: #ef4444;
  border-color: rgba(255,255,255,0.3);
  box-shadow: 0 0 14px rgba(239,68,68,0.5);
}


/* ═══════════════════════════════════════════════════════════════════
   THÈME : RADAR INGRESS  (HUD gaming, vert phosphore sur noir profond)
   Inspiration : Tron, Ingress, consoles de commandement militaires
   ═══════════════════════════════════════════════════════════════════ */

html.HM-theme-radar:not(.gn-night-mode),
html.HM-theme-radar:not(.gn-night-mode) body {
  background: #050505 !important;
  color: #9fffb0;
  position: relative;
  min-height: 100vh;
  font-family: 'Share Tech Mono', 'Courier New', monospace;
}

/* Grille géodésique animée en fond */
html.HM-theme-radar:not(.gn-night-mode) body::before {
  content: '';
  position: fixed;
  inset: 0;
  background-image:
    linear-gradient(rgba(0, 255, 136, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 255, 136, 0.04) 1px, transparent 1px),
    linear-gradient(rgba(0, 255, 136, 0.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 255, 136, 0.02) 1px, transparent 1px);
  background-size: 80px 80px, 80px 80px, 16px 16px, 16px 16px;
  background-position: 0 0, 0 0, 0 0, 0 0;
  pointer-events: none;
  z-index: 0;
  animation: radar-grid-drift 60s linear infinite;
}
@keyframes radar-grid-drift {
  from { background-position: 0 0, 0 0, 0 0, 0 0; }
  to   { background-position: 80px 80px, 80px 80px, 16px 16px, 16px 16px; }
}

/* Radar sweep (balayage circulaire vert très discret) */
html.HM-theme-radar:not(.gn-night-mode) body::after {
  content: '';
  position: fixed;
  top: 50%; left: 50%;
  width: 120vmax; height: 120vmax;
  transform: translate(-50%, -50%);
  background: conic-gradient(
    from 0deg,
    transparent 0deg,
    rgba(0, 255, 136, 0.08) 30deg,
    rgba(0, 255, 136, 0.02) 90deg,
    transparent 120deg,
    transparent 360deg
  );
  pointer-events: none;
  z-index: 0;
  animation: radar-sweep 8s linear infinite;
  opacity: 0.6;
}
@keyframes radar-sweep {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to   { transform: translate(-50%, -50%) rotate(360deg); }
}

html.HM-theme-radar:not(.gn-night-mode) .HM-main {
  position: relative;
  z-index: 1;
}

/* Header — bande noire + bordure néon vert */
html.HM-theme-radar:not(.gn-night-mode) .header2-bar {
  background: #000 !important;
  border-bottom: 1px solid #00ff88;
  box-shadow: 0 0 20px rgba(0, 255, 136, 0.25);
}
html.HM-theme-radar:not(.gn-night-mode) .header2-bar .header2-link,
html.HM-theme-radar:not(.gn-night-mode) .header2-bar .header2-dropbtn {
  color: #9fffb0;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-family: 'Orbitron', 'Share Tech Mono', monospace;
  font-weight: 500;
}
html.HM-theme-radar:not(.gn-night-mode) .header2-bar .header2-link:hover,
html.HM-theme-radar:not(.gn-night-mode) .header2-bar .header2-dropbtn:hover {
  color: #00ff88;
  text-shadow: 0 0 8px #00ff88;
}

/* Drawer mobile */
html.HM-theme-radar:not(.gn-night-mode) .header2-drawer {
  background: linear-gradient(180deg, #000 0%, #0a0a0a 100%) !important;
  color: #9fffb0;
  border-right: 1px solid rgba(0, 255, 136, 0.3);
  box-shadow: 4px 0 30px rgba(0, 255, 136, 0.2);
}
html.HM-theme-radar:not(.gn-night-mode) .header2-drawer a,
html.HM-theme-radar:not(.gn-night-mode) .header2-drawer .header2-dropbtn {
  color: #9fffb0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .header2-drawer a:hover { background: rgba(0, 255, 136, 0.08); color: #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .header2-drawer .header2-dropdown-content { background: rgba(0, 255, 136, 0.04); }

/* Avatar & menu */
html.HM-theme-radar:not(.gn-night-mode) .HD-avatar {
  background: linear-gradient(135deg, #002418, #004d30) !important;
  border-color: #00ff88;
  box-shadow: 0 0 12px rgba(0, 255, 136, 0.5);
}
html.HM-theme-radar:not(.gn-night-mode) .HD-avatar-initials { color: #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .HD-avatar-badge {
  background: #ff2cef;
  border-color: #000;
  box-shadow: 0 0 10px #ff2cef;
  animation: radar-pulse-alert 1.4s ease-in-out infinite;
}
@keyframes radar-pulse-alert {
  0%,100% { transform: scale(1); box-shadow: 0 0 10px #ff2cef; }
  50%     { transform: scale(1.15); box-shadow: 0 0 18px #ff2cef; }
}

html.HM-theme-radar:not(.gn-night-mode) .HD-avatar-menu {
  background: rgba(0, 0, 0, 0.97);
  border: 1px solid #00ff88;
  box-shadow: 0 10px 40px rgba(0, 255, 136, 0.35), inset 0 0 20px rgba(0, 255, 136, 0.05);
}
html.HM-theme-radar:not(.gn-night-mode) .HD-avatar-menu a {
  color: #9fffb0;
  font-family: 'Share Tech Mono', monospace;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 12px;
}
html.HM-theme-radar:not(.gn-night-mode) .HD-avatar-menu a:hover { background: rgba(0, 255, 136, 0.12); color: #00ff88; text-shadow: 0 0 6px #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .HD-avatar-menu-logout { border-top-color: rgba(0, 255, 136, 0.25); color: #ff2cef !important; }
html.HM-theme-radar:not(.gn-night-mode) .HD-avatar-menu-logout:hover { background: rgba(255, 44, 239, 0.15) !important; color: #ff6ae8 !important; text-shadow: 0 0 6px #ff2cef; }
html.HM-theme-radar:not(.gn-night-mode) .HD-avatar-menu-theme { border-top-color: rgba(0, 255, 136, 0.25); color: #9fffb0; }

/* Footer */
html.HM-theme-radar:not(.gn-night-mode) .GN-footer {
  background: #000 !important;
  border-top: 1px solid #00ff88;
  color: #9fffb0;
  font-family: 'Share Tech Mono', monospace;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  box-shadow: 0 0 20px rgba(0, 255, 136, 0.15);
}
html.HM-theme-radar:not(.gn-night-mode) .GN-footer a { color: #00ff88 !important; }
html.HM-theme-radar:not(.gn-night-mode) .GN-footer a:hover { color: #9fffb0 !important; text-shadow: 0 0 6px #00ff88; }

/* Tuile météo — même HUD que les autres mega-tuiles radar */
html.HM-theme-radar:not(.gn-night-mode) .SM-tile--meteo.HM-meteo-keep {
  background: rgba(0, 0, 0, 0.75) !important;
  border: 1px solid #00ff88 !important;
  color: #00ff88 !important;
  box-shadow: 0 0 16px rgba(0, 255, 136, 0.2), inset 0 0 30px rgba(0, 255, 136, 0.04) !important;
  clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
  font-family: 'Share Tech Mono', monospace;
  text-transform: uppercase;
  letter-spacing: 1px;
  position: relative;
}
/* Liseré néon gauche (cohérent avec les autres mega-tuiles radar) */
html.HM-theme-radar:not(.gn-night-mode) .SM-tile--meteo.HM-meteo-keep::before {
  content: '';
  position: absolute;
  top: 14px; bottom: 14px; left: 0;
  width: 4px;
  background: #00ff88;
  box-shadow: 0 0 14px #00ff88, 0 0 4px #00ff88;
  pointer-events: none;
}
html.HM-theme-radar:not(.gn-night-mode) .SM-tile--meteo .SM-tile-label { color: #00ff88; text-shadow: 0 0 6px #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .SM-meteo-day-name,
html.HM-theme-radar:not(.gn-night-mode) .SM-meteo-day-temps,
html.HM-theme-radar:not(.gn-night-mode) .SM-meteo-day-wind { color: #9fffb0; }

/* Mega-tuiles — HUD style */
html.HM-theme-radar:not(.gn-night-mode) .HM-tile {
  background: rgba(0, 0, 0, 0.75) !important;
  border: 1px solid var(--radar-accent, #00ff88);
  box-shadow:
    0 0 16px rgba(0, 255, 136, 0.2),
    inset 0 0 30px rgba(0, 255, 136, 0.04);
  color: #9fffb0;
  position: relative;
  overflow: hidden;
  clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}

/* Scan lines discrètes sur les tuiles */
html.HM-theme-radar:not(.gn-night-mode) .HM-tile::after {
  content: '';
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(
    0deg,
    transparent 0,
    transparent 2px,
    rgba(0, 255, 136, 0.025) 2px,
    rgba(0, 255, 136, 0.025) 3px
  );
  pointer-events: none;
  z-index: 1;
  mix-blend-mode: screen;
}

/* Chevron néon gauche */
html.HM-theme-radar:not(.gn-night-mode) .HM-tile::before {
  content: '';
  position: absolute;
  top: 14px; bottom: 14px; left: 0;
  width: 4px;
  background: var(--radar-accent, #00ff88);
  box-shadow: 0 0 14px var(--radar-accent, #00ff88), 0 0 4px var(--radar-accent, #00ff88);
  animation: radar-pulse-line 2.2s ease-in-out infinite;
}
@keyframes radar-pulse-line {
  0%,100% { opacity: 0.85; }
  50%     { opacity: 1; box-shadow: 0 0 20px var(--radar-accent, #00ff88), 0 0 6px var(--radar-accent, #00ff88); }
}

/* Accents par mega-tuile */
html.HM-theme-radar .HM-tile--bateau   { --radar-accent: #00ff88; }  /* vert phosphore */
html.HM-theme-radar .HM-tile--marina   { --radar-accent: #00eaff; }  /* cyan glacé */
html.HM-theme-radar .HM-tile--aide     { --radar-accent: #ff6b35; }  /* orange alerte */
html.HM-theme-radar .HM-tile--commu    { --radar-accent: #ff2cef; }  /* magenta */
html.HM-theme-radar .HM-tile--ia       { --radar-accent: #c084fc; }  /* violet scan */
html.HM-theme-radar .HM-tile--msg      { --radar-accent: #00ffcc; }  /* turquoise */
html.HM-theme-radar .HM-tile--shortcut { --radar-accent: #ffea00; }  /* jaune marqueur */

html.HM-theme-radar:not(.gn-night-mode) .HM-tile:hover {
  background: rgba(0, 255, 136, 0.06) !important;
  box-shadow:
    0 0 30px rgba(0, 255, 136, 0.4),
    inset 0 0 40px rgba(0, 255, 136, 0.08);
  transform: translateY(-2px);
}

/* Typo tuiles — HUD militaire */
html.HM-theme-radar:not(.gn-night-mode) .HM-tile-head h2,
html.HM-theme-radar:not(.gn-night-mode) .HM-tile--action h2 {
  color: var(--radar-accent, #00ff88);
  font-family: 'Orbitron', 'Share Tech Mono', monospace;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-shadow: 0 0 10px var(--radar-accent, #00ff88), 0 0 2px currentColor;
}
html.HM-theme-radar:not(.gn-night-mode) .HM-tile-head { border-bottom: 1px dashed rgba(0, 255, 136, 0.3); }
html.HM-theme-radar:not(.gn-night-mode) .HM-tile-summary { color: #9fffb0; font-family: 'Share Tech Mono', monospace; font-size: 0.82rem; letter-spacing: 0.3px; }
html.HM-theme-radar:not(.gn-night-mode) .HM-tile-foot {
  color: #5fa870;
  font-family: 'Share Tech Mono', monospace;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 0.7rem;
  font-style: normal;
  text-shadow: none;
}
html.HM-theme-radar:not(.gn-night-mode) .HM-tile--action .HM-action-sub {
  color: #5fa870;
  font-family: 'Share Tech Mono', monospace;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 0.7rem;
}

/* Tuile raccourci + bouton add */
html.HM-theme-radar:not(.gn-night-mode) .HM-tile--add {
  background: transparent !important;
  border: 1px dashed #00ff88 !important;
  color: #9fffb0 !important;
}
html.HM-theme-radar:not(.gn-night-mode) .HM-tile--add h2 { color: #00ff88 !important; text-shadow: 0 0 8px #00ff88 !important; }
html.HM-theme-radar:not(.gn-night-mode) .HM-tile--add::before { display: none; }
html.HM-theme-radar:not(.gn-night-mode) .HM-tile--add::after { display: none; }

/* Badges alertes */
html.HM-theme-radar:not(.gn-night-mode) .HM-badge--head,
html.HM-theme-radar:not(.gn-night-mode) .HM-action-badge {
  background: #ff2cef !important;
  color: #000 !important;
  border: 1px solid #000;
  box-shadow: 0 0 12px #ff2cef;
  font-family: 'Orbitron', monospace;
  font-weight: 700;
  letter-spacing: 1px;
  animation: radar-pulse-alert 1.4s ease-in-out infinite;
}
html.HM-theme-radar:not(.gn-night-mode) .HM-badge--soft {
  background: rgba(0, 255, 136, 0.15) !important;
  color: #00ff88 !important;
  border: 1px solid rgba(0, 255, 136, 0.4);
  font-family: 'Share Tech Mono', monospace;
}

/* ───── Overlays (bottom-sheet style console) ───── */
html.HM-theme-radar:not(.gn-night-mode) .HM-backdrop {
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(4px);
}
html.HM-theme-radar:not(.gn-night-mode) .HM-sheet {
  background: rgba(0, 0, 0, 0.96) !important;
  border: 1px solid #00ff88;
  border-bottom: none;
  box-shadow: 0 -20px 60px rgba(0, 255, 136, 0.35), inset 0 0 40px rgba(0, 255, 136, 0.03);
  color: #9fffb0;
  font-family: 'Share Tech Mono', monospace;
  border-radius: 0;
  clip-path: polygon(0 16px, 16px 0, calc(100% - 16px) 0, 100% 16px, 100% 100%, 0 100%);
}
html.HM-theme-radar:not(.gn-night-mode) .HM-sheet::before { background: #00ff88; box-shadow: 0 0 8px #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .HM-sheet-title {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 3px;
  text-shadow: 0 0 10px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .HM-sheet-head { border-bottom: 1px dashed rgba(0, 255, 136, 0.3); }
html.HM-theme-radar:not(.gn-night-mode) .HM-sheet-close {
  background: transparent;
  border: 1px solid #ff2cef;
  color: #ff2cef;
  border-radius: 0;
  box-shadow: 0 0 8px rgba(255, 44, 239, 0.4);
}
html.HM-theme-radar:not(.gn-night-mode) .HM-sheet-close:hover { background: rgba(255, 44, 239, 0.15); color: #ff6ae8; }

/* Picker catégories */
html.HM-theme-radar:not(.gn-night-mode) .HM-picker-cat {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  letter-spacing: 2px;
  text-shadow: 0 0 6px #00ff88;
}

/* Sous-tuiles — HUD mini */
html.HM-theme-radar:not(.gn-night-mode) .HM-sub,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--bateau,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--logbook,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--checklist,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--tracemap,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--compass,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--hud,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--cap,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--amis,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--entraide,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--veilleur,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--events,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--actu,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--gazette,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--profil,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--soon {
  background: rgba(0, 0, 0, 0.85) !important;
  border: 1px solid var(--radar-sub, #00ff88);
  box-shadow: 0 0 10px rgba(0, 255, 136, 0.15), inset 0 0 20px rgba(0, 255, 136, 0.03);
  border-radius: 0;
  clip-path: polygon(8px 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%, 0 8px);
}
html.HM-theme-radar .HM-sub--bateau    { --radar-sub: #9fffb0; }
html.HM-theme-radar .HM-sub--logbook   { --radar-sub: #63b3ed; }
html.HM-theme-radar .HM-sub--checklist { --radar-sub: #00ff88; }
html.HM-theme-radar .HM-sub--tracemap  { --radar-sub: #00eaff; }
html.HM-theme-radar .HM-sub--compass   { --radar-sub: #a3b5cc; }
html.HM-theme-radar .HM-sub--hud       { --radar-sub: #60a5fa; }
html.HM-theme-radar .HM-sub--cap       { --radar-sub: #ffea00; }
html.HM-theme-radar .HM-sub--amis      { --radar-sub: #ff6b35; }
html.HM-theme-radar .HM-sub--entraide  { --radar-sub: #ff6b35; }
html.HM-theme-radar .HM-sub--veilleur  { --radar-sub: #00ff88; }
html.HM-theme-radar .HM-sub--events    { --radar-sub: #93c5fd; }
html.HM-theme-radar .HM-sub--actu      { --radar-sub: #ffea00; }
html.HM-theme-radar .HM-sub--gazette   { --radar-sub: #7dd3fc; }
html.HM-theme-radar .HM-sub--profil    { --radar-sub: #86efac; }
html.HM-theme-radar .HM-sub--soon      { --radar-sub: #555; }

html.HM-theme-radar:not(.gn-night-mode) .HM-sub:hover {
  background: rgba(0, 255, 136, 0.08) !important;
  box-shadow: 0 0 24px var(--radar-sub, #00ff88), inset 0 0 30px rgba(0, 255, 136, 0.05);
  transform: translateY(-2px);
}
html.HM-theme-radar:not(.gn-night-mode) .HM-sub-icon {
  color: var(--radar-sub, #00ff88);
  filter: drop-shadow(0 0 12px var(--radar-sub, #00ff88));
}
html.HM-theme-radar:not(.gn-night-mode) .HM-sub-label {
  color: #ffffff;
  font-family: 'Orbitron', 'Share Tech Mono', monospace;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  text-shadow: 0 0 8px var(--radar-sub, #00ff88);
  font-size: 0.78rem;
}
html.HM-theme-radar:not(.gn-night-mode) .HM-sub-sub {
  color: #9fffb0;
  font-family: 'Share Tech Mono', monospace;
  font-size: 0.72rem;
  text-shadow: none;
}
html.HM-theme-radar:not(.gn-night-mode) .HM-sub-date {
  background: rgba(0, 255, 136, 0.15);
  color: #00ff88;
  border: 1px solid rgba(0, 255, 136, 0.4);
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .HM-sub-badge {
  background: #ff2cef;
  color: #000;
  border: 1px solid #000;
  box-shadow: 0 0 10px #ff2cef;
  border-radius: 0;
  font-family: 'Orbitron', monospace;
  animation: radar-pulse-alert 1.4s ease-in-out infinite;
}
html.HM-theme-radar:not(.gn-night-mode) .HM-sub-avatar,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub-mini-avatar,
html.HM-theme-radar:not(.gn-night-mode) .HM-sub-mini-circle {
  border: 2px solid #00ff88;
  box-shadow: 0 0 10px rgba(0, 255, 136, 0.4);
  filter: saturate(0.7) contrast(1.2) hue-rotate(-10deg);
}

/* Images de fond sous-tuiles — teinte verte radar */
html.HM-theme-radar:not(.gn-night-mode) .HM-sub-bg {
  opacity: 0.2;
  filter: grayscale(0.7) hue-rotate(70deg) saturate(1.8) brightness(0.6);
}
html.HM-theme-radar:not(.gn-night-mode) .HM-sub--has-bg::after {
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.85) 100%);
}

/* Shortcut supprime */
html.HM-theme-radar:not(.gn-night-mode) .HM-shortcut-del {
  background: #ff2cef;
  border: 1px solid #000;
  box-shadow: 0 0 14px #ff2cef;
  color: #000;
  font-family: 'Orbitron', monospace;
  font-weight: 700;
}

/* Cartouches génériques — fond noir radar */
html.HM-theme-radar:not(.gn-night-mode) .GN-block,
html.HM-theme-radar:not(.gn-night-mode) .GN-card,
html.HM-theme-radar:not(.gn-night-mode) .IN-kpi,
html.HM-theme-radar:not(.gn-night-mode) .GN-cartouche {
  background: rgba(0, 0, 0, 0.85);
  border: 1px solid rgba(0, 255, 136, 0.35);
  color: #9fffb0;
  box-shadow: 0 0 12px rgba(0, 255, 136, 0.1);
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .GN-block-title {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-shadow: 0 0 6px #00ff88;
}


/* ═══════════════════════════════════════════════════════════════════
   COMPOSANTS GLOBAUX — PRIORITÉ 1 (boutons, inputs, nav, chat, CE)
   Traités pour les 2 thèmes : night-sea + radar
   ═══════════════════════════════════════════════════════════════════ */

/* ─────── 1. BOUTONS (.GN-btn* et .btn*) ─────── */

/* NIGHT-SEA */
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn:link,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn:visited,
html.HM-theme-night-sea:not(.gn-night-mode) .btn {
  background: rgba(255,255,255,0.07);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
  backdrop-filter: blur(10px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn:hover,
html.HM-theme-night-sea:not(.gn-night-mode) .btn:hover {
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.3);
  color: #ffffff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--primary,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--primary:link,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--primary:visited,
html.HM-theme-night-sea:not(.gn-night-mode) .btn-primary {
  background: linear-gradient(135deg, #1e5578, #3498c4);
  color: #ffffff;
  border-color: rgba(120,200,255,0.3);
  box-shadow: 0 4px 16px rgba(52,152,196,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--primary:hover,
html.HM-theme-night-sea:not(.gn-night-mode) .btn-primary:hover {
  background: linear-gradient(135deg, #2a7aaa, #63b4dd);
  box-shadow: 0 6px 22px rgba(99,180,221,0.5);
}
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--secondary {
  background: rgba(99,226,255,0.12);
  color: #63e2ff;
  border-color: rgba(99,226,255,0.35);
}
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--secondary:hover { background: rgba(99,226,255,0.22); }
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--ghost { background: transparent; color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--ghost:hover { background: rgba(255,255,255,0.06); color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--danger,
html.HM-theme-night-sea:not(.gn-night-mode) .btn-danger {
  background: rgba(255,122,122,0.18);
  color: #ff7a7a;
  border-color: rgba(255,122,122,0.4);
}
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--danger:hover,
html.HM-theme-night-sea:not(.gn-night-mode) .btn-danger:hover { background: rgba(255,122,122,0.3); color: #ffb0b0; }
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--inscription {
  background: linear-gradient(135deg, #1a8a6e, #48d1a8);
  color: #ffffff;
  border-color: transparent;
}
html.HM-theme-night-sea:not(.gn-night-mode) .GN-btn--inscription:hover { background: linear-gradient(135deg, #2db88e, #5cdcaf); }

/* RADAR */
html.HM-theme-radar:not(.gn-night-mode) .GN-btn,
html.HM-theme-radar:not(.gn-night-mode) .GN-btn:link,
html.HM-theme-radar:not(.gn-night-mode) .GN-btn:visited,
html.HM-theme-radar:not(.gn-night-mode) .btn {
  background: transparent;
  color: #9fffb0;
  border: 1px solid #00ff88;
  border-radius: 0;
  font-family: 'Share Tech Mono', 'Courier New', monospace;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  box-shadow: inset 0 0 10px rgba(0,255,136,0.08);
}
html.HM-theme-radar:not(.gn-night-mode) .GN-btn:hover,
html.HM-theme-radar:not(.gn-night-mode) .btn:hover {
  background: rgba(0,255,136,0.12);
  color: #00ff88;
  box-shadow: 0 0 14px rgba(0,255,136,0.4), inset 0 0 10px rgba(0,255,136,0.1);
  text-shadow: 0 0 8px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .GN-btn--primary,
html.HM-theme-radar:not(.gn-night-mode) .btn-primary {
  background: rgba(0,255,136,0.18);
  color: #00ff88;
  border-color: #00ff88;
  box-shadow: 0 0 16px rgba(0,255,136,0.35);
  text-shadow: 0 0 6px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .GN-btn--primary:hover {
  background: rgba(0,255,136,0.32);
  box-shadow: 0 0 22px rgba(0,255,136,0.6);
}
html.HM-theme-radar:not(.gn-night-mode) .GN-btn--secondary {
  border-color: #00eaff;
  color: #00eaff;
  text-shadow: 0 0 6px #00eaff;
}
html.HM-theme-radar:not(.gn-night-mode) .GN-btn--secondary:hover { background: rgba(0,234,255,0.12); color: #00eaff; box-shadow: 0 0 14px rgba(0,234,255,0.4); }
html.HM-theme-radar:not(.gn-night-mode) .GN-btn--ghost { background: transparent; color: #5fa870; border-color: rgba(0,255,136,0.25); }
html.HM-theme-radar:not(.gn-night-mode) .GN-btn--danger,
html.HM-theme-radar:not(.gn-night-mode) .btn-danger {
  background: transparent;
  color: #ff2cef;
  border-color: #ff2cef;
  text-shadow: 0 0 6px #ff2cef;
  box-shadow: 0 0 12px rgba(255,44,239,0.3);
}
html.HM-theme-radar:not(.gn-night-mode) .GN-btn--danger:hover { background: rgba(255,44,239,0.15); box-shadow: 0 0 18px rgba(255,44,239,0.5); }
html.HM-theme-radar:not(.gn-night-mode) .GN-btn--inscription {
  background: rgba(0,255,136,0.2);
  border-color: #00ff88;
  color: #00ff88;
  text-shadow: 0 0 6px #00ff88;
}


/* ─────── 2. INPUTS / FORM globaux ─────── */

/* NIGHT-SEA */
html.HM-theme-night-sea:not(.gn-night-mode) input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="file"]),
html.HM-theme-night-sea:not(.gn-night-mode) textarea,
html.HM-theme-night-sea:not(.gn-night-mode) select {
  background: rgba(255,255,255,0.06);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
  color-scheme: dark;
}
html.HM-theme-night-sea:not(.gn-night-mode) input:focus,
html.HM-theme-night-sea:not(.gn-night-mode) textarea:focus,
html.HM-theme-night-sea:not(.gn-night-mode) select:focus {
  border-color: #63e2ff;
  box-shadow: 0 0 0 3px rgba(99,226,255,0.18);
  outline: none;
}
html.HM-theme-night-sea:not(.gn-night-mode) input::placeholder,
html.HM-theme-night-sea:not(.gn-night-mode) textarea::placeholder { color: #6b8aa8; }

/* RADAR */
html.HM-theme-radar:not(.gn-night-mode) input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="file"]),
html.HM-theme-radar:not(.gn-night-mode) textarea,
html.HM-theme-radar:not(.gn-night-mode) select {
  background: #000;
  color: #9fffb0;
  border: 1px solid rgba(0,255,136,0.4);
  border-radius: 0;
  font-family: 'Share Tech Mono', 'Courier New', monospace;
  color-scheme: dark;
}
html.HM-theme-radar:not(.gn-night-mode) input:focus,
html.HM-theme-radar:not(.gn-night-mode) textarea:focus,
html.HM-theme-radar:not(.gn-night-mode) select:focus {
  border-color: #00ff88;
  box-shadow: 0 0 0 2px rgba(0,255,136,0.3), 0 0 12px rgba(0,255,136,0.2);
  outline: none;
}
html.HM-theme-radar:not(.gn-night-mode) input::placeholder,
html.HM-theme-radar:not(.gn-night-mode) textarea::placeholder { color: #4a7a55; }


/* ─────── 3. BOTTOM NAV Capacitor (.GM-bottomNav*) ─────── */

/* NIGHT-SEA */
html.HM-theme-night-sea:not(.gn-night-mode) .GM-bottomNavShell,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-bottomNav {
  background: rgba(10,26,46,0.92) !important;
  backdrop-filter: blur(20px) saturate(1.3);
  -webkit-backdrop-filter: blur(20px) saturate(1.3);
  border-top: 1px solid rgba(255,255,255,0.10);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .GM-bottomNav-btn {
  background: transparent;
  color: #b5c7dd;
}
html.HM-theme-night-sea:not(.gn-night-mode) .GM-bottomNav-btn.is-active,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-bottomNav-btn:hover {
  background: rgba(99,226,255,0.12);
  color: #63e2ff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .GM-bottomNav-btnIcon,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-bottomNav-btnLabel { color: inherit; }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-bottomNav-imgIcon { filter: brightness(0.9) saturate(0.8); }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-ctxSheet {
  background: rgba(10,26,46,0.96);
  backdrop-filter: blur(20px);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.12);
}
html.HM-theme-night-sea:not(.gn-night-mode) .GM-ctxSheetHead { background: rgba(255,255,255,0.05); border-bottom: 1px solid rgba(255,255,255,0.10); }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-ctxTitle { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-ctxClose { background: rgba(255,255,255,0.08); color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-ctxClose:active { background: rgba(255,255,255,0.16); }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-ctxTile {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.10);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .GM-ctxTileIcon { background: rgba(99,226,255,0.15); }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-ctxTileLabel { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-ctxTileSub { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-iaBtn {
  background: linear-gradient(135deg, #1e5578, #3498c4);
  color: #ffffff;
  border-color: rgba(120,200,255,0.3);
  box-shadow: 0 4px 16px rgba(52,152,196,0.5);
}
html.HM-theme-night-sea:not(.gn-night-mode) .GM-iaBtn-icon { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-ctxOverlay { background: rgba(0,10,20,0.65); backdrop-filter: blur(6px); }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-joinHint-inner {
  background: rgba(10,26,46,0.95);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}

/* RADAR */
html.HM-theme-radar:not(.gn-night-mode) .GM-bottomNavShell,
html.HM-theme-radar:not(.gn-night-mode) .GM-bottomNav {
  background: #000 !important;
  border-top: 1px solid #00ff88;
  box-shadow: 0 -2px 20px rgba(0,255,136,0.2);
  color: #9fffb0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .GM-bottomNav-btn {
  background: transparent;
  color: #9fffb0;
  text-transform: uppercase;
  letter-spacing: 0.8px;
}
html.HM-theme-radar:not(.gn-night-mode) .GM-bottomNav-btn.is-active,
html.HM-theme-radar:not(.gn-night-mode) .GM-bottomNav-btn:hover {
  background: rgba(0,255,136,0.12);
  color: #00ff88;
  text-shadow: 0 0 6px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .GM-bottomNav-imgIcon { filter: brightness(0.8) sepia(0.3) hue-rotate(90deg) saturate(2); }
html.HM-theme-radar:not(.gn-night-mode) .GM-ctxSheet {
  background: #000;
  border: 1px solid #00ff88;
  color: #9fffb0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .GM-ctxSheetHead { background: rgba(0,255,136,0.08); border-bottom: 1px dashed rgba(0,255,136,0.3); }
html.HM-theme-radar:not(.gn-night-mode) .GM-ctxTitle { color: #00ff88; font-family: 'Orbitron', monospace; text-transform: uppercase; letter-spacing: 2px; text-shadow: 0 0 6px #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .GM-ctxClose { background: transparent; color: #ff2cef; border: 1px solid #ff2cef; }
html.HM-theme-radar:not(.gn-night-mode) .GM-ctxTile {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.4);
  color: #9fffb0;
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .GM-ctxTileIcon { background: rgba(0,255,136,0.18); }
html.HM-theme-radar:not(.gn-night-mode) .GM-ctxTileLabel { color: #00ff88; text-transform: uppercase; letter-spacing: 1px; }
html.HM-theme-radar:not(.gn-night-mode) .GM-ctxTileSub { color: #5fa870; font-size: 0.7rem; }
html.HM-theme-radar:not(.gn-night-mode) .GM-iaBtn {
  background: #000;
  color: #00ff88;
  border: 1px solid #00ff88;
  box-shadow: 0 0 18px rgba(0,255,136,0.5);
}
html.HM-theme-radar:not(.gn-night-mode) .GM-iaBtn-icon { color: #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .GM-ctxOverlay { background: rgba(0,0,0,0.85); }
html.HM-theme-radar:not(.gn-night-mode) .GM-joinHint-inner {
  background: #000;
  color: #9fffb0;
  border: 1px solid #00ff88;
  font-family: 'Share Tech Mono', monospace;
}


/* ─────── 4. CHAT IA — #AIChatRoot + .ai-bubble (styles inline footer.php) ─────── */

/* NIGHT-SEA — on force !important pour battre les styles inline */
html.HM-theme-night-sea:not(.gn-night-mode) #AIChatRoot > div[style] {
  background: rgba(10,26,46,0.96) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) #AIChatRoot > div[style] > div:first-child {
  background: rgba(255,255,255,0.05) !important;
  border-bottom: 1px solid rgba(255,255,255,0.10) !important;
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) #AIChatRoot [data-ai-out] { background: transparent !important; }
html.HM-theme-night-sea:not(.gn-night-mode) #AIChatRoot form {
  border-top: 1px solid rgba(255,255,255,0.10) !important;
  background: transparent !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) #AIChatRoot textarea {
  background: rgba(255,255,255,0.06) !important;
  color: #e0eaf5 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .ai-bubble.ai-user {
  background: rgba(99,226,255,0.15) !important;
  border: 1px solid rgba(99,226,255,0.3) !important;
  color: #e0eaf5 !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .ai-bubble.ai-bot {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  color: #e0eaf5 !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .ai-bubble.ai-err {
  background: rgba(255,122,122,0.12) !important;
  color: #ff7a7a !important;
  border: 1px solid rgba(255,122,122,0.3) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) #AIChatRoot button[data-ai-close] {
  background: rgba(255,255,255,0.08) !important;
  color: #e0eaf5 !important;
}

/* RADAR */
html.HM-theme-radar:not(.gn-night-mode) #AIChatRoot > div[style] {
  background: #000 !important;
  border: 1px solid #00ff88 !important;
  color: #9fffb0;
  border-radius: 0 !important;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) #AIChatRoot > div[style] > div:first-child {
  background: rgba(0,255,136,0.08) !important;
  border-bottom: 1px dashed rgba(0,255,136,0.3) !important;
  color: #00ff88 !important;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}
html.HM-theme-radar:not(.gn-night-mode) #AIChatRoot [data-ai-out] { background: transparent !important; }
html.HM-theme-radar:not(.gn-night-mode) #AIChatRoot form { border-top: 1px dashed rgba(0,255,136,0.25) !important; background: transparent !important; }
html.HM-theme-radar:not(.gn-night-mode) #AIChatRoot textarea {
  background: #000 !important;
  color: #9fffb0 !important;
  border: 1px solid rgba(0,255,136,0.4) !important;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .ai-bubble.ai-user {
  background: rgba(0,234,255,0.12) !important;
  border: 1px solid rgba(0,234,255,0.35) !important;
  color: #00eaff !important;
  border-radius: 0 !important;
}
html.HM-theme-radar:not(.gn-night-mode) .ai-bubble.ai-bot {
  background: rgba(0,255,136,0.1) !important;
  border: 1px solid rgba(0,255,136,0.3) !important;
  color: #9fffb0 !important;
  border-radius: 0 !important;
}
html.HM-theme-radar:not(.gn-night-mode) .ai-bubble.ai-err {
  background: rgba(255,44,239,0.12) !important;
  color: #ff2cef !important;
  border: 1px solid rgba(255,44,239,0.35) !important;
}
html.HM-theme-radar:not(.gn-night-mode) #AIChatRoot button[data-ai-close] {
  background: transparent !important;
  color: #ff2cef !important;
  border: 1px solid #ff2cef !important;
}
html.HM-theme-radar:not(.gn-night-mode) #AIChatRoot button[data-ai-send] {
  background: rgba(0,255,136,0.18) !important;
  color: #00ff88 !important;
  border: 1px solid #00ff88 !important;
  border-radius: 0 !important;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
}


/* ─────── 5. CHAT MESSAGES (.CH-*) ─────── */

/* NIGHT-SEA */
html.HM-theme-night-sea:not(.gn-night-mode) .CH-panel,
html.HM-theme-night-sea:not(.gn-night-mode) .CH-header,
html.HM-theme-night-sea:not(.gn-night-mode) .CH-list,
html.HM-theme-night-sea:not(.gn-night-mode) .CH-list-empty,
html.HM-theme-night-sea:not(.gn-night-mode) .CH-conversation,
html.HM-theme-night-sea:not(.gn-night-mode) .CH-conv-header,
html.HM-theme-night-sea:not(.gn-night-mode) .CH-conv-name,
html.HM-theme-night-sea:not(.gn-night-mode) .CH-conv-status {
  background: rgba(10,26,46,0.96);
  color: #e0eaf5;
  border-color: rgba(255,255,255,0.10);
  backdrop-filter: blur(15px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CH-msg { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .CH-msg--me,
html.HM-theme-night-sea:not(.gn-night-mode) .CH-bubble--me {
  background: linear-gradient(135deg, rgba(45,212,191,0.25), rgba(99,226,255,0.18));
  color: #ffffff;
  border: 1px solid rgba(45,212,191,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CH-msg--them,
html.HM-theme-night-sea:not(.gn-night-mode) .CH-bubble--them {
  background: rgba(255,255,255,0.06);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.10);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CH-bubble-name { background: rgba(255,255,255,0.08); color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .CH-back { background: rgba(255,255,255,0.08); color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .CH-back:hover { background: rgba(255,255,255,0.15); }
html.HM-theme-night-sea:not(.gn-night-mode) .CH-float-badge,
html.HM-theme-night-sea:not(.gn-night-mode) .CH-bubble-unread { background: #ef4444; color: #ffffff; }

/* RADAR */
html.HM-theme-radar:not(.gn-night-mode) .CH-panel,
html.HM-theme-radar:not(.gn-night-mode) .CH-header,
html.HM-theme-radar:not(.gn-night-mode) .CH-list,
html.HM-theme-radar:not(.gn-night-mode) .CH-list-empty,
html.HM-theme-radar:not(.gn-night-mode) .CH-conversation,
html.HM-theme-radar:not(.gn-night-mode) .CH-conv-header,
html.HM-theme-radar:not(.gn-night-mode) .CH-conv-name,
html.HM-theme-radar:not(.gn-night-mode) .CH-conv-status {
  background: #000;
  color: #9fffb0;
  border-color: rgba(0,255,136,0.3);
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .CH-conv-name { color: #00ff88; text-transform: uppercase; letter-spacing: 1px; }
html.HM-theme-radar:not(.gn-night-mode) .CH-msg { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .CH-msg--me,
html.HM-theme-radar:not(.gn-night-mode) .CH-bubble--me {
  background: rgba(0,255,136,0.15);
  color: #00ff88;
  border: 1px solid rgba(0,255,136,0.4);
  border-radius: 2px;
}
html.HM-theme-radar:not(.gn-night-mode) .CH-msg--them,
html.HM-theme-radar:not(.gn-night-mode) .CH-bubble--them {
  background: rgba(255,255,255,0.03);
  color: #9fffb0;
  border: 1px solid rgba(0,255,136,0.2);
  border-radius: 2px;
}
html.HM-theme-radar:not(.gn-night-mode) .CH-bubble-name { background: rgba(0,255,136,0.1); color: #00ff88; text-transform: uppercase; letter-spacing: 1px; }
html.HM-theme-radar:not(.gn-night-mode) .CH-back { background: transparent; color: #00ff88; border: 1px solid rgba(0,255,136,0.3); }
html.HM-theme-radar:not(.gn-night-mode) .CH-back:hover { background: rgba(0,255,136,0.1); }
html.HM-theme-radar:not(.gn-night-mode) .CH-float-badge,
html.HM-theme-radar:not(.gn-night-mode) .CH-bubble-unread { background: #ff2cef; color: #000; box-shadow: 0 0 10px #ff2cef; }


/* ─────── 6. CARTOUCHE ÉVÉNEMENT (.CE .cartouche-*) ─────── */

/* NIGHT-SEA */
html.HM-theme-night-sea:not(.gn-night-mode) .CE .cartouche-evenement {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(10px);
  color: #e0eaf5;
  box-shadow: 0 6px 20px rgba(0,0,0,0.25);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CE .cartouche-photo { background: rgba(0,0,0,0.3); }
html.HM-theme-night-sea:not(.gn-night-mode) .CE .cartouche-infos .titre { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE .meta { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE .meta .chip { background: rgba(255,255,255,0.08); color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE .desc { color: #cad9ec; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE .distance { color: #8ca3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE .cartouche-organisateur { border-color: rgba(255,255,255,0.08); }
html.HM-theme-night-sea:not(.gn-night-mode) .CE .cartouche-inscrit { background: rgba(45,212,191,0.25); color: #86efac; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE .cartouche-ami { background: rgba(99,226,255,0.18); color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE .cartouche-ami-more { background: rgba(255,255,255,0.08); color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE .CE-creator-badge { background: rgba(255,203,107,0.2); color: #ffcb6b; }

/* RADAR */
html.HM-theme-radar:not(.gn-night-mode) .CE .cartouche-evenement {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.4);
  color: #9fffb0;
  font-family: 'Share Tech Mono', monospace;
  border-radius: 0;
  box-shadow: 0 0 14px rgba(0,255,136,0.15);
  clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
}
html.HM-theme-radar:not(.gn-night-mode) .CE .cartouche-photo { background: #000; }
html.HM-theme-radar:not(.gn-night-mode) .CE .cartouche-infos .titre {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  text-shadow: 0 0 8px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .CE .meta { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .CE .meta .chip { background: rgba(0,255,136,0.12); color: #00ff88; border-radius: 0; border: 1px solid rgba(0,255,136,0.3); }
html.HM-theme-radar:not(.gn-night-mode) .CE .desc { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .CE .distance { color: #5fa870; }
html.HM-theme-radar:not(.gn-night-mode) .CE .cartouche-organisateur { border-color: rgba(0,255,136,0.2); }
html.HM-theme-radar:not(.gn-night-mode) .CE .cartouche-inscrit { background: rgba(0,255,136,0.2); color: #00ff88; border: 1px solid #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .CE .cartouche-ami { background: rgba(0,234,255,0.2); color: #00eaff; border: 1px solid #00eaff; }
html.HM-theme-radar:not(.gn-night-mode) .CE .cartouche-ami-more { background: rgba(255,255,255,0.05); color: #9fffb0; border: 1px solid rgba(0,255,136,0.25); }
html.HM-theme-radar:not(.gn-night-mode) .CE .CE-creator-badge { background: rgba(255,234,0,0.2); color: #ffea00; border: 1px solid #ffea00; }


/* ─────── 7. AIDE PONCTUELLE (.AH-*) — page "Coup de main" ─────── */

/* NIGHT-SEA */
html.HM-theme-night-sea:not(.gn-night-mode) .AH-page-title,
html.HM-theme-night-sea:not(.gn-night-mode) .AH-section-title,
html.HM-theme-night-sea:not(.gn-night-mode) .AH-form-title,
html.HM-theme-night-sea:not(.gn-night-mode) .AH-hero-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-hero {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(10px);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-hero-chip { background: rgba(255,255,255,0.10); color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-hero-subtitle { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-distress-btn {
  background: linear-gradient(135deg, #ef4444, #f87171);
  color: #fff;
  box-shadow: 0 4px 20px rgba(239,68,68,0.4);
}

html.HM-theme-night-sea:not(.gn-night-mode) .AH-card {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(10px);
  color: #e0eaf5;
  box-shadow: 0 6px 20px rgba(0,0,0,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-card--immediat {
  background: rgba(239,68,68,0.1) !important;
  border-left: 4px solid #ef4444;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-card-desc { color: #cad9ec; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-card-meta { color: #8ca3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-duration { color: #b5c7dd; }

html.HM-theme-night-sea:not(.gn-night-mode) .AH-form {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(10px);
  color: #e0eaf5;
  box-shadow: 0 6px 20px rgba(0,0,0,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-label { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-input,
html.HM-theme-night-sea:not(.gn-night-mode) .AH-textarea {
  background: rgba(255,255,255,0.06) !important;
  color: #e0eaf5 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-input:focus,
html.HM-theme-night-sea:not(.gn-night-mode) .AH-textarea:focus {
  border-color: #63e2ff !important;
  background: rgba(255,255,255,0.10) !important;
  box-shadow: 0 0 0 3px rgba(99,226,255,0.18);
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-radio-card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.15);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-radio-card--immediat:has(input:checked) {
  background: rgba(239,68,68,0.18) !important;
  border-color: #ef4444 !important;
  color: #ff8a8a !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-radio-card--heure:has(input:checked) {
  background: rgba(243,156,18,0.2) !important;
  border-color: #f39c12 !important;
  color: #ffc977 !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-radio-card:has(input:checked) {
  background: rgba(99,226,255,0.18);
  border-color: #63e2ff;
  color: #63e2ff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-boat-auto {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  color: #e0eaf5;
}

html.HM-theme-night-sea:not(.gn-night-mode) .AH-submit {
  background: linear-gradient(135deg, #1e5578, #3498c4);
  color: #fff;
  box-shadow: 0 4px 16px rgba(52,152,196,0.4);
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-submit--ghost {
  background: rgba(255,255,255,0.07) !important;
  color: #e0eaf5 !important;
  border: 1px solid rgba(255,255,255,0.15);
  box-shadow: none;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-submit--success { background: linear-gradient(135deg, #1a8a6e, #48d1a8) !important; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-submit--back { background: rgba(255,255,255,0.08) !important; color: #e0eaf5 !important; }

html.HM-theme-night-sea:not(.gn-night-mode) .AH-detail-card {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(10px);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-detail-field-label { color: #8ca3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-detail-field-value { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-detail-desc { color: #cad9ec; }

html.HM-theme-night-sea:not(.gn-night-mode) .AH-alert--success { background: rgba(34,197,94,0.18) !important; color: #86efac !important; border: 1px solid rgba(34,197,94,0.35); }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-alert--error { background: rgba(239,68,68,0.18) !important; color: #ff8a8a !important; border: 1px solid rgba(239,68,68,0.35); }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-alert--info { background: rgba(99,226,255,0.15) !important; color: #63e2ff !important; border: 1px solid rgba(99,226,255,0.35); }

html.HM-theme-night-sea:not(.gn-night-mode) .AH-action-section { border-top-color: rgba(255,255,255,0.10); }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-cu-card {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-cu-card--helper { background: rgba(34,197,94,0.12) !important; border-color: rgba(34,197,94,0.3) !important; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-person-role { color: #8ca3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-person-name { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-objet-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AH-objet-cover { background: rgba(0,0,0,0.3); }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-objet-cover--empty { background: rgba(255,255,255,0.05); color: #8ca3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-objet-label { color: #8ca3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-objet-name { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-top-cell-label { color: #8ca3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .AH-top-cell-label--helper { color: #86efac; }

/* RADAR */
html.HM-theme-radar:not(.gn-night-mode) .AH-page-title,
html.HM-theme-radar:not(.gn-night-mode) .AH-section-title,
html.HM-theme-radar:not(.gn-night-mode) .AH-form-title,
html.HM-theme-radar:not(.gn-night-mode) .AH-hero-title {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-shadow: 0 0 8px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-hero {
  background: rgba(0,0,0,0.85);
  border: 1px solid #00ff88;
  color: #9fffb0;
  border-radius: 0;
  box-shadow: 0 0 18px rgba(0,255,136,0.25);
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-hero-chip { background: rgba(0,255,136,0.15); color: #00ff88; border: 1px solid rgba(0,255,136,0.35); border-radius: 0; }
html.HM-theme-radar:not(.gn-night-mode) .AH-hero-subtitle { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .AH-distress-btn {
  background: #ff2cef;
  color: #000;
  box-shadow: 0 0 20px #ff2cef;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  border-radius: 0;
  animation: radar-pulse-alert 1.4s ease-in-out infinite;
}

html.HM-theme-radar:not(.gn-night-mode) .AH-card {
  background: rgba(0,0,0,0.85) !important;
  border: 1px solid rgba(0,255,136,0.4);
  color: #9fffb0;
  border-radius: 0;
  box-shadow: 0 0 12px rgba(0,255,136,0.15);
  clip-path: polygon(8px 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%, 0 8px);
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-card--immediat {
  background: rgba(255,44,239,0.08) !important;
  border-left: 4px solid #ff2cef;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-card-desc { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .AH-card-meta { color: #5fa870; }
html.HM-theme-radar:not(.gn-night-mode) .AH-duration { color: #9fffb0; }

html.HM-theme-radar:not(.gn-night-mode) .AH-form {
  background: rgba(0,0,0,0.88) !important;
  border: 1px solid #00ff88;
  color: #9fffb0;
  border-radius: 0;
  box-shadow: 0 0 18px rgba(0,255,136,0.2);
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-label { color: #00ff88; text-transform: uppercase; letter-spacing: 1px; font-family: 'Share Tech Mono', monospace; }
html.HM-theme-radar:not(.gn-night-mode) .AH-input,
html.HM-theme-radar:not(.gn-night-mode) .AH-textarea {
  background: #000 !important;
  color: #9fffb0 !important;
  border: 1px solid rgba(0,255,136,0.4) !important;
  border-radius: 0 !important;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-input:focus,
html.HM-theme-radar:not(.gn-night-mode) .AH-textarea:focus {
  border-color: #00ff88 !important;
  background: #000 !important;
  box-shadow: 0 0 0 2px rgba(0,255,136,0.3), 0 0 12px rgba(0,255,136,0.3) !important;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-radio-card {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.4);
  color: #9fffb0;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
  text-transform: uppercase;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-radio-card--immediat:has(input:checked) {
  background: rgba(255,44,239,0.18) !important;
  border-color: #ff2cef !important;
  color: #ff2cef !important;
  text-shadow: 0 0 6px #ff2cef;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-radio-card--heure:has(input:checked) {
  background: rgba(255,234,0,0.15) !important;
  border-color: #ffea00 !important;
  color: #ffea00 !important;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-radio-card:has(input:checked) {
  background: rgba(0,255,136,0.15);
  border-color: #00ff88;
  color: #00ff88;
  text-shadow: 0 0 6px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-boat-auto {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.35);
  color: #9fffb0;
  border-radius: 0;
}

html.HM-theme-radar:not(.gn-night-mode) .AH-submit {
  background: rgba(0,255,136,0.2);
  color: #00ff88;
  border: 1px solid #00ff88;
  border-radius: 0;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  text-shadow: 0 0 6px #00ff88;
  box-shadow: 0 0 16px rgba(0,255,136,0.4);
}
html.HM-theme-radar:not(.gn-night-mode) .AH-submit:hover { background: rgba(0,255,136,0.35); box-shadow: 0 0 22px rgba(0,255,136,0.6); }
html.HM-theme-radar:not(.gn-night-mode) .AH-submit--ghost {
  background: transparent !important;
  color: #9fffb0 !important;
  border: 1px solid rgba(0,255,136,0.4);
  box-shadow: none;
  text-shadow: none;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-submit--success { background: rgba(0,255,136,0.25) !important; border-color: #00ff88 !important; }
html.HM-theme-radar:not(.gn-night-mode) .AH-submit--back { background: transparent !important; color: #9fffb0 !important; border: 1px solid rgba(0,255,136,0.3); }

html.HM-theme-radar:not(.gn-night-mode) .AH-detail-card {
  background: rgba(0,0,0,0.85) !important;
  border: 1px solid rgba(0,255,136,0.4);
  color: #9fffb0;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-detail-field-label { color: #5fa870; text-transform: uppercase; letter-spacing: 1px; }
html.HM-theme-radar:not(.gn-night-mode) .AH-detail-field-value { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .AH-detail-desc { color: #9fffb0; }

html.HM-theme-radar:not(.gn-night-mode) .AH-alert--success { background: rgba(0,255,136,0.15) !important; color: #00ff88 !important; border: 1px solid #00ff88 !important; border-radius: 0 !important; }
html.HM-theme-radar:not(.gn-night-mode) .AH-alert--error { background: rgba(255,44,239,0.15) !important; color: #ff2cef !important; border: 1px solid #ff2cef !important; border-radius: 0 !important; }
html.HM-theme-radar:not(.gn-night-mode) .AH-alert--info { background: rgba(0,234,255,0.12) !important; color: #00eaff !important; border: 1px solid #00eaff !important; border-radius: 0 !important; }

html.HM-theme-radar:not(.gn-night-mode) .AH-action-section { border-top: 1px dashed rgba(0,255,136,0.3); }
html.HM-theme-radar:not(.gn-night-mode) .AH-cu-card {
  background: rgba(0,0,0,0.85) !important;
  border: 1px solid rgba(0,255,136,0.4) !important;
  color: #9fffb0;
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-cu-card--helper { background: rgba(0,255,136,0.1) !important; border-color: #00ff88 !important; }
html.HM-theme-radar:not(.gn-night-mode) .AH-person-role { color: #5fa870; text-transform: uppercase; }
html.HM-theme-radar:not(.gn-night-mode) .AH-person-name { color: #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .AH-objet-card {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.3);
  color: #9fffb0;
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .AH-objet-cover { background: #000; }
html.HM-theme-radar:not(.gn-night-mode) .AH-objet-cover--empty { background: rgba(0,255,136,0.05); color: #5fa870; }
html.HM-theme-radar:not(.gn-night-mode) .AH-objet-label { color: #5fa870; text-transform: uppercase; }
html.HM-theme-radar:not(.gn-night-mode) .AH-objet-name { color: #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .AH-top-cell-label { color: #5fa870; text-transform: uppercase; }
html.HM-theme-radar:not(.gn-night-mode) .AH-top-cell-label--helper { color: #00ff88; }


/* ─────── 8. MEMBRES DU PORT (.MB-*) ─────── */

/* NIGHT-SEA */
html.HM-theme-night-sea:not(.gn-night-mode) .MB-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .MB-sub { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .MB-count-badge {
  background: rgba(255,255,255,0.08);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .MB-count-badge strong { color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .MB-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(10px);
  color: #e0eaf5;
  box-shadow: 0 6px 20px rgba(0,0,0,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .MB-card:hover {
  background: rgba(255,255,255,0.08);
  border-color: rgba(99,226,255,0.35);
  box-shadow: 0 12px 28px rgba(0,0,0,0.45), 0 0 20px rgba(99,226,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .MB-photo {
  background: rgba(0,0,0,0.3);
  border-color: rgba(255,255,255,0.2);
}
html.HM-theme-night-sea:not(.gn-night-mode) .MB-name { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .MB-name a { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .MB-name a:hover { color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .MB-meta { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .MB-desc { color: #8ca3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .MB-badge--ami { background: rgba(45,212,191,0.3); color: #86efac; box-shadow: 0 0 10px rgba(45,212,191,0.3); }
html.HM-theme-night-sea:not(.gn-night-mode) .MB-badge--pending { background: rgba(255,203,107,0.25); color: #ffcb6b; box-shadow: 0 0 10px rgba(255,203,107,0.25); }
html.HM-theme-night-sea:not(.gn-night-mode) .MB-badge--me { background: rgba(99,226,255,0.3); color: #63e2ff; box-shadow: 0 0 10px rgba(99,226,255,0.3); }
html.HM-theme-night-sea:not(.gn-night-mode) .MB-empty {
  background: rgba(255,255,255,0.03);
  border-color: rgba(255,255,255,0.15);
  color: #b5c7dd;
}

/* RADAR */
html.HM-theme-radar:not(.gn-night-mode) .MB-title {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-shadow: 0 0 8px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .MB-count-badge {
  background: rgba(0,255,136,0.12);
  color: #00ff88;
  border: 1px solid rgba(0,255,136,0.35);
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .MB-count-badge strong { color: #00ff88; text-shadow: 0 0 6px #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .MB-card {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.35);
  color: #9fffb0;
  border-radius: 0;
  box-shadow: 0 0 12px rgba(0,255,136,0.1);
  font-family: 'Share Tech Mono', monospace;
  clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
}
html.HM-theme-radar:not(.gn-night-mode) .MB-card:hover {
  background: rgba(0,255,136,0.05);
  border-color: #00ff88;
  box-shadow: 0 0 22px rgba(0,255,136,0.35);
}
html.HM-theme-radar:not(.gn-night-mode) .MB-photo {
  background: #000;
  border: 2px solid #00ff88;
  box-shadow: 0 0 12px rgba(0,255,136,0.3);
}
html.HM-theme-radar:not(.gn-night-mode) .MB-name {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 1px;
  text-shadow: 0 0 6px #00ff88;
  font-size: 0.92rem;
}
html.HM-theme-radar:not(.gn-night-mode) .MB-name a { color: #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .MB-name a:hover { color: #9fffb0; text-shadow: 0 0 8px #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .MB-meta { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .MB-desc { color: #5fa870; }
html.HM-theme-radar:not(.gn-night-mode) .MB-badge--ami {
  background: rgba(0,255,136,0.2);
  color: #00ff88;
  border: 1px solid #00ff88;
  border-radius: 0;
  text-transform: uppercase;
  font-family: 'Share Tech Mono', monospace;
  letter-spacing: 0.8px;
  box-shadow: 0 0 10px rgba(0,255,136,0.4);
}
html.HM-theme-radar:not(.gn-night-mode) .MB-badge--pending {
  background: rgba(255,234,0,0.2);
  color: #ffea00;
  border: 1px solid #ffea00;
  border-radius: 0;
  text-transform: uppercase;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .MB-badge--me {
  background: rgba(0,234,255,0.2);
  color: #00eaff;
  border: 1px solid #00eaff;
  border-radius: 0;
  text-transform: uppercase;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .MB-empty {
  background: rgba(0,0,0,0.85);
  border: 1px dashed rgba(0,255,136,0.35);
  color: #9fffb0;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
  text-transform: uppercase;
}


/* ═══════════════════════════════════════════════════════════════════
   PRIORITÉ 2 — pages secondaires (night-sea + radar minimal)
   ═══════════════════════════════════════════════════════════════════ */

/* ─────── LIVRE DE BORD (.LB-*) ─────── */

/* NIGHT-SEA */
html.HM-theme-night-sea:not(.gn-night-mode) .LB h1,
html.HM-theme-night-sea:not(.gn-night-mode) .LB-new-form-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-sub,
html.HM-theme-night-sea:not(.gn-night-mode) .LB-file-info,
html.HM-theme-night-sea:not(.gn-night-mode) .LB-empty,
html.HM-theme-night-sea:not(.gn-night-mode) .LB-no-boat,
html.HM-theme-night-sea:not(.gn-night-mode) .LB-day-weather { color: #b5c7dd; }

html.HM-theme-night-sea:not(.gn-night-mode) .LB-boat-sel,
html.HM-theme-night-sea:not(.gn-night-mode) .LB-boat-sel option {
  background: rgba(255,255,255,0.06) !important;
  color: #e0eaf5 !important;
  border-color: rgba(255,255,255,0.15) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-search-bar {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-search-input {
  background: transparent !important;
  color: #e0eaf5 !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-search-input::placeholder { color: #6b8aa8; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-search-go-btn { background: linear-gradient(135deg,#1e5578,#3498c4); color:#fff; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-search-filters-btn {
  background: rgba(255,255,255,0.07) !important;
  color: #e0eaf5 !important;
  border-color: rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-search-filters-btn sup { color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-filters input,
html.HM-theme-night-sea:not(.gn-night-mode) .LB-filters select,
html.HM-theme-night-sea:not(.gn-night-mode) .LB-filters select option {
  background: rgba(255,255,255,0.06) !important;
  color: #e0eaf5 !important;
  border-color: rgba(255,255,255,0.15) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-filters input::placeholder { color: #6b8aa8; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-date-label { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-filter-btn { background: linear-gradient(135deg,#1e5578,#3498c4); color:#fff; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-filter-reset { background: rgba(255,255,255,0.1); color:#b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-new-bar {
  background: linear-gradient(135deg, rgba(34,197,94,0.2), rgba(22,163,74,0.25)) !important;
  color: #86efac !important;
  border: 1px solid rgba(34,197,94,0.35);
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-new-form {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(10px);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-new-form textarea {
  background: rgba(255,255,255,0.06) !important;
  color: #e0eaf5 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-new-form textarea::placeholder { color: #6b8aa8; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-media-card {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: #e0eaf5 !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-media-card:hover { background: rgba(255,255,255,0.12) !important; border-color: rgba(99,226,255,0.35) !important; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-tags-toggle,
html.HM-theme-night-sea:not(.gn-night-mode) .LB-tag-chip {
  background: rgba(255,255,255,0.07) !important;
  color: #e0eaf5 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-tag-chip.LB-tag-active { background: #63e2ff !important; color: #0a1a2e !important; border-color: #63e2ff !important; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-checklists-link {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: #e0eaf5 !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-checklists-link span { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-timeline::before { background: rgba(255,255,255,0.15); }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-day-dot { background: #63e2ff; border-color: rgba(10,26,46,0.9); }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-day-date { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-day-title { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-day-auto { background: rgba(255,255,255,0.05); color: #b5c7dd; }

/* Les ENTRÉES du livre de bord (les messages ajoutés) */
html.HM-theme-night-sea:not(.gn-night-mode) .LB-item {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  color: #e0eaf5 !important;
  backdrop-filter: blur(8px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-item-author { color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-item-time,
html.HM-theme-night-sea:not(.gn-night-mode) .LB-item-date { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-item-summary {
  background: linear-gradient(135deg, rgba(251,191,36,0.18), rgba(245,158,11,0.12));
  border-left: 4px solid #fbbf24;
  color: #fcd34d;
  font-size: 15px;
  font-weight: 700;
  text-shadow: 0 0 8px rgba(251,191,36,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-item-text { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-item-text.LB-trace-entry {
  background: rgba(99,226,255,0.08);
  border: 1px solid rgba(99,226,255,0.25);
  color: #cad9ec;
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-trace-link { background: rgba(99,226,255,0.2); color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-read-more { color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-item-tag { background: rgba(255,255,255,0.08); color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-item-actions button {
  background: rgba(255,255,255,0.07) !important;
  border-color: rgba(255,255,255,0.15) !important;
  color: #e0eaf5 !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-loadmore button {
  background: rgba(255,255,255,0.07) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: #e0eaf5 !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .LB-highlight { background: rgba(251,191,36,0.3); color: #fcd34d; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-highlight-active { background: #fbbf24; color: #0a1a2e; }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-results-bar { background: rgba(99,226,255,0.15); }
html.HM-theme-night-sea:not(.gn-night-mode) .LB-results-count { color: #e0eaf5; }

/* ─────── FLUX (.FX-*) ─────── */
html.HM-theme-night-sea:not(.gn-night-mode) .FX-wrapper,
html.HM-theme-night-sea:not(.gn-night-mode) .FX-compose,
html.HM-theme-night-sea:not(.gn-night-mode) .FX-item,
html.HM-theme-night-sea:not(.gn-night-mode) .FX-replyTo {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  color: #e0eaf5 !important;
  backdrop-filter: blur(8px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .FX-title,
html.HM-theme-night-sea:not(.gn-night-mode) .FX-head { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .FX-time { color: #8ca3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .FX-content { color: #cad9ec; }
html.HM-theme-night-sea:not(.gn-night-mode) .FX-content a { color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .FX-form textarea,
html.HM-theme-night-sea:not(.gn-night-mode) .FX-compose textarea {
  background: rgba(255,255,255,0.06) !important;
  color: #e0eaf5 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .FX-btn,
html.HM-theme-night-sea:not(.gn-night-mode) .FX-ops button,
html.HM-theme-night-sea:not(.gn-night-mode) .FX-fileBtn {
  background: rgba(255,255,255,0.08) !important;
  color: #e0eaf5 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .FX-sendBtn {
  background: linear-gradient(135deg,#1e5578,#3498c4) !important;
  color: #fff !important;
  border: none !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .FX-link { color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .FX-login-hint { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .FX-prevItem,
html.HM-theme-night-sea:not(.gn-night-mode) .FX-gItem { border-color: rgba(255,255,255,0.15); }

/* ─────── CAPITAINERIE — thémage via override des custom properties --gm-* ─────── */
/* Couvre TOUTES les classes .CAP-* d'un coup car CAP.css consomme ces variables */

html.HM-theme-night-sea:not(.gn-night-mode) {
  --gm-bg:            #05111e;
  --gm-text:          #e0eaf5;
  --gm-muted:         #b5c7dd;
  --gm-card:          rgba(255,255,255,0.04);
  --gm-border:        rgba(255,255,255,0.12);
  --gm-shadow:        0 6px 20px rgba(0,0,0,0.3);
  --gm-shadow-2:      0 12px 40px rgba(0,0,0,0.5);
  --gm-primary:       #63e2ff;
  --gm-primary-weak:  rgba(99,226,255,0.12);
  --gm-primary-border:rgba(99,226,255,0.35);
}
/* Complément : certains éléments CAP hardcoded en blanc qui ne passent pas par les vars */
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-body { background: var(--gm-bg) !important; color: var(--gm-text) !important; }
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-header { background: rgba(10,26,46,0.8) !important; border-bottom: 1px solid rgba(255,255,255,0.1); }
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-hero { backdrop-filter: blur(10px); }
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-card,
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-card-subblock,
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-contact-block,
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-equip-badge,
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-levage-card,
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-commerce-card { backdrop-filter: blur(8px); }
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-hero-chip { background: rgba(99,226,255,0.15); color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-btn-primary {
  background: linear-gradient(135deg,#1e5578,#3498c4) !important;
  color: #fff !important;
}
/* Items "Infos pratiques" (horaires, VHF, langues) — donner du contraste à l'intérieur de la card */
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-office-item {
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.18);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-office-label { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-office-value { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-lang-badge {
  background: rgba(99,226,255,0.15);
  border-color: rgba(99,226,255,0.3);
  color: #d0eaf5;
}
/* Cartes Levage / Grues : tonnage et type-pill en sobre */
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-levage-tonnage { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-levage-type {
  background: rgba(99,226,255,0.18);
  color: #d0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CAP-levage-name { color: #ffffff; }

/* ─── pages/meteo.php — styles inline hardcodés à thémer ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .MET-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .MET-card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 2px 10px rgba(0,0,0,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .MET-day-name { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .MET-day-desc { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .MET-tmin { background: rgba(2,119,189,0.25); color: #60d4ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .MET-tmax { background: rgba(230,81,0,0.25); color: #ffaa66; }
html.HM-theme-night-sea:not(.gn-night-mode) .MET-wind { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .MET-day-card:hover { background: rgba(255,255,255,0.05); }
html.HM-theme-night-sea:not(.gn-night-mode) .MET-hour {
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.1);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .MET-hour-time { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .MET-hour-temp { color: #ffaa66; }
html.HM-theme-night-sea:not(.gn-night-mode) .MET-hour-wind { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .MET-hour-wave { color: #60d4ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .MET-loading { color: #b5c7dd; }

/* ─── Apports / Contributions (partials/apports_bloc.php inline styles) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .AP-owner-box,
html.HM-theme-night-sea:not(.gn-night-mode) .AP-item {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .AP-meta { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .AP-empty { color: #8da3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .CU-chip {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.18);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CU-name { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .CU-extra,
html.HM-theme-night-sea:not(.gn-night-mode) .CU-comment { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .AP-form-inline label { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .AP-form-inline input[type="number"],
html.HM-theme-night-sea:not(.gn-night-mode) .AP-form-inline input[type="text"] {
  background: rgba(255,255,255,0.06);
  color: #e0eaf5;
  border-color: rgba(255,255,255,0.15);
}

/* ─── EV.css : blocs hardcodés en blanc → glass dark ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .EV-groupe,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-poll,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-objet-card,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-choice-panel,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-no-objets,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-footer,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-thumb {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.15);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .EV-page { background: transparent; color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .EV-poll h3 { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .EV-poll .EV-hint { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .EV-taille { color: #b5c7dd; }

/* ─── Bloc Inscrits + cartouche Créateur (CU.chip / CU.card) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .EV-section--inscrits {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.15);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .EV-section--inscrits .EV-section-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .EV-section--inscrits .EV-count {
  background: rgba(99,226,255,0.15);
  border-color: rgba(99,226,255,0.3);
  color: #d0eaf5;
}
/* Chips inscrits + cartouche créateur (variant chip/card) — texte clair forcé */
html.HM-theme-night-sea:not(.gn-night-mode) .EV-section--inscrits .EV-inscrits-list .CU-chip,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-createur .CU.chip,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-groupe-inscrits .CU.chip,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-groupe-inscrits .CU.card,
html.HM-theme-night-sea:not(.gn-night-mode) .CU,
html.HM-theme-night-sea:not(.gn-night-mode) .CU.chip,
html.HM-theme-night-sea:not(.gn-night-mode) .CU.card {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
  box-shadow: none;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CU-name,
html.HM-theme-night-sea:not(.gn-night-mode) .CU-label { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .CU-sub { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .EV-createur-label { color: #b5c7dd; }

/* ─── Page Profil — bloc générique .block + .PR-box + sous-blocs ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .block,
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil section.block,
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .classement-box,
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .PR-box {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.12);
  color: #e0eaf5;
  box-shadow: none;
}
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .block-title,
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .PR-box-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .block .muted,
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .block p,
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .PR-box li { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .PR-box li { border-bottom-color: rgba(255,255,255,0.1); }
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .PR-box strong { color: #63e2ff; }

/* Marina style groups + tags */
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .PR-marina-style-group {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .PR-marina-style-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .PR-tag {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
}

/* Cartouches événements (présents sur profil + d'autres pages) */
html.HM-theme-night-sea:not(.gn-night-mode) .CE .cartouche-evenement {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.15);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .cartouche-evenement .titre,
html.HM-theme-night-sea:not(.gn-night-mode) .cartouche-evenement h4.titre { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .cartouche-evenement .meta,
html.HM-theme-night-sea:not(.gn-night-mode) .cartouche-evenement .desc,
html.HM-theme-night-sea:not(.gn-night-mode) .cartouche-evenement .distance { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .cartouche-evenement .chip {
  background: rgba(99,226,255,0.15);
  color: #d0eaf5;
  border-color: rgba(99,226,255,0.3);
}

/* ─── op_card.php — composant cartouche objet/bateau (styles inline) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .opc-card {
  background: rgba(255,255,255,0.10);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
  box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .opc-cover {
  background: rgba(255,255,255,0.08);
}
html.HM-theme-night-sea:not(.gn-night-mode) .opc-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .opc-meta,
html.HM-theme-night-sea:not(.gn-night-mode) .opc-desc,
html.HM-theme-night-sea:not(.gn-night-mode) .opc-meta-port { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .opc-meta-port a { color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .opc-corner {
  background: rgba(15,23,42,0.85);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
}
/* Carte "Ajouter un objet passion" — hardcoded #fafafa → glass dashed */
html.HM-theme-night-sea:not(.gn-night-mode) .opc-add-card {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.25);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .opc-add-card:hover {
  border-color: #63e2ff;
  background: rgba(99,226,255,0.08);
}

/* Cover photo profil (bandeau couverture top) si présent */
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .PR-cover,
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .PR-header,
html.HM-theme-night-sea:not(.gn-night-mode) .page-profil .PR-coverPhoto {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.12);
}

/* ─── Styles de sorties (PR-ms-*) — labels et pills hardcodés ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .PR-ms-group {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .PR-ms-label,
html.HM-theme-night-sea:not(.gn-night-mode) .PR-ms-row-label {
  color: #b5c7dd;
}
html.HM-theme-night-sea:not(.gn-night-mode) .PR-ms-pill {
  background: rgba(99,226,255,0.15);
  border-color: rgba(99,226,255,0.35);
  color: #d0eaf5;
}

/* ─── pro_list.php — Annuaire Pro (PL- + CP- + chips) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .PL-wrap { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .PL-title,
html.HM-theme-night-sea:not(.gn-night-mode) .PL-searchTitle { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .PL-searchSub { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .PL-search,
html.HM-theme-night-sea:not(.gn-night-mode) .PL-form {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.12);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .PL-hint {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.15);
  color: #b5c7dd;
}

/* Cartouche Pro (CP) */
html.HM-theme-night-sea:not(.gn-night-mode) .CP {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.15);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CP__title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .CP__loc,
html.HM-theme-night-sea:not(.gn-night-mode) .CP__desc { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .CP__logo {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .chip {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
}

/* pro.css — cartes génériques + logo */
html.HM-theme-night-sea:not(.gn-night-mode) .pro-main .card {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.12);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .pro-main .card.subtle {
  background: rgba(99,226,255,0.06);
  border-color: rgba(99,226,255,0.25);
}
html.HM-theme-night-sea:not(.gn-night-mode) .pro-logo {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .pro-adminbar {
  background: rgba(15,23,42,0.95);
  border-bottom-color: rgba(255,255,255,0.12);
}

/* ─── Composant recherche_ville_bloc.php (RV-*) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .RV-pays-btn {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .RV-pays-btn.is-active {
  background: rgba(99,226,255,0.18);
  border-color: #63e2ff;
  color: #ffffff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .RV-label { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .RV-input {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .RV-input::placeholder { color: #6b8aa8; }
html.HM-theme-night-sea:not(.gn-night-mode) .RV-suggest {
  background: rgba(10,26,46,0.96);
  border-color: rgba(255,255,255,0.18);
  box-shadow: 0 14px 30px rgba(0,0,0,0.5);
}
html.HM-theme-night-sea:not(.gn-night-mode) .RV-suggest-row {
  border-bottom-color: rgba(255,255,255,0.08);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .RV-suggest-row.is-hover,
html.HM-theme-night-sea:not(.gn-night-mode) .RV-suggest-row:hover {
  background: rgba(99,226,255,0.12);
}
html.HM-theme-night-sea:not(.gn-night-mode) .RV-suggest-alt { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .RV-suggest-cp {
  background: rgba(99,226,255,0.18);
  border-color: rgba(99,226,255,0.35);
  color: #d0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .RV-geo-btn {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .RV-geo-btn:hover {
  background: rgba(99,226,255,0.15);
  border-color: #63e2ff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .RV-status { color: #b5c7dd; }

/* ─── capitainerie_edit.php — Édition capitainerie (CE-*) ─── */
/* Wrapper, card, head, body */
html.HM-theme-night-sea:not(.gn-night-mode) .CE-card {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  box-shadow: 0 6px 24px rgba(0,0,0,0.4) !important;
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CE-head {
  border-bottom-color: rgba(255,255,255,0.12) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CE-title { color: #ffffff; }

/* Champs formulaire */
html.HM-theme-night-sea:not(.gn-night-mode) .CE-field label { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE-field input,
html.HM-theme-night-sea:not(.gn-night-mode) .CE-field textarea {
  background: rgba(255,255,255,0.06) !important;
  border-color: rgba(255,255,255,0.18) !important;
  color: #e0eaf5 !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CE-field input::placeholder,
html.HM-theme-night-sea:not(.gn-night-mode) .CE-field textarea::placeholder { color: #6b8aa8; }

/* Messages err/ok */
html.HM-theme-night-sea:not(.gn-night-mode) .CE-msg.err {
  background: rgba(190,18,60,0.15) !important;
  border-color: rgba(255,138,138,0.4) !important;
  color: #ffb0b0;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CE-msg.ok {
  background: rgba(8,145,178,0.15) !important;
  border-color: rgba(99,226,255,0.35) !important;
  color: #d0eaf5;
}

/* Aperçu image bandeau */
html.HM-theme-night-sea:not(.gn-night-mode) .CE-preview {
  background: rgba(255,255,255,0.05) !important;
  border-color: rgba(255,255,255,0.12) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CE-help { color: #b5c7dd; }

/* Équipements */
html.HM-theme-night-sea:not(.gn-night-mode) .CE-equip-item:hover { background: rgba(99,226,255,0.08); }
html.HM-theme-night-sea:not(.gn-night-mode) .CE-equip-item label { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE-equip-item .CE-equip-sub { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE-equip-detail input {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
}

/* Levages dynamiques + Commerces */
html.HM-theme-night-sea:not(.gn-night-mode) .CE-levage-entry,
html.HM-theme-night-sea:not(.gn-night-mode) .CE-commerce-entry {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CE-levage-field label,
html.HM-theme-night-sea:not(.gn-night-mode) .CE-commerce-field label { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .CE-levage-field input,
html.HM-theme-night-sea:not(.gn-night-mode) .CE-levage-field select,
html.HM-theme-night-sea:not(.gn-night-mode) .CE-levage-field textarea,
html.HM-theme-night-sea:not(.gn-night-mode) .CE-commerce-field input,
html.HM-theme-night-sea:not(.gn-night-mode) .CE-commerce-field select,
html.HM-theme-night-sea:not(.gn-night-mode) .CE-commerce-field textarea {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CE-levage-remove,
html.HM-theme-night-sea:not(.gn-night-mode) .CE-commerce-remove {
  background: rgba(190,18,60,0.18);
  border-color: rgba(255,138,138,0.35);
  color: #ff8a8a;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CE-levage-remove:hover,
html.HM-theme-night-sea:not(.gn-night-mode) .CE-commerce-remove:hover {
  background: rgba(190,18,60,0.3);
}

/* Bouton "ajouter un levage" */
html.HM-theme-night-sea:not(.gn-night-mode) .CE-add-levage {
  background: rgba(99,226,255,0.12);
  border-color: rgba(99,226,255,0.35);
  color: #63e2ff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CE-add-levage:hover { background: rgba(99,226,255,0.2); }

/* Titre de groupe (séparateur thématique) */
html.HM-theme-night-sea:not(.gn-night-mode) .CE-group-title {
  color: #63e2ff;
  border-bottom-color: rgba(99,226,255,0.25);
}

/* ─── pro_view.php / pro.css — page Pro publique ─── */
/* Override complet des vars pro.css pour basculer en night-sea */
html.HM-theme-night-sea:not(.gn-night-mode) body.pro-page {
  --brand: #63e2ff;
  --brand-2: #8de9ff;
  --ink: #e0eaf5;
  --muted: #b5c7dd;
  --bg: #05111e;
  --card: rgba(255,255,255,0.05);
  --line: rgba(255,255,255,0.12);
  --shadow: 0 6px 24px rgba(0,0,0,0.35);
  background: #05111e;
  color: #e0eaf5;
}

/* Sélecteur de langue (.pv-lang-bar) */
html.HM-theme-night-sea:not(.gn-night-mode) .pv-lang-bar {
  background: rgba(255,255,255,0.04);
}
html.HM-theme-night-sea:not(.gn-night-mode) .pv-lang-btn { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .pv-lang-btn:hover { background: rgba(255,255,255,0.1); }
html.HM-theme-night-sea:not(.gn-night-mode) .pv-lang-btn--active {
  background: rgba(99,226,255,0.18);
  color: #63e2ff;
}

/* Hero : overlay gradient blanc → bleu nuit pour ne pas blanchir la photo */
html.HM-theme-night-sea:not(.gn-night-mode) .pro-hero {
  border-bottom-color: rgba(255,255,255,0.12);
}
html.HM-theme-night-sea:not(.gn-night-mode) .pro-hero__overlay {
  background: linear-gradient(180deg, rgba(5,17,30,0), rgba(5,17,30,0.85));
}
html.HM-theme-night-sea:not(.gn-night-mode) .pro-hero__brand h1 { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .tagline { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .pro-hero .pro-logo {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.3);
}

/* Boutons */
html.HM-theme-night-sea:not(.gn-night-mode) .btn {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .btn:hover {
  box-shadow: 0 6px 20px rgba(0,0,0,0.4);
  background: rgba(255,255,255,0.12);
}
html.HM-theme-night-sea:not(.gn-night-mode) .btn-primary {
  background: linear-gradient(135deg,#1e5578,#3498c4);
  border-color: #3498c4;
  color: #ffffff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .btn-ghost {
  background: transparent;
  border-color: rgba(255,255,255,0.25);
  color: #e0eaf5;
}

/* Headers de sections */
html.HM-theme-night-sea:not(.gn-night-mode) .pro-offres h2,
html.HM-theme-night-sea:not(.gn-night-mode) .pro-infos h2,
html.HM-theme-night-sea:not(.gn-night-mode) .pro-about h2,
html.HM-theme-night-sea:not(.gn-night-mode) .pro-contact h2 { color: #ffffff; }

/* Badges features */
html.HM-theme-night-sea:not(.gn-night-mode) .pro-badge {
  background: rgba(99,226,255,0.15);
  border-color: rgba(99,226,255,0.35);
  color: #d0eaf5;
}

/* Horaires */
html.HM-theme-night-sea:not(.gn-night-mode) .opening { color: #b5c7dd; }

/* Avis : étoiles oranges restent OK, juste le texte de count */
html.HM-theme-night-sea:not(.gn-night-mode) .pro-page a[href="#avis"] { color: #b5c7dd; }

/* ─── Gazette (pages/gazette.php + gazette_liste.php) ─── */
/* Variable globale --surface-page (utilisée par .content / .side) */
html.HM-theme-night-sea:not(.gn-night-mode) {
  --surface-page: transparent;
}
html.HM-theme-night-sea:not(.gn-night-mode) body.page-gazette,
html.HM-theme-night-sea:not(.gn-night-mode) body.page-gazette-liste {
  background: #05111e;
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) body.page-gazette .content,
html.HM-theme-night-sea:not(.gn-night-mode) body.page-gazette .side,
html.HM-theme-night-sea:not(.gn-night-mode) body.page-gazette-liste .content,
html.HM-theme-night-sea:not(.gn-night-mode) body.page-gazette-liste .side {
  background: transparent;
}

/* .card générique sur gazette */
html.HM-theme-night-sea:not(.gn-night-mode) body.page-gazette .card,
html.HM-theme-night-sea:not(.gn-night-mode) body.page-gazette-liste .card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 4px 16px rgba(0,0,0,0.3);
  color: #e0eaf5;
}

/* Article (fiche détail) */
html.HM-theme-night-sea:not(.gn-night-mode) .gazette-article-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .gazette-article-chapo { color: #d0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .gazette-article-content { color: #e0eaf5; }

/* Liste (gazette_liste.php) */
html.HM-theme-night-sea:not(.gn-night-mode) .gazette-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .gazette-chapo { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .gazette-card-title { color: #ffffff; }

/* ─── Recherche d'objets (pages/recherche_objets.php — RO-*) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .RO-card {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.12);
  box-shadow: 0 6px 24px rgba(0,0,0,0.4);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .RO-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .RO-sub { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .RO-empty { color: #8da3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .RO-filters input,
html.HM-theme-night-sea:not(.gn-night-mode) .RO-filters select {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.18);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .RO-filters input::placeholder { color: #6b8aa8; }
html.HM-theme-night-sea:not(.gn-night-mode) .RO-filters input:focus,
html.HM-theme-night-sea:not(.gn-night-mode) .RO-filters select:focus {
  border-color: #63e2ff;
  box-shadow: 0 0 0 3px rgba(99,226,255,0.18);
}
html.HM-theme-night-sea:not(.gn-night-mode) .RO-item {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.15);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .RO-item:hover { border-color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .RO-cover { background: rgba(255,255,255,0.08); }
html.HM-theme-night-sea:not(.gn-night-mode) .RO-name { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .RO-type {
  background: rgba(99,226,255,0.18);
  color: #d0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .RO-detail { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .RO-owner { color: #8da3bf; }
/* Hover : liseré cyan pour rester cohérent */
html.HM-theme-night-sea:not(.gn-night-mode) .EV-section--inscrits .EV-inscrits-list .CU-chip:hover,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-createur .CU.chip:hover,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-groupe-inscrits .CU.chip:hover,
html.HM-theme-night-sea:not(.gn-night-mode) .EV-groupe-inscrits .CU.card:hover {
  border-color: rgba(99,226,255,0.5);
  box-shadow: 0 0 0 2px rgba(99,226,255,0.2);
}

/* ─────── FIND BOAT / CARTE DU PORT (.FB-*) ─────── */
html.HM-theme-night-sea:not(.gn-night-mode) .FB-card,
html.HM-theme-night-sea:not(.gn-night-mode) .FB-search,
html.HM-theme-night-sea:not(.gn-night-mode) .FB-results,
html.HM-theme-night-sea:not(.gn-night-mode) .FB-invite,
html.HM-theme-night-sea:not(.gn-night-mode) .FB-invite-form,
html.HM-theme-night-sea:not(.gn-night-mode) .FB-empty,
html.HM-theme-night-sea:not(.gn-night-mode) .FB-divider {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  color: #e0eaf5 !important;
  backdrop-filter: blur(8px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .FB-boat-name { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .FB-boat-owner,
html.HM-theme-night-sea:not(.gn-night-mode) .FB-boat-port,
html.HM-theme-night-sea:not(.gn-night-mode) .FB-boat-info { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .FB-boat-link,
html.HM-theme-night-sea:not(.gn-night-mode) .FB-boat-actions a { color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .FB-btn {
  background: linear-gradient(135deg,#1e5578,#3498c4) !important;
  color: #fff !important;
  border: none !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .FB-modal {
  background: rgba(10,26,46,0.96) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: #e0eaf5 !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .FB-modal-bg { background: rgba(0,10,20,0.8); }
html.HM-theme-night-sea:not(.gn-night-mode) .FB-modal-cancel { background: rgba(255,255,255,0.08); color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .FB-flash {
  background: rgba(34,197,94,0.18) !important;
  color: #86efac !important;
  border: 1px solid rgba(34,197,94,0.35);
}

/* ─────── INPUT FILE (tous) : "Choisir un fichier" ─────── */
html.HM-theme-night-sea:not(.gn-night-mode) input[type="file"] {
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) input[type="file"]::-webkit-file-upload-button,
html.HM-theme-night-sea:not(.gn-night-mode) input[type="file"]::file-selector-button {
  background: rgba(255,255,255,0.10);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.20);
  border-radius: 8px;
  padding: 6px 14px;
  cursor: pointer;
  font-weight: 600;
  margin-right: 10px;
  transition: background 0.15s;
}
html.HM-theme-night-sea:not(.gn-night-mode) input[type="file"]::-webkit-file-upload-button:hover,
html.HM-theme-night-sea:not(.gn-night-mode) input[type="file"]::file-selector-button:hover {
  background: rgba(99,226,255,0.2);
  border-color: rgba(99,226,255,0.4);
}

/* ─────── FICHE BATEAU — compléments (blocs photos/présentation/infos/vues/équipiers) ─────── */
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-body,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-main,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-header { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-kpis .OBJ-right,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-kpis * { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-card,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-gallery,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-thumbsRow {
  background: transparent;
}
/* Textes "vues" et valeurs grises clair à remonter en lisible */
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-section p,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-section span,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-section li,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-section label,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-section small { color: #cad9ec; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-section strong,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-section b { color: #ffffff; }


/* ═══════════ RADAR — overrides minimaux (priorité 2) ═══════════ */
/* On force noir+vert pour tous les blocs connus pour éviter le blanc sans re-thémer chaque détail */
html.HM-theme-radar:not(.gn-night-mode) .LB-boat-sel,
html.HM-theme-radar:not(.gn-night-mode) .LB-search-bar,
html.HM-theme-radar:not(.gn-night-mode) .LB-new-form,
html.HM-theme-radar:not(.gn-night-mode) .LB-new-form textarea,
html.HM-theme-radar:not(.gn-night-mode) .LB-media-card,
html.HM-theme-radar:not(.gn-night-mode) .LB-tag-chip,
html.HM-theme-radar:not(.gn-night-mode) .LB-checklists-link,
html.HM-theme-radar:not(.gn-night-mode) .LB-item,
html.HM-theme-radar:not(.gn-night-mode) .LB-item-actions button,
html.HM-theme-radar:not(.gn-night-mode) .LB-loadmore button,
html.HM-theme-radar:not(.gn-night-mode) .LB-filters input,
html.HM-theme-radar:not(.gn-night-mode) .LB-filters select,
html.HM-theme-radar:not(.gn-night-mode) .FX-wrapper,
html.HM-theme-radar:not(.gn-night-mode) .FX-compose,
html.HM-theme-radar:not(.gn-night-mode) .FX-item,
html.HM-theme-radar:not(.gn-night-mode) .FX-replyTo,
html.HM-theme-radar:not(.gn-night-mode) .FX-form textarea,
html.HM-theme-radar:not(.gn-night-mode) .FX-compose textarea,
html.HM-theme-radar:not(.gn-night-mode) {
  --gm-bg:            #000;
  --gm-text:          #9fffb0;
  --gm-muted:         #5fa870;
  --gm-card:          rgba(0,0,0,0.85);
  --gm-border:        rgba(0,255,136,0.35);
  --gm-shadow:        0 0 14px rgba(0,255,136,0.15);
  --gm-shadow-2:      0 0 22px rgba(0,255,136,0.25);
  --gm-primary:       #00ff88;
  --gm-primary-weak:  rgba(0,255,136,0.12);
  --gm-primary-border:#00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .CAP-body { background: var(--gm-bg) !important; color: var(--gm-text) !important; }
html.HM-theme-radar:not(.gn-night-mode) .CAP-hero,
html.HM-theme-radar:not(.gn-night-mode) .CAP-card,
html.HM-theme-radar:not(.gn-night-mode) .CAP-card-subblock,
html.HM-theme-radar:not(.gn-night-mode) .CAP-contact-block,
html.HM-theme-radar:not(.gn-night-mode) .FB-card,
html.HM-theme-radar:not(.gn-night-mode) .FB-search,
html.HM-theme-radar:not(.gn-night-mode) .FB-results,
html.HM-theme-radar:not(.gn-night-mode) .FB-invite,
html.HM-theme-radar:not(.gn-night-mode) .FB-empty,
html.HM-theme-radar:not(.gn-night-mode) .FB-modal {
  background: rgba(0,0,0,0.85) !important;
  border: 1px solid rgba(0,255,136,0.35) !important;
  color: #9fffb0 !important;
  border-radius: 0 !important;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .LB-item-author,
html.HM-theme-radar:not(.gn-night-mode) .FX-title,
html.HM-theme-radar:not(.gn-night-mode) .FX-head,
html.HM-theme-radar:not(.gn-night-mode) .CAP-hero-title,
html.HM-theme-radar:not(.gn-night-mode) .CAP-card-title,
html.HM-theme-radar:not(.gn-night-mode) .FB-boat-name,
html.HM-theme-radar:not(.gn-night-mode) .LB h1 {
  color: #00ff88 !important;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  text-shadow: 0 0 6px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .LB-item-text,
html.HM-theme-radar:not(.gn-night-mode) .FX-content,
html.HM-theme-radar:not(.gn-night-mode) .CAP-card-text { color: #9fffb0 !important; }
html.HM-theme-radar:not(.gn-night-mode) .LB-filter-btn,
html.HM-theme-radar:not(.gn-night-mode) .FX-sendBtn,
html.HM-theme-radar:not(.gn-night-mode) .CAP-btn-primary,
html.HM-theme-radar:not(.gn-night-mode) .FB-btn {
  background: rgba(0,255,136,0.2) !important;
  color: #00ff88 !important;
  border: 1px solid #00ff88 !important;
  border-radius: 0 !important;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  text-shadow: 0 0 6px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) input[type="file"] { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) input[type="file"]::-webkit-file-upload-button,
html.HM-theme-radar:not(.gn-night-mode) input[type="file"]::file-selector-button {
  background: rgba(0,255,136,0.12);
  color: #00ff88;
  border: 1px solid #00ff88;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
  text-transform: uppercase;
}

/* ─────── Modales checklist (.CL-modal-content + inputs) en thèmes ─────── */
html.HM-theme-night-sea:not(.gn-night-mode) .CL-modal-content {
  background: rgba(10,26,46,0.96);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.12);
  backdrop-filter: blur(20px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-modal-content h3 { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .CL-modal-hint { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .CL-modal-content input[type="text"] {
  background: rgba(255,255,255,0.06);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-modal-content input[type="text"]::placeholder { color: #6b8aa8; }
html.HM-theme-night-sea:not(.gn-night-mode) .CL-emoji-grid {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.12);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-emoji-btn {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.15);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-emoji-btn.CL-emoji-active {
  background: rgba(99,226,255,0.2);
  border-color: #63e2ff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-btn-cancel {
  background: rgba(255,255,255,0.08);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-btn-primary {
  background: linear-gradient(135deg, #1e5578, #3498c4);
  color: #fff;
  border: none;
}

/* Message d'erreur checklist (.CL-formError) en night-sea */
html.HM-theme-night-sea:not(.gn-night-mode) .CL-formError {
  background: rgba(239,68,68,0.15);
  color: #ff8a8a;
  border-color: rgba(239,68,68,0.4);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-input-error {
  border-color: #ff8a8a !important;
  box-shadow: 0 0 0 3px rgba(239,68,68,0.2) !important;
}

/* ─── CL : page principale (cartes liste + détail + items) en night-sea ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .CL-card,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-detail,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-item {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.12);
  color: #e0eaf5;
  box-shadow: none;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-card:hover {
  border-color: #63e2ff;
  box-shadow: 0 6px 16px rgba(99,226,255,0.18);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-card-name,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-detail-title,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-title,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-no-boat h2,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-progress-count strong,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-progress-line strong,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-check-big-label,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-item-double .CL-item-label {
  color: #ffffff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-detail-sub,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-no-boat p,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-progress-count,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-progress-line,
html.HM-theme-night-sea:not(.gn-night-mode) .CL-loading {
  color: #b5c7dd;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-detail-header { border-bottom-color: rgba(255,255,255,0.1); }
html.HM-theme-night-sea:not(.gn-night-mode) .CL-back {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.15);
  color: #b5c7dd;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-progress-bar { background: rgba(255,255,255,0.08); }
html.HM-theme-night-sea:not(.gn-night-mode) .CL-item-checked {
  background: rgba(34,197,94,0.12);
  border-color: rgba(34,197,94,0.4);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-item-checked .CL-check-big-label { color: #94d4a8; }
html.HM-theme-night-sea:not(.gn-night-mode) .CL-check-big-box {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.25);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-session-bar {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.12);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-session-info { color: #d0e0f0; }
html.HM-theme-night-sea:not(.gn-night-mode) .CL-crew-selector {
  background: rgba(99,226,255,0.08);
  border-color: rgba(99,226,255,0.25);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-crew-selector label { color: #d0e0f0; }
html.HM-theme-night-sea:not(.gn-night-mode) .CL-crew-selector select {
  background: rgba(255,255,255,0.06);
  color: #e0eaf5;
  border-color: rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-participants {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.1);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-participants-label { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .CL-participant-chip {
  background: rgba(99,226,255,0.15);
  color: #d0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-add-item-btn {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.2);
  color: #b5c7dd;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-add-item-btn:hover {
  background: rgba(99,226,255,0.1);
  border-color: #63e2ff;
  color: #63e2ff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-friends-list {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.1);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-friend-row {
  border-bottom-color: rgba(255,255,255,0.08);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-check-box {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.15);
  color: #d0e0f0;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-check-box.CL-checked {
  background: rgba(34,197,94,0.15);
  border-color: rgba(34,197,94,0.5);
  color: #94d4a8;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-item-hide {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.2);
  color: #b5c7dd;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CL-item-restore {
  background: rgba(99,226,255,0.1);
  border-color: #63e2ff;
  color: #63e2ff;
}

/* ─── CL : page principale en radar ─── */
html.HM-theme-radar:not(.gn-night-mode) .CL-card,
html.HM-theme-radar:not(.gn-night-mode) .CL-detail,
html.HM-theme-radar:not(.gn-night-mode) .CL-item {
  background: rgba(0,0,0,0.7);
  border: 1px solid rgba(0,255,136,0.35);
  border-radius: 0;
  color: #9fffb0;
  box-shadow: none;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .CL-card:hover {
  border-color: #00ff88;
  box-shadow: 0 0 12px rgba(0,255,136,0.3);
}
html.HM-theme-radar:not(.gn-night-mode) .CL-card-name,
html.HM-theme-radar:not(.gn-night-mode) .CL-detail-title,
html.HM-theme-radar:not(.gn-night-mode) .CL-title {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 1px;
}
html.HM-theme-radar:not(.gn-night-mode) .CL-detail-sub,
html.HM-theme-radar:not(.gn-night-mode) .CL-progress-count,
html.HM-theme-radar:not(.gn-night-mode) .CL-progress-line,
html.HM-theme-radar:not(.gn-night-mode) .CL-loading { color: #6fcf85; }
html.HM-theme-radar:not(.gn-night-mode) .CL-progress-bar { background: rgba(0,255,136,0.1); }
html.HM-theme-radar:not(.gn-night-mode) .CL-progress-fill { background: linear-gradient(90deg, #00ff88, #00cc6a); }
html.HM-theme-radar:not(.gn-night-mode) .CL-back {
  background: transparent;
  border: 1px solid rgba(0,255,136,0.4);
  color: #9fffb0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .CL-session-bar,
html.HM-theme-radar:not(.gn-night-mode) .CL-crew-selector,
html.HM-theme-radar:not(.gn-night-mode) .CL-participants,
html.HM-theme-radar:not(.gn-night-mode) .CL-add-item-btn,
html.HM-theme-radar:not(.gn-night-mode) .CL-friends-list {
  background: rgba(0,0,0,0.6);
  border: 1px solid rgba(0,255,136,0.3);
  border-radius: 0;
  color: #9fffb0;
}
html.HM-theme-radar:not(.gn-night-mode) .CL-check-big-label { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .CL-item-double .CL-item-label { color: #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .CL-item-checked {
  background: rgba(0,255,136,0.15);
  border-color: #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .CL-check-box {
  background: transparent;
  border: 1px solid rgba(0,255,136,0.4);
  color: #9fffb0;
  border-radius: 0;
}

/* Même traitement pour radar */
html.HM-theme-radar:not(.gn-night-mode) .CL-modal-content {
  background: #000;
  color: #9fffb0;
  border: 1px solid #00ff88;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .CL-modal-content h3 {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-shadow: 0 0 6px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .CL-modal-content input[type="text"] {
  background: #000;
  color: #9fffb0;
  border: 1px solid rgba(0,255,136,0.4);
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .CL-modal-content input[type="text"]::placeholder { color: #4a7a55; }
html.HM-theme-radar:not(.gn-night-mode) .CL-emoji-grid {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.35);
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .CL-emoji-btn { background: transparent; border: 1px solid rgba(0,255,136,0.35); border-radius: 0; color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .CL-emoji-btn.CL-emoji-active { background: rgba(0,255,136,0.18); border-color: #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .CL-btn-primary {
  background: rgba(0,255,136,0.2);
  color: #00ff88;
  border: 1px solid #00ff88;
  border-radius: 0;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
}
html.HM-theme-radar:not(.gn-night-mode) .CL-btn-cancel {
  background: transparent;
  color: #9fffb0;
  border: 1px solid rgba(0,255,136,0.3);
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
  text-transform: uppercase;
}


/* ═══════════════════════════════════════════════════════════════════
   ACCUEIL v1 (PC / complet) — blocs restants en blanc
   ═══════════════════════════════════════════════════════════════════ */

/* ─── AGENDA / CALENDRIER (.IN-agenda*) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .IN-agendaHead,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-agendaTitle { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-agendaNav {
  background: rgba(255,255,255,0.06);
  color: #b5c7dd;
  border: 1px solid rgba(255,255,255,0.12);
}
html.HM-theme-night-sea:not(.gn-night-mode) .IN-agendaNav:hover { background: rgba(99,226,255,0.15); color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-agendaCell {
  background: rgba(255,255,255,0.05);
  color: #e0eaf5;
  border-color: rgba(255,255,255,0.10);
}
html.HM-theme-night-sea:not(.gn-night-mode) .IN-agendaCell.is-head { color: #8ca3bf; background: transparent; }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-agendaCell.is-day:hover { background: rgba(99,226,255,0.12); }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-agendaCell.is-today {
  border-color: #63e2ff;
  box-shadow: inset 0 0 0 1px #63e2ff;
  color: #ffffff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .IN-agendaCell.is-hasEvent {
  background: rgba(99,226,255,0.2);
  border-color: rgba(99,226,255,0.45);
  color: #ffffff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .IN-agendaLocked {
  background: rgba(255,255,255,0.03);
  color: #6b8aa8;
  border-color: rgba(255,255,255,0.08);
}

/* ─── CARTOUCHES GAZETTE (.CG-*) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .CG-card {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.10);
  color: #e0eaf5;
  backdrop-filter: blur(8px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CG-thumb { background: rgba(0,0,0,0.3); }
html.HM-theme-night-sea:not(.gn-night-mode) .CG--list.CG--listV2,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-side--left .CG--list.CG--listV2 {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.10);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CG-title,
html.HM-theme-night-sea:not(.gn-night-mode) .CG--list.CG--listV2 .CG-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .CG-excerpt { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .CG-date { color: #8ca3bf; }

/* ─── SIDEBAR GAZETTE (mini items sur accueil) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .IN-gazetteList,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-gazetteItem { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-gazetteThumb {
  background: rgba(0,0,0,0.3);
  border-color: rgba(255,255,255,0.12);
}
html.HM-theme-night-sea:not(.gn-night-mode) .IN-gazetteTitle { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-gazetteChapo { color: #b5c7dd; }

/* ─── FLUX ACCUEIL v1 (.IN-homeFlux + toutes les cards + FLX-post) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .IN-homeFlux #fluxList {
  background: rgba(255,255,255,0.02);
}
html.HM-theme-night-sea:not(.gn-night-mode) .IN-homeFlux #fluxList .GN-card,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-homeFlux .GN-card,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-page-accueil .GN-card,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-page-accueil .IN-kpiCards .GN-card,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-next-events .GN-card,
html.HM-theme-night-sea:not(.gn-night-mode) .FLX-post {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.10);
  color: #e0eaf5;
  backdrop-filter: blur(8px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .FLX-post--empty {
  border: 1px dashed rgba(255,255,255,0.25);
  color: #8ca3bf;
}
html.HM-theme-night-sea:not(.gn-night-mode) .FLX-post--error {
  border: 1px solid rgba(239,68,68,0.4);
  color: #ff8a8a;
  background: rgba(239,68,68,0.12);
}
html.HM-theme-night-sea:not(.gn-night-mode) .FLX-photo { border-radius: 8px; }
html.HM-theme-night-sea:not(.gn-night-mode) .FLX-thread { background: rgba(255,255,255,0.03); border-radius: 8px; padding: 6px; }
html.HM-theme-night-sea:not(.gn-night-mode) .FBX,
html.HM-theme-night-sea:not(.gn-night-mode) .FLX-reply,
html.HM-theme-night-sea:not(.gn-night-mode) .FLX-embed,
html.HM-theme-night-sea:not(.gn-night-mode) .FBX--member,
html.HM-theme-night-sea:not(.gn-night-mode) .FBX--boat,
html.HM-theme-night-sea:not(.gn-night-mode) .FBX--event {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.15);
  color: #e0eaf5;
}
/* Post système (inscription, nouveau bateau, etc.) */
html.HM-theme-night-sea:not(.gn-night-mode) .FLX-system-post {
  background: linear-gradient(135deg, rgba(99,226,255,0.08) 0%, rgba(255,255,255,0.04) 100%);
  border-left: 3px solid #63e2ff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .FBX--member-intro { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .FBX__title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .FBX__meta { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .FBX--member__btn {
  background: linear-gradient(135deg, #1e5578, #3498c4);
  color: #fff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .FBX--member:hover .FBX--member__btn {
  background: linear-gradient(135deg, #2a7aaa, #63b4dd);
}
html.HM-theme-night-sea:not(.gn-night-mode) .FBX__desc { color: #cad9ec; }
html.HM-theme-night-sea:not(.gn-night-mode) .FLX-replyForm {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.12);
}
html.HM-theme-night-sea:not(.gn-night-mode) .FLX-linkPreview {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.15);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .FLX-linkPreview:hover { background: rgba(255,255,255,0.08); }

/* Radar */
html.HM-theme-radar:not(.gn-night-mode) .FBX,
html.HM-theme-radar:not(.gn-night-mode) .FLX-reply,
html.HM-theme-radar:not(.gn-night-mode) .FLX-embed,
html.HM-theme-radar:not(.gn-night-mode) .FLX-replyForm,
html.HM-theme-radar:not(.gn-night-mode) .FLX-linkPreview,
html.HM-theme-radar:not(.gn-night-mode) .FBX--member,
html.HM-theme-radar:not(.gn-night-mode) .FBX--boat,
html.HM-theme-radar:not(.gn-night-mode) .FBX--event {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.35);
  color: #9fffb0;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .FLX-system-post {
  background: linear-gradient(135deg, rgba(0,255,136,0.1) 0%, rgba(0,0,0,0.85) 100%);
  border-left: 3px solid #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .FBX--member-intro { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .FBX__title { color: #00ff88; text-shadow: 0 0 6px #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .FBX--member__btn {
  background: rgba(0,255,136,0.2);
  color: #00ff88;
  border: 1px solid #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
}

/* Radar : fallback */
html.HM-theme-radar:not(.gn-night-mode) .FLX-post {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.35);
  color: #9fffb0;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .FLX-post--error {
  border-color: #ff2cef;
  color: #ff2cef;
  background: rgba(255,44,239,0.1);
}


/* ─────── VEILLEUR DE QUAI (.VQ-*) ─────── */

/* NIGHT-SEA */
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-page,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-hero-title,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-section-title,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-form-title,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-card-boat { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-hero-subtitle,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-card-owner,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-card-meta { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-hero {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(10px);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-hero-chip {
  background: rgba(255,255,255,0.10);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-back {
  background: rgba(255,255,255,0.07);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-back:hover { background: rgba(255,255,255,0.12); }
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(8px);
  color: #e0eaf5;
  box-shadow: 0 6px 20px rgba(0,0,0,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-card--tempete {
  background: rgba(239,68,68,0.10);
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-form {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(10px);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-label { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-select,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-textarea,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-input,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-select option {
  background: rgba(255,255,255,0.06);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-textarea::placeholder,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-input::placeholder { color: #6b8aa8; }
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-radio-card {
  background: rgba(255,255,255,0.05);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-radio-card:has(input:checked) {
  background: rgba(99,226,255,0.18);
  border-color: #63e2ff;
  color: #63e2ff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-auth-group,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-auth-chip {
  background: rgba(255,255,255,0.06);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-auth-chip:has(input:checked) {
  background: rgba(99,226,255,0.15);
  border-color: #63e2ff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-distress-btn,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-distress-btn--round {
  background: linear-gradient(135deg, #ef4444, #f87171);
  color: #fff;
  box-shadow: 0 4px 20px rgba(239,68,68,0.4);
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-alert--error {
  background: rgba(239,68,68,0.18);
  color: #ff8a8a;
  border: 1px solid rgba(239,68,68,0.35);
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-alert--success {
  background: rgba(34,197,94,0.18);
  color: #86efac;
  border: 1px solid rgba(34,197,94,0.35);
}
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-preset-chip,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-checklist-readonly li,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-audio-btn,
html.HM-theme-night-sea:not(.gn-night-mode) .VQ-flash-badge {
  background: rgba(255,255,255,0.06);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}

/* RADAR */
html.HM-theme-radar:not(.gn-night-mode) .VQ-hero,
html.HM-theme-radar:not(.gn-night-mode) .VQ-card,
html.HM-theme-radar:not(.gn-night-mode) .VQ-form,
html.HM-theme-radar:not(.gn-night-mode) .VQ-select,
html.HM-theme-radar:not(.gn-night-mode) .VQ-textarea,
html.HM-theme-radar:not(.gn-night-mode) .VQ-input,
html.HM-theme-radar:not(.gn-night-mode) .VQ-radio-card,
html.HM-theme-radar:not(.gn-night-mode) .VQ-auth-chip,
html.HM-theme-radar:not(.gn-night-mode) .VQ-preset-chip,
html.HM-theme-radar:not(.gn-night-mode) .VQ-audio-btn {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.35);
  color: #9fffb0;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .VQ-hero-title,
html.HM-theme-radar:not(.gn-night-mode) .VQ-section-title,
html.HM-theme-radar:not(.gn-night-mode) .VQ-form-title,
html.HM-theme-radar:not(.gn-night-mode) .VQ-card-boat {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  text-shadow: 0 0 6px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .VQ-distress-btn,
html.HM-theme-radar:not(.gn-night-mode) .VQ-distress-btn--round {
  background: #ff2cef;
  color: #000;
  box-shadow: 0 0 20px #ff2cef;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  border-radius: 0;
  animation: radar-pulse-alert 1.4s ease-in-out infinite;
}
html.HM-theme-radar:not(.gn-night-mode) .VQ-alert--error {
  background: rgba(255,44,239,0.15);
  color: #ff2cef;
  border: 1px solid #ff2cef;
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .VQ-alert--success {
  background: rgba(0,255,136,0.15);
  color: #00ff88;
  border: 1px solid #00ff88;
  border-radius: 0;
}


/* ═══════════════════════════════════════════════════════════════════
   PAGES : recherche membres / annuaire pro / créer événement / profil
   Approche : couvrir fond ET texte ensemble (règle contraste)
   ═══════════════════════════════════════════════════════════════════ */

/* ─── ANNUAIRE PRO (.AP-*) — via vars --ap-* ─── */
html.HM-theme-night-sea:not(.gn-night-mode) {
  --ap-blue:        #63e2ff;
  --ap-blue-hover:  #8de9ff;
  --ap-header-bg:   rgba(10,26,46,0.9);
  --ap-header-text: #ffffff;
  --ap-text:        #e0eaf5;
  --ap-muted:       #b5c7dd;
  --ap-card:        rgba(255,255,255,0.04);
  --ap-bg:          transparent;
  --ap-bd:          rgba(255,255,255,0.12);
  --ap-alert:       #ff8a8a;
}
html.HM-theme-radar:not(.gn-night-mode) {
  --ap-blue:        #00ff88;
  --ap-blue-hover:  #80ffc4;
  --ap-header-bg:   #000;
  --ap-header-text: #00ff88;
  --ap-text:        #9fffb0;
  --ap-muted:       #5fa870;
  --ap-card:        rgba(0,0,0,0.85);
  --ap-bg:          transparent;
  --ap-bd:          rgba(0,255,136,0.35);
  --ap-alert:       #ff2cef;
}

/* ─── FORMULAIRES GN (utilisés par recherche_membres + créer dispo + autres) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .GN-form,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-form-field {
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .GN-form-label,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-h2 { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .GN-form-input,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-form-textarea,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-form-select,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-input,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-textarea,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-select {
  background: rgba(255,255,255,0.06);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .GN-form-input::placeholder,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-input::placeholder,
html.HM-theme-night-sea:not(.gn-night-mode) .GN-textarea::placeholder { color: #6b8aa8; }
html.HM-theme-night-sea:not(.gn-night-mode) .GN-sep { border-top-color: rgba(255,255,255,0.1); }

/* ─── RECHERCHE MEMBRES (.RM-*) — fond glass + texte clair ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .RM-members-grid { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .RM-member-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  color: #e0eaf5;
  backdrop-filter: blur(8px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .RM-member-name { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .RM-meta,
html.HM-theme-night-sea:not(.gn-night-mode) .RM-distance { color: #b5c7dd; }

/* ─── CRÉER ÉVÉNEMENT (.CrEv-*) — beaucoup de blocs ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-block,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-step,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-recap,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-photoCard,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-tpl-card,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-tpl-banner,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-route-preview,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-suggest-route,
html.HM-theme-night-sea:not(.gn-night-mode) .CT-block {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  color: #e0eaf5;
  backdrop-filter: blur(8px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-hint,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-subtitle { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-chip,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-loc-switch__opt,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-mod {
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.15);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-checkbox { accent-color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-stepsBtns,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-actions,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-nav { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-parcours-row,
html.HM-theme-night-sea:not(.gn-night-mode) .CrEv-parcours-label { color: #cad9ec; }

/* ─── PROFIL (.PR-*) — bloc relation + dropdown + photos + sortable ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .PR-relation-area { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .PR-relation-badge {
  background: rgba(255,255,255,0.08);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .PR-rel-dropdown-btn {
  background: rgba(255,255,255,0.07);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .PR-rel-dropdown-btn:hover { background: rgba(255,255,255,0.12); }
html.HM-theme-night-sea:not(.gn-night-mode) .PR-rel-dropdown-menu {
  background: rgba(10,26,46,0.96);
  border: 1px solid rgba(255,255,255,0.15);
  color: #e0eaf5;
  backdrop-filter: blur(20px);
  box-shadow: 0 12px 40px rgba(0,0,0,0.5);
}
html.HM-theme-night-sea:not(.gn-night-mode) .PR-rel-dropdown-menu button {
  background: transparent;
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .PR-rel-dropdown-menu button:hover { background: rgba(255,255,255,0.08); }
html.HM-theme-night-sea:not(.gn-night-mode) .PR-rel-dropdown-menu hr { border-color: rgba(255,255,255,0.12); }
html.HM-theme-night-sea:not(.gn-night-mode) .PR-sortable-item {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .PR-modal {
  background: rgba(0,0,0,0.85);
  backdrop-filter: blur(8px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .PR-modal-close,
html.HM-theme-night-sea:not(.gn-night-mode) .PR-prevBtn,
html.HM-theme-night-sea:not(.gn-night-mode) .PR-nextBtn {
  background: rgba(255,255,255,0.15);
  color: #ffffff;
  border: 1px solid rgba(255,255,255,0.2);
}

/* RADAR — minima pour ces blocs */
html.HM-theme-radar:not(.gn-night-mode) .GN-form-input,
html.HM-theme-radar:not(.gn-night-mode) .GN-form-textarea,
html.HM-theme-radar:not(.gn-night-mode) .GN-form-select,
html.HM-theme-radar:not(.gn-night-mode) .GN-input,
html.HM-theme-radar:not(.gn-night-mode) .GN-textarea,
html.HM-theme-radar:not(.gn-night-mode) .GN-select,
html.HM-theme-radar:not(.gn-night-mode) .RM-member-card,
html.HM-theme-radar:not(.gn-night-mode) .CrEv-block,
html.HM-theme-radar:not(.gn-night-mode) .CrEv-step,
html.HM-theme-radar:not(.gn-night-mode) .CrEv-recap,
html.HM-theme-radar:not(.gn-night-mode) .CrEv-photoCard,
html.HM-theme-radar:not(.gn-night-mode) .CrEv-tpl-card,
html.HM-theme-radar:not(.gn-night-mode) .CrEv-chip,
html.HM-theme-radar:not(.gn-night-mode) .CT-block,
html.HM-theme-radar:not(.gn-night-mode) .PR-relation-badge,
html.HM-theme-radar:not(.gn-night-mode) .PR-rel-dropdown-btn,
html.HM-theme-radar:not(.gn-night-mode) .PR-rel-dropdown-menu,
html.HM-theme-radar:not(.gn-night-mode) .PR-sortable-item {
  background: rgba(0,0,0,0.85);
  color: #9fffb0;
  border: 1px solid rgba(0,255,136,0.35);
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .RM-member-name,
html.HM-theme-radar:not(.gn-night-mode) .GN-form-label,
html.HM-theme-radar:not(.gn-night-mode) .GN-h2 {
  color: #00ff88;
  text-shadow: 0 0 6px #00ff88;
}
/* --card-bg var qu'IN.css consomme → on la redéfinit aussi */
html.HM-theme-night-sea:not(.gn-night-mode) {
  --card-bg: rgba(255,255,255,0.05);
}

/* ─── BLOC CAPITAINERIE ACCUEIL (.IN-capCard + visual + tides) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .IN-accueil .IN-capCard {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.12);
  backdrop-filter: blur(8px);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .IN-accueil .IN-capVisualEmpty {
  color: rgba(255,255,255,0.5);
}
html.HM-theme-night-sea:not(.gn-night-mode) .IN-accueil .IN-capTitle { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-accueil .IN-capSubtitle { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-accueil .IN-capMeta { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-accueil .IN-capBody { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-capTides {
  background: rgba(99,226,255,0.12);
  border: 1px solid rgba(99,226,255,0.25);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .IN-capTide--high { color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-capTide--low { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .IN-capTides-approx { color: #fca5a5; }

/* ─── BLOC MÉTÉO ACCUEIL v1 (#GM-weatherBox + .GM-meteo-*) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .IN-weather,
html.HM-theme-night-sea:not(.gn-night-mode) #GM-weatherBox,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-meteo {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  color: #e0eaf5;
  backdrop-filter: blur(8px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .GM-meteo-city,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-meteo-updated { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-meteo-day {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.12);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .GM-meteo-day:hover { background: rgba(99,226,255,0.15); }

/* ─── Bloc météo v1 (PC) — force fond dark partout, même contre inline JS ─── */
/* Wrapper IN-weather, GM-meteo, sous-blocs : !important pour battre les inline */
html.HM-theme-night-sea:not(.gn-night-mode) .IN-weather,
html.HM-theme-night-sea:not(.gn-night-mode) #GM-weatherBox,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-meteo,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-meteo-detail-grid,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-meteo-detail {
  background: rgba(10,26,46,0.92) !important;
  color: #e0eaf5 !important;
}
/* Cartes des jours */
html.HM-theme-night-sea:not(.gn-night-mode) .GM-meteo-day {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  color: #e0eaf5 !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .GM-meteo-day.is-selected {
  background: rgba(99,226,255,0.18) !important;
  border-color: #63e2ff !important;
}
/* Lignes horaires (.GM-h) — JS injecte style="background:hsl(...)" très clair → on force */
html.HM-theme-night-sea:not(.gn-night-mode) .GM-h {
  background: rgba(255,255,255,0.06) !important;
  color: #e0eaf5 !important;
  border-radius: 6px;
}
html.HM-theme-night-sea:not(.gn-night-mode) .GM-h *,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-h-top,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-h-bot,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-h-temp,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-h-wind,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-h-dim,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-h-rain,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-h-wave { color: #e0eaf5 !important; }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-hours-toggle {
  background: rgba(99,226,255,0.15) !important;
  border: 1px solid rgba(99,226,255,0.4) !important;
  color: #63e2ff !important;
}

/* ─── BLOC MARÉE / PORTE ACCUEIL v1 (#GM-tidesBox, #GM-marineWindow) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .IN-tides,
html.HM-theme-night-sea:not(.gn-night-mode) #GM-tidesBox,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-marineWindow,
html.HM-theme-night-sea:not(.gn-night-mode) #GM-marineWindow {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  color: #e0eaf5;
  backdrop-filter: blur(8px);
}
html.HM-theme-night-sea:not(.gn-night-mode) #GM-tidesContent,
html.HM-theme-night-sea:not(.gn-night-mode) .gm-tides-block { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .gm-tides-block h3 { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-tide-line { color: #cad9ec; border-bottom: 1px solid rgba(255,255,255,0.05); padding: 4px 0; }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-marineWindow-body p,
html.HM-theme-night-sea:not(.gn-night-mode) .GM-marineWindow-row { color: #cad9ec; }
html.HM-theme-night-sea:not(.gn-night-mode) .GM-marineWindow-row strong { color: #ffffff; }

/* ─── BLOCS GÉNÉRIQUES (.GN-block, .GN-card, etc.) ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .GN-block-title,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-section-title { color: #ffffff; }

/* ─── BOUTONS D'ACCUEIL : "ouvrir capit", "gérer ma fiche", etc. ─── */
html.HM-theme-night-sea:not(.gn-night-mode) .IN-capBadge,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-capAction,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-navyStat,
html.HM-theme-night-sea:not(.gn-night-mode) .IN-tracemapStat {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.12);
  color: #e0eaf5;
  backdrop-filter: blur(8px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .IN-capAction:hover {
  background: rgba(99,226,255,0.15);
  border-color: rgba(99,226,255,0.35);
  color: #63e2ff;
}


/* ═══════════ RADAR — overrides minimaux pour ces blocs ═══════════ */
html.HM-theme-radar:not(.gn-night-mode) .IN-agendaCell,
html.HM-theme-radar:not(.gn-night-mode) .IN-agendaNav,
html.HM-theme-radar:not(.gn-night-mode) .IN-agendaLocked,
html.HM-theme-radar:not(.gn-night-mode) .CG-card,
html.HM-theme-radar:not(.gn-night-mode) .CG--list.CG--listV2,
html.HM-theme-radar:not(.gn-night-mode) .IN-gazetteThumb,
html.HM-theme-radar:not(.gn-night-mode) .IN-homeFlux #fluxList .GN-card,
html.HM-theme-radar:not(.gn-night-mode) .IN-weather,
html.HM-theme-radar:not(.gn-night-mode) #GM-weatherBox,
html.HM-theme-radar:not(.gn-night-mode) .GM-meteo,
html.HM-theme-radar:not(.gn-night-mode) .GM-meteo-day,
html.HM-theme-radar:not(.gn-night-mode) .IN-tides,
html.HM-theme-radar:not(.gn-night-mode) #GM-tidesBox,
html.HM-theme-radar:not(.gn-night-mode) #GM-marineWindow,
html.HM-theme-radar:not(.gn-night-mode) .IN-capBadge,
html.HM-theme-radar:not(.gn-night-mode) .IN-capAction,
html.HM-theme-radar:not(.gn-night-mode) .IN-navyStat,
html.HM-theme-radar:not(.gn-night-mode) .IN-tracemapStat {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.35);
  color: #9fffb0;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .IN-agendaCell.is-today {
  border-color: #00ff88;
  box-shadow: inset 0 0 0 1px #00ff88;
  color: #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .IN-agendaCell.is-hasEvent {
  background: rgba(0,255,136,0.18);
  border-color: #00ff88;
  color: #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .CG-title,
html.HM-theme-radar:not(.gn-night-mode) .IN-gazetteTitle,
html.HM-theme-radar:not(.gn-night-mode) .gm-tides-block h3 {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  text-shadow: 0 0 6px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .CG-excerpt,
html.HM-theme-radar:not(.gn-night-mode) .IN-gazetteChapo,
html.HM-theme-radar:not(.gn-night-mode) .GM-tide-line { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .CL-formError {
  background: rgba(255,44,239,0.15);
  color: #ff2cef;
  border-color: #ff2cef;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
  text-transform: uppercase;
}
html.HM-theme-radar:not(.gn-night-mode) .CL-input-error {
  border-color: #ff2cef !important;
  box-shadow: 0 0 12px rgba(255,44,239,0.4) !important;
}


/* ─────── 9. FICHE OBJET / BATEAU (.OBJ-*) ─────── */
/* OBJ.css utilise déjà des custom properties : on les redéfinit par thème */

/* NIGHT-SEA */
html.HM-theme-night-sea:not(.gn-night-mode) {
  --obj-accent: #63e2ff;
  --obj-border: rgba(255,255,255,0.12);
  --obj-muted:  #8ca3bf;
  --obj-bg:     rgba(255,255,255,0.04);
  --obj-bg-soft:rgba(255,255,255,0.08);
  --obj-chip:   rgba(99,226,255,0.15);
  --obj-danger: rgba(239,68,68,0.18);
  --obj-danger-b: rgba(239,68,68,0.4);
  --obj-overlay: rgba(0,0,0,0.85);
  --obj-text:   #e0eaf5;
  /* Cartouches FLX / FBX (flux accueil + capit) */
  --flx-card-bg:     rgba(255,255,255,0.05);
  --flx-card-border: rgba(255,255,255,0.15);
  --flx-card-text:   #e0eaf5;
  /* Cards génériques (profil, dispo, formulaires inline) */
  --card-bg:         rgba(255,255,255,0.05);
  --card-bg-soft:    rgba(255,255,255,0.08);
  --card-border:     rgba(255,255,255,0.12);
  --card-text:       #e0eaf5;
  --card-text-muted: #b5c7dd;
  /* Cartouche relation badge */
  --cr-badge-bg:     rgba(99,226,255,0.15);
  --cr-badge-text:   #63e2ff;
}
/* Hover du bouton .cartouche-relation .btn en night-sea */
html.HM-theme-night-sea:not(.gn-night-mode) .cartouche-relation .btn {
  border-color: rgba(99,226,255,0.4);
  color: #63e2ff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .cartouche-relation .btn:hover {
  background: rgba(99,226,255,0.2);
  color: #ffffff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-wrap,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-section {
  backdrop-filter: blur(8px);
  color: #e0eaf5;
  box-shadow: 0 6px 20px rgba(0,0,0,0.3);
}
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-title { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-h2,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-h3 { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-md,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-infos li { color: #cad9ec; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-meta { color: #b5c7dd; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-chip { color: #63e2ff; border: 1px solid rgba(99,226,255,0.3); }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-dot { color: #63e2ff; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-backBtn,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-backBtn--inside {
  background: rgba(255,255,255,0.07);
  color: #e0eaf5;
  border: 1px solid rgba(255,255,255,0.15);
}
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-backBtn:hover { background: rgba(255,255,255,0.12); }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-aside { color: #e0eaf5; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-mainPhoto,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-mainPlaceholder,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-thumb,
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-album-card {
  background: rgba(255,255,255,0.04) !important;
  border-color: rgba(255,255,255,0.12);
}
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-album-box {
  background: rgba(10,26,46,0.96) !important;
  border: 1px solid rgba(255,255,255,0.12);
  color: #e0eaf5;
  backdrop-filter: blur(20px);
}
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-lightbox-ui { background: rgba(0,0,0,0.85) !important; color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-suggestList {
  background: rgba(10,26,46,0.96) !important;
  border: 1px solid rgba(255,255,255,0.15);
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-suggestList li:hover { background: rgba(99,226,255,0.12); }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-suggestList-port { color: #8ca3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-ghost { background: rgba(255,255,255,0.06); color: #e0eaf5; border-color: rgba(255,255,255,0.15); }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-btn {
  background: linear-gradient(135deg, #1e5578, #3498c4);
  color: #fff;
}
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-btn-light { background: rgba(255,255,255,0.08); color: #e0eaf5; border: 1px solid rgba(255,255,255,0.15); }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-kpis {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  color: #e0eaf5;
}

/* RADAR */
html.HM-theme-radar:not(.gn-night-mode) {
  --obj-accent: #00ff88;
  --obj-border: rgba(0,255,136,0.35);
  --obj-muted:  #5fa870;
  --obj-bg:     rgba(0,0,0,0.85);
  --obj-bg-soft:rgba(0,255,136,0.08);
  --obj-chip:   rgba(0,255,136,0.15);
  --obj-danger: rgba(255,44,239,0.15);
  --obj-danger-b: #ff2cef;
  --obj-overlay: rgba(0,0,0,0.95);
  --obj-text:   #9fffb0;
  /* Cartouches FLX / FBX (flux accueil + capit) */
  --flx-card-bg:     rgba(0,0,0,0.85);
  --flx-card-border: rgba(0,255,136,0.35);
  --flx-card-text:   #9fffb0;
  /* Cards génériques */
  --card-bg:         rgba(0,0,0,0.85);
  --card-bg-soft:    rgba(0,255,136,0.08);
  --card-border:     rgba(0,255,136,0.35);
  --card-text:       #9fffb0;
  --card-text-muted: #5fa870;
  /* Cartouche relation badge */
  --cr-badge-bg:     rgba(0,255,136,0.15);
  --cr-badge-text:   #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .cartouche-relation .btn {
  background: transparent;
  color: #00ff88;
  border: 1px solid #00ff88;
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .cartouche-relation .btn:hover {
  background: rgba(0,255,136,0.18);
  color: #00ff88;
  text-shadow: 0 0 6px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-wrap,
html.HM-theme-radar:not(.gn-night-mode) .OBJ-section {
  color: #9fffb0;
  box-shadow: 0 0 14px rgba(0,255,136,0.1);
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-title {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-shadow: 0 0 10px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-h2,
html.HM-theme-radar:not(.gn-night-mode) .OBJ-h3 {
  color: #00ff88;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  text-shadow: 0 0 6px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-md,
html.HM-theme-radar:not(.gn-night-mode) .OBJ-infos li { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-meta { color: #9fffb0; }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-chip {
  color: #00ff88;
  border: 1px solid #00ff88;
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-dot { color: #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-backBtn,
html.HM-theme-radar:not(.gn-night-mode) .OBJ-backBtn--inside {
  background: transparent;
  color: #00ff88;
  border: 1px solid #00ff88;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
  text-transform: uppercase;
  letter-spacing: 1px;
  text-shadow: 0 0 6px #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-backBtn:hover { background: rgba(0,255,136,0.12); box-shadow: 0 0 12px rgba(0,255,136,0.4); }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-mainPhoto,
html.HM-theme-radar:not(.gn-night-mode) .OBJ-mainPlaceholder,
html.HM-theme-radar:not(.gn-night-mode) .OBJ-thumb,
html.HM-theme-radar:not(.gn-night-mode) .OBJ-album-card {
  background: #000 !important;
  border: 1px solid rgba(0,255,136,0.4);
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-album-box {
  background: #000 !important;
  border: 1px solid #00ff88;
  color: #9fffb0;
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-lightbox-ui { background: rgba(0,0,0,0.95) !important; color: #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-suggestList {
  background: #000 !important;
  border: 1px solid #00ff88;
  color: #9fffb0;
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-suggestList li:hover { background: rgba(0,255,136,0.12); }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-suggestList-port { color: #5fa870; }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-ghost {
  background: transparent;
  color: #9fffb0;
  border: 1px solid rgba(0,255,136,0.3);
  border-radius: 0;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-btn {
  background: rgba(0,255,136,0.2);
  color: #00ff88;
  border: 1px solid #00ff88;
  border-radius: 0;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  text-shadow: 0 0 6px #00ff88;
  box-shadow: 0 0 14px rgba(0,255,136,0.35);
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-btn-light {
  background: transparent;
  color: #9fffb0;
  border: 1px solid rgba(0,255,136,0.35);
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-kpis {
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(0,255,136,0.35);
  color: #9fffb0;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}

/* Équipage (.OBJ-crew-*) — styles inline dans view.php, surchargés ici */

/* NIGHT-SEA */
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-crew-card {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  color: #e0eaf5;
}
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-crew-card--pending {
  background: rgba(99,226,255,0.08) !important;
  border-color: rgba(99,226,255,0.3) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-crew-name { color: #ffffff; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-crew-msg { color: #8ca3bf; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-crew-badge--ok { background: rgba(34,197,94,0.2) !important; color: #86efac !important; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-crew-btn {
  background: rgba(255,255,255,0.08) !important;
  border-color: rgba(255,255,255,0.15) !important;
}
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-crew-btn--accept:hover { background: rgba(34,197,94,0.2) !important; }
html.HM-theme-night-sea:not(.gn-night-mode) .OBJ-crew-btn--reject:hover { background: rgba(239,68,68,0.2) !important; }

/* RADAR */
html.HM-theme-radar:not(.gn-night-mode) .OBJ-crew-card {
  background: rgba(0,0,0,0.85) !important;
  border: 1px solid rgba(0,255,136,0.35) !important;
  color: #9fffb0;
  border-radius: 0;
  font-family: 'Share Tech Mono', monospace;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-crew-card--pending {
  background: rgba(0,234,255,0.08) !important;
  border-color: #00eaff !important;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-crew-name { color: #00ff88; text-transform: uppercase; letter-spacing: 1px; }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-crew-msg { color: #5fa870; }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-crew-badge--ok {
  background: rgba(0,255,136,0.2) !important;
  color: #00ff88 !important;
  border: 1px solid #00ff88;
  border-radius: 0;
  text-transform: uppercase;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-crew-btn {
  background: transparent !important;
  border: 1px solid rgba(0,255,136,0.35) !important;
  border-radius: 0;
  color: #00ff88;
}
html.HM-theme-radar:not(.gn-night-mode) .OBJ-crew-btn--accept { color: #00ff88; }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-crew-btn--accept:hover { background: rgba(0,255,136,0.2) !important; box-shadow: 0 0 10px rgba(0,255,136,0.4); }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-crew-btn--reject { color: #ff2cef; }
html.HM-theme-radar:not(.gn-night-mode) .OBJ-crew-btn--reject:hover { background: rgba(255,44,239,0.15) !important; box-shadow: 0 0 10px rgba(255,44,239,0.4); }
