/* Chronique personnelle : mêmes plaques nuit, azur et or que les autres menus.
   Une région à la fois ; seuls le retour et les trois signets restent visibles. */
.screen.panel.chronique-screen { overflow:clip; }
.chronique-screen > .head { min-height:48px; gap:10px; padding-bottom:6px; }
.chronique-screen .panel-title { font-size:30px; }
.chronique-screen .register-back { width:44px; height:44px; flex:none; }
.chronique-screen > .head .mission-tabs { flex:1; align-items:center; gap:8px; border:0; }
.chronique-screen > .head .mission-tabs [aria-selected="true"] { order:-1; margin-right:auto; }
.chronique-screen > .head .mission-tabs [aria-selected="true"]::after { display:none; }
.chronique-screen > .head .mission-tabs [data-action="missions"] { padding:0 4px; font-size:14px; color:#7cddff; }
.chronique-screen .menu-feuille { padding-top:8px; }
.chronique-screen .scroll-area { -webkit-mask-image:none; mask-image:none; padding:14px 0 32px; }
.chronique-screen .chron-consultation { display:flex; flex:none; gap:12px; border-bottom:1px solid #2b516c; }
.chronique-screen .chron-consultation button { flex:1; position:relative; min-height:44px; padding:8px 4px; color:#b7cce1; font:700 16px/1.2 var(--f-texte); }
.chronique-screen .chron-consultation button[aria-pressed="true"] { color:var(--blanc); }
.chronique-screen .chron-consultation button[aria-pressed="true"]::after { content:''; position:absolute; left:4px; right:4px; bottom:0; height:3px; background:#47cfff; }
.chronique-screen .chron-consultation button:focus-visible, .chronique-screen .mission-tabs button:focus-visible, .chronique-screen .chron-regle:focus-visible, .chronique-screen .chron-retour-recit:focus-visible { outline:2px solid #ffd048; outline-offset:-2px; }
.chronique-screen .scroll-area > * { flex:none; }
.chronique-screen .chron.head { grid-template-columns:minmax(0,1fr) 98px; gap:7px 12px; padding:12px 2px 18px; }
.chronique-screen .chron.head h3 { font-size:27px; line-height:1.08; overflow-wrap:anywhere; }
.chronique-screen .chron.head .meta { font-size:14px; line-height:1.35; }
.chronique-screen .chron-prog { padding-left:10px; text-align:center; }
.chronique-screen .chron-prog .lbl { font-size:13px; line-height:1.2; color:#b7cce1; }
.chronique-screen .chron-prog strong { font-size:30px; white-space:nowrap; }
.chronique-screen .chron-page { gap:0; padding:0 2px 8px; }
.chronique-screen .chron-page > .chron { padding-top:0; border-top:0; }
.chronique-screen .chron-journal { display:flex; flex-direction:column; gap:18px; }
.chronique-screen .chron-journal-intro { margin:0; font:500 14px/1.35 var(--f-texte); color:#b7cce1; }
.chronique-screen .chron-journal > .chron:not(.head) { padding-top:14px; border-top:1px solid #24435d; }
.chronique-screen .chron h3 { display:flex; align-items:center; gap:8px; font-size:22px; margin-bottom:12px; }
.chronique-screen .chron h3 > .picon { width:22px; color:#ffd048; }
.chronique-screen .chron h3 > small { margin-left:auto; font:700 14px/1.2 var(--f-texte); color:#ffd048; }
.chronique-screen .chron ul { gap:10px; }
.chronique-screen .chron li { font-size:15px; line-height:1.35; padding-left:20px; overflow-wrap:anywhere; }
.chronique-screen .chron li::before { background:#47cfff; top:.4em; }
.chronique-screen .chron-fait-titre { display:block; font-weight:700; color:var(--blanc); }
.chronique-screen .chron-fait-corps { display:block; margin-top:2px; font-size:14px; color:#b7cce1; }
.chronique-screen .chron-fait-relique { display:block; margin-top:4px; font-size:14px; color:#ffd048; }
.chronique-screen .chron-empty, .chronique-screen .chron-bonus { margin:0 0 10px; font:500 14px/1.4 var(--f-texte); color:#b7cce1; }
.chronique-screen .chron-bonus { color:#ffd048; }
.chronique-screen .chron:has(> .chron-empty:not([hidden])) { padding-block:8px; }
.chronique-screen .chron:has(> .chron-empty:not([hidden])) > h3 { margin-bottom:8px; }
.chronique-screen .chron:has(> .chron-empty:not([hidden])) > p { margin-bottom:6px; }
.chronique-screen .chron details { margin-top:10px; }
.chronique-screen summary { min-height:44px; box-sizing:border-box; padding:12px 2px; color:#7cddff; font:700 15px/1.3 var(--f-texte); cursor:pointer; }
.chronique-screen summary::marker { color:#ffd048; }
.chronique-screen summary:focus-visible { outline:2px solid #ffd048; outline-offset:2px; }
.chronique-screen details[open] > summary { margin-bottom:8px; }
.chronique-screen .chron-recit > summary { color:var(--blanc); font:italic 900 22px/1.2 var(--f-titre); }
.chronique-screen .chron-recit > summary small { display:block; padding:7px 0 0 18px; font:500 14px/1.35 var(--f-texte); color:#b7cce1; }
.chronique-screen .chron-recit .lore-text { padding-top:6px; }
.chronique-screen .chron-recit > h3 { margin-bottom:14px; }
.chronique-screen .chron-recit-arches { display:flex; flex-direction:column; gap:16px; margin-top:14px; }
.chronique-screen .chron-recit-arche { padding-top:14px; border-top:1px solid #24435d; }
.chronique-screen .chron-recit-arche h4 { display:flex; align-items:center; gap:10px; margin:0 0 8px; font:700 16px/1.25 var(--f-texte); color:var(--blanc); }
.chronique-screen .chron-recit-arche p { font-size:15px; margin:0; }
.chronique-screen .chron-regle, .chronique-screen .chron-retour-recit { display:block; min-height:44px; padding:12px 0; color:#7cddff; font:700 14px/1.3 var(--f-texte); text-align:left; }
.chronique-screen .chron-retour-recit { margin-bottom:8px; }
.chronique-screen .chron-seneschal h3 { font-size:18px; color:#b7cce1; }
.chronique-screen .chron-seneschal .meta { margin:0; font-size:14px; }
.chronique-screen [hidden] { display:none !important; }

/* Consultation facultative : les signes restent visibles à côté de l'effet et de la réponse. */
.chronique-screen .chron-guide > h3 { margin-bottom:6px; }
.chronique-screen .chron-guide-intro { margin:0 0 8px; font:500 14px/1.35 var(--f-texte); color:#b7cce1; }
.chronique-screen .chron-guide .chron-guide-groupe { margin-top:0; border-bottom:1px solid #2b516c; }
.chronique-screen .chron-guide-groupe > summary { padding:12px 2px; color:#7cddff; }
.chronique-screen .chron-guide-groupe[open] > summary { margin-bottom:0; color:#ffd048; }
.chronique-screen .chron-guide .chron-guide-liste { gap:0; padding-bottom:10px; }
.chronique-screen .chron-guide .chron-guide-repere { display:grid; grid-template-columns:44px minmax(0,1fr); gap:10px; padding:12px 0; border-top:1px solid #24435d; }
.chronique-screen .chron-guide .chron-guide-repere::before { display:none; }
.chronique-screen .chron-guide-signe { display:flex; flex:none; align-items:center; justify-content:center; width:44px; height:44px; color:#ffd048; font:italic 900 28px/1 var(--f-titre); }
.chronique-screen .chron-guide-signe.picon { width:44px; height:44px; margin:0; padding:6px; box-sizing:border-box; color:#7cddff; }
.chronique-screen .chron-guide-repere:focus-visible { outline:2px solid #ffd048; outline-offset:-2px; }
.chronique-screen .chron-guide-image { object-fit:contain; }
.chronique-screen [data-repere="curse"] .chron-guide-signe, .chronique-screen #chron-guide-ennemis .chron-guide-signe { color:#ff946e; }
.chronique-screen .chron-guide-texte > strong { display:block; font:700 16px/1.2 var(--f-texte); color:var(--blanc); }
.chronique-screen .chron-guide-texte > p { margin:5px 0 0; font:500 14px/1.35 var(--f-texte); color:#b7cce1; }
.chronique-screen .chron-guide-texte > .chron-guide-conseil { color:#7cddff; }

/* Lecture ciblée : une règle, une arche ou une marche se retrouve sans emphase globale. */
.chronique-screen .scroll-area.chron-lecture { -webkit-mask-image:linear-gradient(to bottom,#000 0,#000 calc(100% - 14px),transparent 100%); mask-image:linear-gradient(to bottom,#000 0,#000 calc(100% - 14px),transparent 100%); }
.chronique-screen .chron-guide-groupe > summary, .chronique-screen .chron-recit button, .chronique-screen .chron-recit select { -webkit-tap-highlight-color:transparent; }
.chronique-screen .chron-guide-groupe > summary:active { background:#0a2944; }
.chronique-screen .chron-guide-groupe > summary:focus-visible { outline:2px solid #ffd048; outline-offset:-2px; }
.chronique-screen .chron-cible-libelle { display:none; }
.chronique-screen .chron-guide .chron-guide-repere[aria-current="true"] { padding-left:10px; border-left:3px solid #47cfff; background:#0a2944; }
.chronique-screen .chron-guide-repere[aria-current="true"] .chron-cible-libelle { display:block; margin-bottom:6px; color:#7cddff; font:700 13px/1.3 var(--f-texte); }
.chronique-screen .chron-guide-repere { scroll-margin-block:12px; }
.chronique-screen .chron-guide-repere:focus-visible { outline:2px solid #47cfff; outline-offset:-2px; }
.chronique-screen .chron-guide-signe { font-size:48px; }
.chronique-screen .chron-guide-signe.picon { width:32px; height:32px; margin:6px; padding:0; }
.chronique-screen .chron-choix-lecture { display:flex; flex-direction:column; gap:7px; margin:0 0 16px; color:#b7cce1; font:500 14px/1.3 var(--f-texte); }
.chronique-screen .chron-choix-lecture select { width:100%; min-width:0; min-height:44px; box-sizing:border-box; padding:9px 30px 9px 10px; border:1px solid #2b516c; border-radius:3px; background:#0a203a; color:var(--blanc); font:700 15px/1.25 var(--f-texte); }
/* Le chapitre reste hors du défilement et du masque de lecture. */
.chronique-screen .chron-repere-lecture { flex:none; padding:12px 2px 0; border-bottom:1px solid #2b516c; }
.chronique-screen .chron-position-lecture { display:block; margin-bottom:6px; color:#7cddff; font:700 12px/1.2 var(--f-texte); }
.chronique-screen .chron-repere-lecture .chron-choix-lecture { margin-bottom:12px; font-size:12px; gap:5px; }
.chronique-screen .chron-repere-lecture select:focus-visible { outline:2px solid #ffd048; outline-offset:-2px; }
/* Même silhouette de crâne que l'arche du monde (level.js), en masque vectoriel. */
.chronique-screen .pi-crane { --ic:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='32 84 192 216' fill-rule='evenodd'><path d='M44 189 A84 84 0 1 1 212 189 V236 Q212 262 186 262 L178 296 H78 L70 262 Q44 262 44 236 Z M72 180 A24 28 0 1 0 120 180 A24 28 0 1 0 72 180 Z M136 180 A24 28 0 1 0 184 180 A24 28 0 1 0 136 180 Z M128 214 L114 240 H142 Z M92 268 H98 V294 H92 Z M112 268 H118 V294 H112 Z M132 268 H138 V294 H132 Z M152 268 H158 V294 H152 Z'/></svg>"); }
.chronique-screen .chron-recit .lore-entry { border-top:0; padding-top:0; }
.chronique-screen .chron-recit .lore-entry h3 { font-size:22px; margin-bottom:12px; }
.chronique-screen .chron-recit .lore-entry p { font-size:15px; line-height:1.45; }
.chronique-screen .chron-choix-arches { display:flex; gap:9px; margin:8px 0 12px; border-bottom:1px solid #2b516c; }
.chronique-screen .chron-choix-arches button { flex:1; min-height:48px; display:flex; justify-content:center; align-items:center; padding:0 0 5px; border-bottom:3px solid transparent; }
.chronique-screen .chron-choix-arches button[aria-pressed="true"] { border-bottom-color:#47cfff; background:#0a2944; }
.chronique-screen .chron-choix-arches [data-repere="curse"] .chron-guide-signe { color:#ff946e; }
.chronique-screen .chron-recit-arche { padding-top:0; border-top:0; }
.chronique-screen .chron-recit-arches { margin:0; gap:0; }
.chronique-screen .chron-marche h4 { margin:0 0 10px; font:700 17px/1.25 var(--f-texte); color:var(--blanc); }
.chronique-screen .chron-passages { display:flex; gap:12px; margin-top:18px; border-top:1px solid #2b516c; }
.chronique-screen .chron-passages button { flex:1; min-height:44px; padding:10px 0; color:#7cddff; font:700 14px/1.3 var(--f-texte); text-align:left; }
.chronique-screen .chron-passages #chron-suivant { text-align:right; }
.chronique-screen .chron-passages button:disabled { color:#758da6; }
.chronique-screen .chron-passages button > :is(small,strong) { display:block; }
.chronique-screen .chron-passages button > small { margin-bottom:5px; color:#b7cce1; font:500 12px/1.2 var(--f-texte); }
.chronique-screen .chron-passages button > strong { font:700 14px/1.3 var(--f-texte); }
.chronique-screen .chron-recit button:focus-visible, .chronique-screen .chron-recit select:focus-visible { outline:2px solid #ffd048; outline-offset:-2px; }
.chronique-screen .chron-recit button:active { background:#0a2944; }
.chronique-screen .chron-garde-sujet { margin-top:18px; }
.chronique-screen .chron-garde-sujet:first-of-type { margin-top:0; }
.chronique-screen .chron-garde-sujet > h4 { margin:0 0 7px; color:#7cddff; font:700 17px/1.25 var(--f-texte); }

/* Un bureau offre une vraie page de lecture. Le Journal et le jeu gardent leur cadre S24. */
@media (min-width:760px) and (min-height:600px) {
  #frame:has(.chronique-screen:not([hidden]) :is(#chron-guide,#chron-recit):not([hidden])) {
    width:min(760px,calc(100vw - 24px)); height:min(780px,calc(100dvh - 24px)); transform:none !important;
  }
  .chronique-screen:has(:is(#chron-guide,#chron-recit):not([hidden])) .chron-page { padding-inline:18px; }
  .chronique-screen:has(:is(#chron-guide,#chron-recit):not([hidden])) .chron-consultation { gap:24px; }
  .chronique-screen #chron-guide { display:block; width:100%; max-width:68ch; margin-inline:auto; }
  .chronique-screen #chron-recit { width:100%; max-width:68ch; margin-inline:auto; }
  .chronique-screen .chron-recit .lore-entry p { font-size:16px; }
  .chronique-screen .chron-recit .chron-choix-lecture { max-width:480px; }
  .chronique-screen .chron-repere-lecture { width:100%; max-width:68ch; margin-inline:auto; box-sizing:border-box; }
}

/* Sur écran court, rendre de la hauteur au texte sans réduire ses lettres ni les cibles. */
@media (max-width:759px) and (max-height:680px) {
  .chronique-screen > .head { gap:8px; padding-bottom:2px; }
  .chronique-screen .panel-title { font-size:26px; }
  .chronique-screen .menu-feuille { padding-top:2px; }
  .chronique-screen .chron-consultation { gap:8px; }
  .chronique-screen .chron-consultation button { padding-block:4px; }
  .chronique-screen .chron-repere-lecture { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:10px; padding:6px 2px; }
  .chronique-screen .chron-position-lecture { margin:0; white-space:nowrap; }
  .chronique-screen .chron-repere-lecture .chron-choix-lecture { margin:0; }
  .chronique-screen .chron-label-chapitre { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .chronique-screen .scroll-area { padding-top:8px; }
}

#stage:has(> .screen.chronique-screen:not([hidden])) > #save-warning { top:auto; bottom:calc(var(--nav-h) + 8px); }
#stage:has(> #save-warning:not([hidden])) > .screen.panel.chronique-screen .menu-feuille { margin-bottom:52px; }
#stage:has(> #save-warning:not([hidden])) > .screen.panel.chronique-screen .scroll-area { margin-top:0; }
@media (max-height:680px) {
  .chronique-screen .menu-feuille { padding-top:6px; }
  .chronique-screen .chron.head { padding-bottom:12px; }
  .chronique-screen .chron-page { gap:14px; }
}

/* Récit : ses actions restent dans la lecture, sans fondu ni faux bouton de fin.
   Les autres vues gardent leurs règles de présentation. */
.chronique-screen:has(#chron-recit:not([hidden])) .scroll-area.chron-lecture {
  -webkit-mask-image:none; mask-image:none; padding-bottom:56px;
}
.chronique-screen .chron-recit .chron-regle {
  display:flex; align-items:center; width:100%; min-height:44px; box-sizing:border-box;
  gap:10px; margin-top:10px; padding:10px 0; border:0;
  scroll-margin-block:12px;
  text-decoration:underline; text-underline-offset:4px;
}
.chronique-screen .chron-recit .chron-regle::after {
  content:''; flex:none; width:6px; height:6px; border-top:2px solid currentColor;
  border-right:2px solid currentColor; transform:rotate(45deg);
}
.chronique-screen .chron-recit .chron-passages { margin-top:12px; }
.chronique-screen .chron-recit .chron-garde-sujet > h4 { color:var(--blanc); }
.chronique-screen .chron-recit-sujet { margin-top:18px; }
.chronique-screen .chron-recit-sujet:first-of-type { margin-top:0; }
.chronique-screen .chron-recit-sujet > h4 {
  display:flex; align-items:center; gap:10px; margin:0 0 7px;
  color:var(--blanc); font:700 17px/1.25 var(--f-texte);
}
.chronique-screen .chron-recit-signe {
  position:relative; display:block; flex:none; width:32px; height:32px;
  margin:0; padding:0; color:#7cddff;
}
/* Deux jalons sur la Voie ; le signe de Cité est celui des commandes déjà livrées. */
.chronique-screen .chron-recit-route::before {
  content:''; position:absolute; left:14px; top:5px; bottom:5px; width:2px; background:#7cddff;
}
.chronique-screen .chron-recit-route::after {
  content:''; position:absolute; left:12px; top:2px; width:6px; height:6px;
  border-radius:50%; background:#7cddff; box-shadow:0 23px 0 #ffd048;
}
.chronique-screen .chron-recit-cite > p b { font-weight:500; color:inherit; }
.chronique-screen .chron-passages .chron-fin-recit {
  flex:1; align-self:center; padding:10px 0; color:#b7cce1;
  font:500 14px/1.3 var(--f-texte); text-align:right;
}

/* La même rangée de chapitre à 360×780 et sur écran court : 44px pour sélectionner,
   label toujours accessible, lettres du récit inchangées. */
@media (max-width:759px) {
  .chronique-screen:has(#chron-recit:not([hidden])) > .head { min-height:48px; gap:8px; padding-bottom:2px; }
  .chronique-screen:has(#chron-recit:not([hidden])) .panel-title { font-size:26px; }
  .chronique-screen:has(#chron-recit:not([hidden])) > .head .mission-tabs button { min-height:44px; }
  .chronique-screen:has(#chron-recit:not([hidden])) .menu-feuille { padding-top:2px; }
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-consultation { gap:8px; }
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-consultation button { min-height:44px; padding-block:4px; }
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-repere-lecture {
    display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:10px; padding:6px 2px;
  }
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-position-lecture { margin:0; white-space:nowrap; }
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-repere-lecture .chron-choix-lecture { margin:0; }
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-label-chapitre {
    position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap;
  }
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area { padding-top:8px; }
}

/* Récit : les cinq signes sont nommés ; la lecture reste indépendante du Guide et du Journal. */
.chronique-screen .chron-recit .chron-choix-arches {
  display:grid; grid-template-columns:repeat(5,minmax(44px,1fr)); gap:6px;
  overflow-x:auto;
}
.chronique-screen .chron-recit .chron-choix-arches button {
  flex-direction:column; gap:3px; min-width:44px; min-height:56px;
  box-sizing:border-box; padding:4px 0;
}
.chronique-screen .chron-recit .chron-choix-arches .chron-guide-signe {
  width:24px; height:24px; margin:0; padding:0; font-size:24px; line-height:1;
}
.chronique-screen .chron-recit .chron-signe-nom {
  max-width:100%; color:#b7cce1; font:700 12px/1.2 var(--f-titre);
  white-space:normal; overflow-wrap:anywhere; text-align:center;
}
.chronique-screen .chron-recit .chron-choix-arches button[aria-pressed="true"] .chron-signe-nom { color:var(--blanc); }
.chronique-screen .chron-recit .chron-rangs {
  display:block; margin-block:8px; padding-left:10px; border-left:2px solid #47cfff; color:#7cddff;
}
@media (max-width:759px) and (max-height:680px) {
  .screen.panel.chronique-screen:has(#chron-recit:not([hidden])) { padding-top:calc(var(--safe-t) + 4px); }
  .chronique-screen:has(#chron-recit:not([hidden])) > .head { min-height:44px; padding-bottom:0; }
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-repere-lecture { gap:8px; padding:2px; }
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area { padding-top:6px; }
  .chronique-screen .chron-recit .chron-choix-arches { margin:4px 0 8px; }
  .chronique-screen .chron-recit .chron-recit-arche h4 .chron-guide-signe {
    width:28px; height:28px; margin:0; padding:0; font-size:28px; line-height:1;
  }
}
@media (max-width:759px) and (min-height:700px) {
  .chronique-screen .chron-recit .lore-entry:has(> .chron-recit-sujet) p,
  .chronique-screen .chron-recit .chron-recit-arche p,
  .chronique-screen .chron-recit .chron-marche p { font-size:16px; line-height:1.55; }
  .chronique-screen .chron-recit-sujet { margin-top:22px; }
  .chronique-screen .chron-recit-sujet:first-of-type { margin-top:0; }
  .chronique-screen .chron-recit-sujet > h4,
  .chronique-screen .chron-recit .chron-marche > h4 { font-size:18px; margin-bottom:10px; }
}

/* Récit : une pagination de cadre, hors du défilement et au-dessus du rail global.
   Le chapitre reste nommé par le select ; son compteur court libère sa largeur.
   Toutes les règles ci-dessous laissent Guide, Journal et Arènes inchangés. */
.screen.panel.chronique-screen:has(#chron-recit:not([hidden])) {
  padding-top:calc(var(--safe-t) + 4px);
}
.chronique-screen:has(#chron-recit:not([hidden])) > .head {
  min-height:44px; padding-bottom:0;
}
.chronique-screen:has(#chron-recit:not([hidden])) .menu-feuille { padding-top:2px; }
/* Le filet de la plaque passe sous le bandeau, sans traverser Missions. */
.chronique-screen:has(#chron-recit:not([hidden])) .menu-feuille.panneau-d3::before {
  top:8px; transform:skewY(-2deg);
}
.chronique-screen:has(#chron-recit:not([hidden])) .chron-repere-lecture {
  display:grid; grid-template-columns:32px minmax(0,1fr); align-items:center;
  gap:8px; padding:2px 0 4px;
}
.chronique-screen:has(#chron-recit:not([hidden])) .chron-position-lecture {
  margin:0; white-space:nowrap; color:#7cddff;
}
.chronique-screen:has(#chron-recit:not([hidden])) .chron-repere-lecture .chron-choix-lecture {
  margin:0;
}
.chronique-screen:has(#chron-recit:not([hidden])) .chron-label-chapitre {
  position:absolute; width:1px; height:1px; overflow:hidden;
  clip-path:inset(50%); white-space:nowrap;
}
.chronique-screen:has(#chron-recit:not([hidden])) .chron-repere-lecture select {
  border-color:#287bb6; background:#0a203a; padding-left:8px;
}
.chronique-screen:has(#chron-recit:not([hidden])) .chron-repere-lecture select:focus-visible {
  outline:2px solid #47cfff; outline-offset:-2px;
}
.chronique-screen:has(#chron-recit:not([hidden])) .scroll-area.chron-lecture {
  padding-bottom:12px;
}
.chronique-screen > .menu-feuille > .chron-passages {
  flex:none; align-items:stretch; gap:14px; margin:0 0 8px; padding:4px 0 0;
  border-top:1px solid #388bc1; background:#06172e;
}
.chronique-screen > .menu-feuille > .chron-passages button {
  display:flex; flex-direction:column; justify-content:flex-start;
  min-width:0; min-height:44px; padding:6px 0; overflow-wrap:break-word;
}
.chronique-screen > .menu-feuille > .chron-passages button > small { margin-bottom:2px; }
.chronique-screen > .menu-feuille > .chron-passages button:focus-visible {
  outline:2px solid #47cfff; outline-offset:-2px;
}
.chronique-screen > .menu-feuille > .chron-passages button:active { background:#0a2944; }
/* Les titres articulent les sujets ; leurs phrases et emphases restent canoniques. */
.chronique-screen .chron-recit :is(.chron-recit-sujet,.chron-garde-sujet,.chron-marche) > h4 {
  padding-bottom:8px; border-bottom:1px solid #24435d;
}
.chronique-screen .chron-recit :is(.chron-recit-sujet,.chron-garde-sujet,.chron-marche) > h4::after {
  content:''; display:block; flex:none; width:28px; height:2px; margin-top:8px;
  background:linear-gradient(90deg,#47cfff,#287bb6);
}
.chronique-screen .chron-recit-sujet > h4::after { margin-left:auto; margin-top:0; }
.chronique-screen .chron-recit-sujet:nth-of-type(even) > h4::after {
  background:linear-gradient(90deg,#ffd048,#b18435);
}
.chronique-screen .chron-recit .chron-rangs {
  padding:6px 0 6px 10px; border-left-color:#47cfff;
}
@media (max-width:759px) {
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-recit-sujet { margin-top:18px; }
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-recit-sujet:first-of-type { margin-top:0; }
}

/* Lecture : les modes et le sommaire défilent avec l'article.
   Placé après toutes les adaptations, ce cadre laisse Guide et Journal intacts. */
.chronique-screen:has(#chron-recit:not([hidden])) .scroll-area.chron-lecture {
  flex:0 1 auto; min-height:0; overflow-y:auto; padding:8px 0 24px;
  scroll-padding-block-start:48px;
  -webkit-mask-image:none; mask-image:none;
}
.chronique-screen:has(#chron-recit:not([hidden])) .scroll-area > .chron-consultation {
  flex:none; margin-bottom:4px;
}
.chronique-screen:has(#chron-recit:not([hidden])) .chron-sommaire {
  display:block; flex:none; position:sticky; top:0; z-index:3;
  padding:0; margin-bottom:10px; background:#06172e;
}
.chronique-screen:has(#chron-recit:not([hidden])) .chron-sommaire-toggle {
  display:grid; grid-template-columns:32px minmax(0,1fr) 12px; align-items:center;
  gap:8px; min-height:44px; box-sizing:border-box; margin:0; padding:8px 0;
  list-style:none; color:var(--blanc); font:700 15px/1.3 var(--f-texte); cursor:pointer;
}
.chronique-screen .chron-sommaire-toggle::marker { content:''; }
.chronique-screen .chron-sommaire-toggle::-webkit-details-marker { display:none; }
.chronique-screen .chron-sommaire-toggle::after {
  content:''; width:6px; height:6px; justify-self:center;
  border-right:2px solid #7cddff; border-bottom:2px solid #7cddff; transform:rotate(45deg);
}
.chronique-screen .chron-sommaire[open] > .chron-sommaire-toggle::after { transform:rotate(225deg); }
.chronique-screen:has(#chron-recit:not([hidden])) .chron-sommaire .chron-choix-lecture {
  margin:0 0 10px; gap:5px;
}
.chronique-screen:has(#chron-recit:not([hidden])) .chron-sommaire .chron-label-chapitre {
  position:static; width:auto; height:auto; overflow:visible; clip-path:none; white-space:normal;
}
.chronique-screen .chron-titre-lecture { min-width:0; overflow-wrap:break-word; }
.chronique-screen .chron-sommaire-toggle:focus-visible {
  outline:2px solid #47cfff; outline-offset:-2px;
}
.chronique-screen .chron-recit :is(.chron-recit-sujet,.chron-garde-sujet,.chron-marche) > h4 {
  display:flex; align-items:center; gap:10px; overflow-wrap:break-word;
}
.chronique-screen .chron-recit :is(.chron-recit-sujet,.chron-garde-sujet,.chron-marche) > h4::after {
  margin:0 0 0 auto;
}
/* Les quatre destinations et leurs badges gardent leur géométrie et leurs états. */
#stage:has(> .chronique-screen:not([hidden]) #chron-recit:not([hidden])) > #nav-rail::after {
  box-shadow:inset 0 1px 0 #9ee5ff, 0 2px 3px rgba(0,4,15,.5);
}

/* Fin et destination précédente partagent le pied aux deux formats mobiles. */
.chronique-screen > .menu-feuille > .chron-passages[data-fin="true"] {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);
  align-items:center; column-gap:12px;
}
.chronique-screen .chron-passages[data-fin="true"] .chron-fin-recit {
  grid-column:1; grid-row:1; min-width:0; padding:0; color:var(--blanc); text-align:left;
  font:900 italic 22px/1.2 var(--f-titre);
}
.chronique-screen .chron-passages[data-fin="true"] #chron-precedent { grid-column:2; grid-row:1; text-align:right; }
.chronique-screen .chron-recit .chron-recit-ouverture > h4 {
  padding-bottom:0; border-bottom:0; font:900 italic 22px/1.15 var(--f-titre);
}
.chronique-screen .chron-recit .chron-recit-ouverture > h4::after { display:none; }
.chronique-screen .chron-recit-cite { margin-bottom:0; }
@media (max-width:759px) and (max-height:680px) {
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area.chron-lecture { padding-top:0; }
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area > .chron-consultation { margin-bottom:0; }
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-sommaire { margin-bottom:6px; }
}

.chronique-screen .chron-recit .chron-ponctuation-liee { white-space:nowrap; }

/* Récit mobile : le bandeau existant défile avant les modes et le sommaire.
   Guide, Journal et bureau conservent l'en-tête hors de leur défilement. */
@media (max-width:759px) {
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-entete-flux {
    display:flex; flex:none; position:relative; align-items:center; gap:8px;
    min-height:44px; box-sizing:border-box; padding:0 0 2px;
    border-bottom:1px solid #388bc1;
  }
  .chronique-screen .chron-entete-flux .mission-tabs {
    flex:1; align-items:center; gap:8px; border:0;
  }
  .chronique-screen .chron-entete-flux .mission-tabs [aria-selected="true"] {
    order:-1; margin-right:auto;
  }
  .chronique-screen .chron-entete-flux .mission-tabs [aria-selected="true"]::after { display:none; }
  .chronique-screen .chron-entete-flux .mission-tabs [data-action="missions"] {
    min-height:44px; padding:0 4px; font-size:14px; color:#7cddff;
  }
  .chronique-screen .chron-entete-flux .mission-tabs button { min-height:44px; }
}
/* Cadre du lecteur : article flexible, pied opaque réservé et bandeau Session séparé.
   La variable locale reçoit la border-box CSS, jamais la taille transformée du stage. */
.screen.panel.chronique-screen:has(#chron-recit:not([hidden])) {
  padding-bottom:calc(var(--nav-h) + var(--chron-save-reserve,0px));
}
#stage:has(> #save-warning:not([hidden])) > .screen.panel.chronique-screen:has(#chron-recit:not([hidden])) .scroll-area.chron-lecture {
  padding-bottom:24px;
}
@media (max-width:759px) {
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-entete-flux { padding-bottom:0; }
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area.chron-lecture { padding-top:4px; }
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area > .chron-consultation { margin-bottom:0; }
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-sommaire { margin-bottom:6px; }
}

/* Le lecteur opaque est présent dès sa première image ; règle limitée au lecteur. */
.screen.panel.chronique-screen:not([hidden]) { animation:none; }

/* Le chapitre reste nommé dans la commande sticky de lecture courte.
   Le libellé complet se replie naturellement ; aucun texte coupé ni rail ajouté. */
.chronique-screen .chron-recit-courant { display:none; }
@media (max-width:759px) and (max-height:680px) {
  /* Le repère reste visible ; sa hauteur réelle protège les cibles de lecture. */
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area > .chron-consultation {
    position:sticky; top:0; z-index:4; background:#06172e;
  }
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area.chron-lecture {
    scroll-padding-block-start:calc(var(--chron-navigation-height,48px) + 8px);
  }
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-sommaire { position:static; }
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area > .chron-consultation { gap:2px; }
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area > .chron-consultation #chron-vue-recit {
    flex:1; min-width:0; padding:5px 4px;
  }
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area > .chron-consultation #chron-vue-recit > .chron-vue-libelle { display:none; }
  .chronique-screen:has(#chron-recit:not([hidden])) .scroll-area > .chron-consultation #chron-vue-recit > .chron-recit-courant {
    display:flex; flex-direction:column; justify-content:center; gap:2px;
  }
  .chronique-screen .chron-recit-courant > small {
    color:#FFD048; font:600 11px/1.15 var(--f-texte);
  }
  .chronique-screen .chron-recit-courant > strong {
    color:var(--blanc); font:700 12px/1.2 var(--f-texte); overflow-wrap:break-word;
  }
}

/* Sommaire nommé : le petit format garde le titre dans Récit, sans le répéter.
   Les mêmes nœuds, cible native et focus servent tous les formats. */
.chronique-screen:has(#chron-recit:not([hidden])) .chron-sommaire-toggle {
  grid-template-columns:max-content minmax(0,1fr) 12px; row-gap:2px;
}
.chronique-screen .chron-sommaire-libelle {
  grid-column:1; grid-row:1; color:#b7cce1; font:600 12px/1.2 var(--f-texte);
}
.chronique-screen .chron-sommaire-toggle > .chron-position-lecture {
  grid-column:1; grid-row:2; margin:0; white-space:nowrap;
}
.chronique-screen .chron-sommaire-toggle > .chron-titre-lecture {
  grid-column:2; grid-row:1 / span 2;
}
.chronique-screen .chron-sommaire-toggle::after { grid-column:3; grid-row:1 / span 2; }
@media (max-width:759px) and (max-height:680px) {
  .chronique-screen:has(#chron-recit:not([hidden])) .chron-sommaire-toggle {
    grid-template-columns:minmax(0,1fr) max-content 12px;
  }
  .chronique-screen .chron-sommaire-libelle { color:var(--blanc); font:700 15px/1.3 var(--f-texte); }
  .chronique-screen .chron-sommaire-toggle > .chron-position-lecture { grid-column:2; grid-row:1; }
  .chronique-screen .chron-sommaire-toggle::after { grid-row:1; }
  .chronique-screen .chron-sommaire-toggle > .chron-titre-lecture {
    position:absolute; width:1px; height:1px; padding:0; margin:-1px;
    overflow:hidden; clip-path:inset(50%); white-space:nowrap;
  }
}
