/* ============================================================
   MOI V2 · le hub (Lot B, trio hub-moi). Identité FIXE Amalfi
   Coast : fond #DFDED3, titres/accent #052B61, encre #31302F.
   La rubrique ne tourne pas avec les couvertures (SPEC §1).
   ============================================================ */

#e-theme.mv2-actif > :not(#moi-v2) { display: none !important; }
#e-theme.mv2-actif { padding: 0 !important; background: #D8DADC; min-height: 100dvh; }
/* !important : la v1 pose un display en ligne sur l'en-tête du groupe */
body:has(#e-theme.actif.mv2-actif) header,
body:has(#e-theme.actif.mv2-actif) #entete-moi { display: none !important; }
body:has(#e-theme.actif.mv2-actif),
html:has(#e-theme.actif.mv2-actif) { background: #D8DADC; }
/* le bandeau v1 « Tu consultes le… » recouvrait l'en-tête Moi : masqué
   ici, re-dessiné dans le flux du hub (.mv2-bandeau) */
body:has(#e-theme.actif.mv2-actif) #bandeau-date { display: none !important; }
/* même dessin INTÉGRÉ que la couverture (le slab pleine largeur est
   retoqué par le handoff) : coin 14, encre à 7 %, liseré 14 % */
.mv2-bandeau[hidden] { display: none !important; }
.mv2-bandeau {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-top: 6px;
  padding: 9px 14px;
  border-radius: 14px;
  background: rgba(25, 17, 53, 0.07);
  box-shadow: inset 0 0 0 1.5px rgba(25, 17, 53, 0.14);
  color: #191135;
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  flex: none;
}
.mv2-bandeau button {
  background: none;
  border: 0;
  color: #052B61;
  font: inherit;
  font-weight: 600;
  letter-spacing: inherit;
  text-transform: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
  padding: 0;
  white-space: nowrap;
}

#moi-v2 {
  display: flex;
  flex-direction: column;
  height: calc(100dvh - var(--mv2-barre, 135px));
  background: #D8DADC;
  color: #191135;
  font-family: 'Hanken Grotesk', system-ui, sans-serif;
  padding: calc(env(safe-area-inset-top, 14px) + 50px) 20px 14px; /* Marine 10/09 : au niveau des titres d'Aujourd'hui */
  gap: 18px;
  box-sizing: border-box;
}
.mv2-entete { display: flex; align-items: center; justify-content: space-between; flex: none; }
.mv2-mono { font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; }
.mv2-date { font-family: 'JetBrains Mono', monospace; font-size: 11px; }

.mv2-identite { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; flex: none; padding-top: 6px; margin-bottom: 16px; /* l'air avant le sélecteur (Marine 10/09) */ }
.mv2-pastille {
  width: 76px;
  height: 76px;
  border-radius: 999px;
  box-shadow: inset 0 0 0 1.5px rgba(25, 17, 53, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  color: #052B61;
}
.mv2-prenom {
  margin: 0;
  font-family: 'Bricolage Grotesque', system-ui;
  font-weight: 800;
  letter-spacing: -0.03em;
  font-size: 50px;
  line-height: 0.95;
  color: #052B61;
}
.mv2-handle { font-family: 'JetBrains Mono', monospace; font-size: 13px; }
.mv2-positions { font-family: 'JetBrains Mono', monospace; font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase; white-space: nowrap; }

.mv2-selecteur { display: flex; align-items: flex-end; gap: 4px; flex: none; border-bottom: 1px solid rgba(25, 17, 53, 0.16); padding-top: 4px; }
.mv2-selecteur button {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  border: 0;
  background: none;
  padding: 0;
  cursor: pointer;
  color: #191135;
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 400;
}
.mv2-selecteur button.on { font-weight: 600; }
.mv2-selecteur button .filet { width: 100%; height: 2px; border-radius: 999px; background: transparent; }
.mv2-selecteur button.on .filet { background: #052B61; }

.mv2-contenu { flex: 1; min-height: 0; overflow: auto; display: flex; flex-direction: column; gap: 22px; }
.mv2-h34 {
  margin: 0;
  font-family: 'Bricolage Grotesque', system-ui;
  font-weight: 800;
  letter-spacing: -0.03em;
  font-size: 34px;
  line-height: 0.95;
  color: #052B61;
}
.mv2-rang { display: flex; flex-direction: column; gap: 7px; padding: 11px 0; border-bottom: 1px solid rgba(25, 17, 53, 0.16); }
.mv2-rang-haut { display: flex; align-items: baseline; gap: 12px; }
.mv2-element { font-family: 'JetBrains Mono', monospace; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; color: #052B61; width: 62px; flex: none; }
.mv2-glyphes { font-size: 17px; letter-spacing: 0.18em; flex: 1; }
.mv2-compte { font-family: 'JetBrains Mono', monospace; font-size: 15px; }
.mv2-piste { display: block; height: 3px; border-radius: 999px; background: rgba(25, 17, 53, 0.16); }
.mv2-barre { display: block; height: 3px; border-radius: 999px; background: #052B61; }

.mv2-bouton {
  min-height: 44px;
  border: 0;
  border-radius: 999px;
  background: #052B61;
  color: #D8DADC;
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  cursor: pointer;
}

/* la pleine page « tout mon thème » (provisoire : la lecture v1,
   en attendant le trio mon-theme) — règle Marine : pleine page,
   retour toujours possible */
.mv2-pleine {
  position: fixed;
  inset: 0;
  z-index: 40;
  background: #D8DADC;
  color: #191135;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  padding: calc(env(safe-area-inset-top, 14px) + 6px) 20px calc(env(safe-area-inset-bottom, 0px) + 118px); /* audit 15/09 : degager la barre d'onglets */
}
.mv2-pleine-tete { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.mv2-retour {
  border: 0;
  background: none;
  padding: 0 8px 0 0;
  cursor: pointer;
  font-size: 22px;
  color: #191135;
  font-family: inherit;
}

/* ============================================================
   MON THÈME · la page de nuit (Bosphorus nuit, trio mon-theme) :
   slider à rail, retour « ‹ Moi », sans barre d'onglets
   ============================================================ */
.mvt-nuit {
  position: fixed;
  inset: 0;
  z-index: 40;
  background: #D8DADC;
  color: #191135;
  display: flex;
  flex-direction: column;
  font-family: 'Hanken Grotesk', system-ui, sans-serif;
}
.mvt-retour {
  border: 0;
  background: none;
  padding: 0 0 26px;
  cursor: pointer;
  min-height: 44px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
  letter-spacing: 0.1em;
  color: #191135;
  text-align: left;
  align-self: flex-start;
  flex: none;
}
.mvt-defile {
  display: flex;
  flex: 1;
  min-height: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.mvt-defile::-webkit-scrollbar { display: none; }
.mvt-page {
  flex: 0 0 100%;
  scroll-snap-align: start;
  scroll-snap-stop: always;
  display: flex;
  flex-direction: column;
  gap: 30px; /* rythme uniforme, resserré (Marine 10/09) */
  padding: calc(env(safe-area-inset-top, 14px) + 22px) 24px 8px; /* le retour vit dans la page */
  overflow-y: auto;
  box-sizing: border-box;
}
.mvt-h50 {
  margin: 0;
  font-family: 'Bricolage Grotesque', system-ui;
  font-weight: 800;
  letter-spacing: -0.03em;
  font-size: 50px;
  line-height: 0.95;
  color: #191135;
}
.mvt-centre { flex: 1; display: flex; flex-direction: column; justify-content: center; gap: 22px; min-height: 0; }
.mvt-lignes { display: flex; flex-direction: column; gap: 10px; }
.mvt-ligne-pos { display: flex; align-items: center; gap: 12px; padding-bottom: 10px; border-bottom: 1px solid rgba(25, 17, 53, 0.16); }
.mvt-ligne-pos:last-child { border-bottom: 0; }
.mvt-glyphe20 { font-size: 20px; }
/* colonne planète (nommée) à largeur fixe pour que les signes s'alignent */
.mvt-planete { flex: none; width: 104px; font-size: 17px; font-weight: 600; color: #052B61; }
.mvt-signe17 { font-size: 17px; font-weight: 600; }
.mvt-maison-d { font-size: 17px; color: rgba(25, 17, 53, 0.7); margin-left: auto; }
.mvt-naissance { font-family: 'JetBrains Mono', monospace; font-size: 13px; color: rgba(25, 17, 53, 0.7); }
/* le tempérament de nuit */
.mvt-rang-t { display: flex; flex-direction: column; gap: 7px; padding: 11px 0; border-bottom: 1px solid rgba(25, 17, 53, 0.16); }
.mvt-rang-t-haut { display: flex; align-items: baseline; gap: 12px; }
.mvt-rang-t .mvt-element { font-family: 'JetBrains Mono', monospace; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; color: #191135; width: 62px; flex: none; }
.mvt-glyphes-t { font-size: 17px; letter-spacing: 0.18em; flex: 1; }
.mvt-compte { font-family: 'JetBrains Mono', monospace; font-size: 15px; }
.mvt-piste { display: block; height: 3px; border-radius: 999px; background: rgba(25, 17, 53, 0.16); }
.mvt-barre { display: block; height: 3px; border-radius: 999px; background: #052B61; }
/* un écran par corps */
.mvt-tete-corps { display: flex; flex-direction: column; gap: 12px; flex: none; }
/* la page est passée en CLAIR (043dc42) : le blanc d'époque nuit était
   illisible sur le fond Ocean (retour Marine 12/09) */
.mvt-sous-corps { display: flex; align-items: center; gap: 7px; font-family: 'JetBrains Mono', monospace; font-size: 15px; letter-spacing: 0.06em; color: rgba(25, 17, 53, 0.55); }
.mvt-glyphe17 { font-size: 17px; }
.mvt-blocs { display: flex; flex-direction: column; gap: 30px; }
.mvt-bloc { display: flex; flex-direction: column; gap: 10px; flex: none; }
.mvt-intertitre { font-family: 'JetBrains Mono', monospace; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; color: #191135; }
.mvt-p15 { margin: 0; font-size: 15px; line-height: 1.55; color: #191135; }
/* la carte */
.mvt-table { display: flex; flex-direction: column; overflow-y: auto; min-height: 0; }
.mvt-table-rang { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(25, 17, 53, 0.16); }
.mvt-table-corps { font-size: 17px; font-weight: 600; flex: 1; }
.mvt-table-signe { font-size: 15px; color: rgba(25, 17, 53, 0.7); }
/* le pied : renvoi turquoise + rail */
.mvt-pied { flex: none; display: flex; flex-direction: column; gap: 12px; padding: 8px 24px 10px; }
.mvt-ligne-action { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.mvt-renvoi {
  display: flex;
  align-items: center;
  gap: 7px;
  border: 0;
  background: none;
  padding: 0;
  cursor: pointer;
  font-family: inherit;
  font-size: 17px;
  font-weight: 800;
  color: #052B61;
}
.mvt-renvoi u { text-decoration-thickness: 1.5px; text-underline-offset: 4px; }
.mvt-partage { border: 0; background: none; padding: 0; cursor: pointer; color: #052B61; display: flex; }



/* la page de nuit n'a pas de barre d'onglets (SPEC) */
body:has(.mvt-nuit) nav { display: none !important; }

/* ==== les onglets du hub (Lot B) ==== */
.mv2-mot-orbe { font-family: 'Bricolage Grotesque', system-ui; font-weight: 800; font-size: 17px; line-height: 1; letter-spacing: -0.03em; }
.mv2-label { font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; }
.mv2-p15 { margin: 0; font-size: 15px; line-height: 1.45; }
.mvt-p17 { margin: 0; font-size: 17px; line-height: 1.55; }
/* le carnet */
.mv2-bloc-invite { display: flex; flex-direction: column; gap: 12px; flex: none; }
.mv2-champ { min-height: 44px; border-bottom: 2px solid #DD4408; display: flex; align-items: flex-end; padding-bottom: 8px; }
.mv2-ligne-noter { display: flex; align-items: center; gap: 10px; }
.mv2-pilule-date { display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 14px; border-radius: 999px; background: #052B61; font-size: 15px; font-weight: 600; color: #D8DADC; flex: none; }
.mv2-noter { flex: 1; min-height: 44px; border: 0; border-radius: 999px; background: #052B61; color: #D8DADC; font-family: inherit; font-size: 17px; font-weight: 600; cursor: pointer; }
.mv2-entrees { display: flex; flex-direction: column; gap: 14px; flex: none; }
.mv2-entree { display: flex; flex-direction: column; gap: 6px; padding-bottom: 12px; border-bottom: 1px solid rgba(25, 17, 53, 0.16); }
.mv2-entree-date { font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: #052B61; }
.mv2-entree-ciel { font-family: 'JetBrains Mono', monospace; font-size: 11px; color: rgba(49, 48, 47, 0.7); }
.mv2-ligne-export { display: flex; gap: 10px; }
.mv2-export { flex: 1; min-height: 44px; border: 1.5px solid #052B61; border-radius: 999px; background: none; color: #052B61; font-family: inherit; font-size: 15px; font-weight: 600; cursor: pointer; }
/* le calendrier */
.mv2-cal-tete { display: flex; align-items: baseline; justify-content: space-between; flex: none; }
.mv2-cal-nav { font-family: 'JetBrains Mono', monospace; font-size: 13px; color: #052B61; }
.mv2-cal-nav button { border: 0; background: none; color: #052B61; font-size: 17px; cursor: pointer; min-width: 44px; min-height: 44px; padding:4px 8px; font-family: inherit; }
.mv2-grille { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; flex: none; }
.mv2-grille-jour { text-align: center; font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 0.1em; padding-bottom: 4px; }
.mv2-case { position: relative; min-height: 44px; border: 0; background: none; border-radius: 12px; font-family: 'JetBrains Mono', monospace; font-size: 14px; color: #191135; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.mv2-case.auj { background: #052B61; color: #D8DADC; font-weight: 600; }
.mv2-point { position: absolute; bottom: 6px; left: 50%; transform: translateX(-50%); width: 4px; height: 4px; border-radius: 999px; background: #052B61; }
.mv2-case.auj .mv2-point { background: #D8DADC; }
/* retour Marine 10/09 : la saison des éclipses est masquée pour l'instant */
.mv2-porte-eclipses { display: none !important; min-height: 44px; border: 0; border-radius: 999px; background: rgba(25, 17, 53, 0.08); color: #191135; font-family: inherit; font-size: 15px; font-weight: 600; cursor: pointer; flex: none; }
/* les réglages (poudre) */
.mv2-h34-encre { margin: 0; font-family: 'Bricolage Grotesque', system-ui; font-weight: 800; letter-spacing: -0.03em; font-size: 34px; line-height: 0.95; color: #191135; }
.mv2-regl { display: flex; flex-direction: column; gap: 10px; }
.mv2-regl .mv2-label { margin-top: 14px; }
.mv2-regl-rang { display: flex; align-items: center; gap: 12px; min-height: 44px; border-bottom: 1px solid rgba(25, 17, 53, 0.16); cursor: pointer; }
.mv2-regl-lib { flex: 1 1 auto; min-width: 0; font-size: 17px; }
.mv2-regl-val { flex: 0 1 auto; min-width: 0; font-size: 17px; color: #191135; text-align: right; }
.mv2-regl-chevron { font-size: 20px; flex: none; }


/* Marine 10/09 : la nuit passe aux POINTS (comme Aujourd'hui), le
   partage sur la même ligne, à droite ; le CTA Orbe AI vit dans la
   page, sous le dernier paragraphe (variante B) */
.mvt-pied-points {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding: 14px 24px calc(env(safe-area-inset-bottom, 0px) + 10px);
  flex: none;
}
.mvt-cale { display: flex; }
.mvt-cale-droite { justify-content: flex-end; }
.mvt-pied-points .mvt-rail { display: flex; align-items: center; gap: 0; }
.mvt-pied-points .mvt-rail button {
  flex: none;
  width: 13px; /* resserrés à fond (Marine 10/09) */
  height: 22px;
  border: 0;
  background: none;
  border-radius: 999px;
  position: relative;
  padding: 0;
}
.mvt-pied-points .mvt-rail button::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: rgba(25, 17, 53, 0.3);
}
.mvt-pied-points .mvt-rail button.on::before {
  width: 8px;
  height: 8px;
  background: #052B61;
}
.mvt-cta {
  display: flex;
  align-items: center;
  gap: 8px;
  align-self: flex-start;
  border: 0;
  background: none;
  padding: 0;
  min-height: 44px;
  font-family: 'Hanken Grotesk', system-ui;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #052B61;
  cursor: pointer;
  margin-top: 4px;
}
.mvt-cta svg { flex: none; }

/* ============================================================
   LA MÉTÉO DU MOIS (Marine 10/09) : de vraies cases, les glyphes
   du jour dedans, la synthèse chiffrée dessous.
   ============================================================ */
.mv2-case {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 2px;
  min-height: 56px;
  padding-top: 6px;
  box-shadow: inset 0 0 0 1px rgba(25, 17, 53, 0.1);
  border-radius: 10px;
}
.mv2-case-num { font-family: 'JetBrains Mono', monospace; font-size: 14px; line-height: 1; }
.mv2-case.auj .mv2-case-num { font-weight: 600; }
.mv2-case-meteo { font-size: 10px; line-height: 1; letter-spacing: 0.06em; color: #052B61; }
.mv2-case.auj .mv2-case-meteo { color: #D8DADC; }
.mv2-grille { gap: 5px; }
.mv2-meteo { display: flex; flex-direction: column; gap: 8px; flex: none; margin-top: 14px; }
.mv2-meteo-ligne { display: flex; align-items: baseline; gap: 10px; }
.mv2-meteo-g { flex: none; width: 20px; font-size: 14px; color: #052B61; text-align: center; }

/* le petit pop-up d'un jour (météo + Comprendre avec Orbe AI) */
.mv2-voile {
  position: fixed;
  inset: 0;
  z-index: 50;
  background: rgba(25, 17, 53, 0.4);
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.mv2-popjour-carte {
  width: 100%;
  max-width: 430px;
  background: #D8DADC;
  color: #191135;
  border-radius: 22px 22px 0 0;
  padding: 22px 20px calc(env(safe-area-inset-bottom, 0px) + 18px);
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.mv2-popjour-lignes { display: flex; flex-direction: column; gap: 8px; }
.mv2-popjour-fiche {
  border: 0;
  background: none;
  padding: 6px 0 0;
  min-height: 44px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #052B61;
  cursor: pointer;
}

/* les débordements du calendrier : grisés, un tap bascule de mois */
.mv2-case-voisine { opacity: 0.4; }

/* les conversations gardées au journal : une carte titre + renvoi vers
   Orbe AI, plus jamais un bloc de texte (Marine 10/09, 14h43) */
.mv2-entree-conv-tag { font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(25, 17, 53, 0.55); }
.mv2-entree-conv-titre { font-size: 17px; font-weight: 600; line-height: 1.35; color: #191135; margin: 0; }
.mv2-entree-conv-lien { background: none; border: 0; padding: 0; text-align: left; font-family: inherit; font-size: 15px; font-weight: 600; color: #052B61; cursor: pointer; width: max-content; }
.mv2-entree p[hidden] { display: none !important; }

/* Mon theme en CLAIR (Marine 12/09) : titres marine comme le reste */
.mvt-h50 { color: #052B61; }
.mvt-intertitre { color: #052B61; }
