/* DELTA-SIERRA MARS — canonical visual + contrast contract — Lot22 / 2026-08-14
   Loaded LAST on every Mars page. Public rule: no visited-state colour drift, no blue-on-blue.
   Navigation states use the same high-contrast palette everywhere.
*/
:root{
  --dsv22-night:#071018;
  --dsv22-night-2:#0b1722;
  --dsv22-panel:#101f2b;
  --dsv22-panel-2:#172a39;
  --dsv22-paper:#fffaf2;
  --dsv22-text:#f7f4ee;
  --dsv22-muted:#d7e0e7;
  --dsv22-ink:#202a31;
  --dsv22-gold:#f1be5c;
  --dsv22-copper:#b85b35;
  --dsv22-copper-dark:#74341f;
  --dsv22-focus:#ffe08a;
  --dsv22-line:#40576a;
}
/* ---------- GLOBAL MARS HEADER: one palette, no blue-on-blue ---------- */
.mars-header{background:linear-gradient(180deg,#050c12 0%,var(--dsv22-night) 100%)!important;border-bottom:1px solid #9a632a!important;box-shadow:0 8px 24px rgba(0,0,0,.18)!important}
.mars-header__inner{min-height:88px!important;padding-top:9px!important;padding-bottom:9px!important;gap:8px 12px!important}
.mars-header .site-nav__inner{background:#0a1621!important;border-color:#344958!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.015)!important}
.mars-header .site-nav a,
.mars-header .site-nav a:link,
.mars-header .site-nav a:visited{
  color:var(--dsv22-text)!important;
  -webkit-text-fill-color:var(--dsv22-text)!important;
  background:transparent!important;
  opacity:1!important;
  text-shadow:none!important;
  text-decoration:none!important;
  font-weight:760!important;
}
.mars-header .site-nav a:hover,
.mars-header .site-nav a:focus-visible{
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  background:#69351f!important;
  outline:2px solid var(--dsv22-focus)!important;
  outline-offset:1px!important;
}
.mars-header .site-nav a[aria-current="page"],
.mars-header .site-nav .mars-nav-link{
  color:#111820!important;-webkit-text-fill-color:#111820!important;
  background:var(--dsv22-gold)!important;
  border:1px solid #ffd989!important;
  box-shadow:none!important;
}
.mars-header .site-language-switcher a,
.mars-header .site-language-switcher a:link,
.mars-header .site-language-switcher a:visited{color:#17222b!important;-webkit-text-fill-color:#17222b!important;background:#fff!important;opacity:1!important}
.mars-header .btn-soutien,.mars-header .btn-soutien:visited{color:#fff!important;-webkit-text-fill-color:#fff!important;background:#b83c2f!important}
/* ---------- SIDEBAR: canonical contrast contract ---------- */
.mars-system-sidebar{
  background:linear-gradient(180deg,#08121b 0%,#0b1823 48%,#0a151f 100%)!important;
  color:var(--dsv22-text)!important;
  border-right:1px solid #3d5161!important;
}
.mars-sidebar-title{background:#172736!important;color:#fff!important;border-color:#4b6070!important}
.mars-system-sidebar details{border-color:#344b5d!important;background:transparent!important}
.mars-system-sidebar summary,
.mars-system-sidebar details>summary,
.mars-system-sidebar summary:visited{
  color:#f6d392!important;-webkit-text-fill-color:#f6d392!important;
  background:rgba(255,255,255,.015)!important;
  opacity:1!important;
  font-weight:820!important;
}
.mars-system-sidebar summary:hover,.mars-system-sidebar summary:focus-visible{color:#fff!important;-webkit-text-fill-color:#fff!important;background:#4c2b1d!important;outline:2px solid var(--dsv22-focus)!important;outline-offset:1px!important}
.mars-system-sidebar a,
.mars-system-sidebar a:link,
.mars-system-sidebar a:visited{
  color:#f3f6f8!important;-webkit-text-fill-color:#f3f6f8!important;
  background-color:transparent!important;
  opacity:1!important;
  text-decoration:none!important;
}
.mars-system-sidebar li>a{display:block!important;border-radius:6px!important;padding:.42rem .5rem!important}
.mars-system-sidebar a:hover,.mars-system-sidebar a:focus-visible{
  color:#fff!important;-webkit-text-fill-color:#fff!important;background:#5a301e!important;
  outline:2px solid var(--dsv22-focus)!important;outline-offset:0!important
}
.mars-system-sidebar a[aria-current="page"],
.mars-system-sidebar .is-active{
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  background:linear-gradient(90deg,#873a21,#5d2a1b)!important;
  border-left:4px solid var(--dsv22-gold)!important;
}
.mars-sidebar-tools a,.mars-sidebar-tools a:visited{background:#1b3040!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#506a7e!important}
.mars-system-sidebar input[type="search"]{background:#fff9ef!important;color:#16212a!important;-webkit-text-fill-color:#16212a!important;border-color:#a66a3c!important}
.mars-system-sidebar input[type="search"]::placeholder{color:#58636c!important;opacity:1!important}
.mars-system-sidebar .mars-sidebar-academy,.mars-system-sidebar .mars-academy-card{background:linear-gradient(145deg,#14283a,#0e1f2e)!important;border-color:#496177!important}
.mars-system-sidebar .mars-sidebar-academy>a,.mars-system-sidebar .mars-academy-card a{background:var(--dsv22-gold)!important;color:#15202a!important;-webkit-text-fill-color:#15202a!important}
/* ---------- Long-form typography: eliminate inherited lot-to-lot font drift ---------- */
.history-book{font-family:Georgia,'Times New Roman',serif!important;color:#262b2f!important}
.history-book p:not(.history-kicker):not(.history-dek),
.history-book .history-depth-lot19 p,
.history-book .history-expansion-lot19 p,
.history-book .history-lot18-deepening p,
.history-book .history-topup-lot19 p{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:1.17rem!important;
  line-height:1.78!important;
  font-weight:400!important;
  color:#2a3035!important;
  margin:0 0 1.22em!important;
}
.history-book .history-deep-links p{font-family:Georgia,'Times New Roman',serif!important;font-size:1.05rem!important;line-height:1.72!important}
.history-book .history-bibliography p,.history-book .history-bibliography li{font-family:system-ui,-apple-system,'Segoe UI',sans-serif!important;font-size:.95rem!important;line-height:1.58!important}
.history-book .history-kicker{font-family:system-ui,-apple-system,'Segoe UI',sans-serif!important}
.history-book .history-dek{font-family:Georgia,'Times New Roman',serif!important}
/* Common technical long-form pages: stable rhythm even when legacy CSS layers differ. */
.mars-portal-main article p,.mars-portal-main .mars-section>p,.mars-portal-main .mars-longform p,.mars-portal-main .mars-book-chapter p{
  line-height:1.74!important;
}
.mars-portal-main h2{scroll-margin-top:110px!important}.mars-portal-main h3{scroll-margin-top:110px!important}
/* ---------- Chapter navigator, appended below the heart button ---------- */
.ds-floating-action--chapters{background:linear-gradient(145deg,#6f3a22,#4b2518)!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
.ds-floating-action--chapters:hover,.ds-floating-action--chapters:focus-visible{background:#8a4728!important}
.ds-chapter-panel{
  position:fixed!important;z-index:2147483590!important;
  right:clamp(62px,5vw,78px)!important;top:50%!important;transform:translateY(-50%)!important;
  width:min(330px,calc(100vw - 110px))!important;max-height:min(72vh,680px)!important;overflow:auto!important;
  padding:13px!important;border:1px solid #596a76!important;border-radius:14px!important;
  background:rgba(7,16,24,.97)!important;color:#fff!important;box-shadow:0 18px 45px rgba(0,0,0,.38)!important;
  backdrop-filter:blur(10px)!important;
}
.ds-chapter-panel[hidden]{display:none!important}
.ds-chapter-panel__head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin:0 0 8px!important;padding:0 2px 8px!important;border-bottom:1px solid #3f5362!important}
.ds-chapter-panel__head strong{font:850 .93rem/1.2 system-ui,sans-serif!important;color:#ffe1a0!important}
.ds-chapter-panel__close{border:0!important;border-radius:7px!important;background:#243746!important;color:#fff!important;width:31px!important;height:31px!important;cursor:pointer!important}
.ds-chapter-panel nav{display:block!important}.ds-chapter-panel ol{list-style:none!important;margin:0!important;padding:0!important}
.ds-chapter-panel li{margin:2px 0!important;padding:0!important}
.ds-chapter-panel a,.ds-chapter-panel a:visited{display:block!important;padding:7px 9px!important;border-radius:8px!important;color:#f4f6f8!important;-webkit-text-fill-color:#f4f6f8!important;text-decoration:none!important;font:650 .82rem/1.35 system-ui,sans-serif!important}
.ds-chapter-panel a:hover,.ds-chapter-panel a:focus-visible{background:#5a301e!important;color:#fff!important;outline:2px solid var(--dsv22-focus)!important;outline-offset:0!important}
.ds-chapter-panel a.is-current{background:#253c4e!important;color:#ffd678!important;-webkit-text-fill-color:#ffd678!important;border-left:3px solid var(--dsv22-gold)!important}
@media(max-width:1024px){
 .mars-header__inner{min-height:auto!important}
 .ds-chapter-panel{right:54px!important;width:min(300px,calc(100vw - 72px))!important;max-height:65vh!important}
}
@media(max-width:600px){
 .history-book p:not(.history-kicker):not(.history-dek),.history-book .history-depth-lot19 p,.history-book .history-expansion-lot19 p,.history-book .history-lot18-deepening p,.history-book .history-topup-lot19 p{font-size:1.04rem!important;line-height:1.74!important}
 .ds-chapter-panel{right:47px!important;width:min(82vw,300px)!important;padding:10px!important}
 .ds-chapter-panel a,.ds-chapter-panel a:visited{font-size:.79rem!important;padding:7px 8px!important}
}
@media print{.ds-chapter-panel,.ds-floating-action--chapters{display:none!important}}
/* Layout contract: legacy header used content-box sizing with width:100% + horizontal padding. */
.mars-header__inner{
  box-sizing:border-box!important;
  width:min(100%,1680px)!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.mars-header .btn-soutien{box-sizing:border-box!important;max-width:100%!important}
@media(max-width:700px){
  .mars-portal-main table{display:block!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
}
/* ---------- CONTENT LINK CONTRACT ----------
   Normal and visited states are deliberately identical. Dark cards/footers get a light palette;
   pale reading surfaces get a dark accessible link colour. */
.mars-portal-main p a,
.mars-portal-main li a,
.mars-portal-main .mars-related a,
.mars-portal-main .mars-book-link,
.mars-portal-main .mars-sources a,
.mars-portal-main .sources a,
.mars-portal-main p a:visited,
.mars-portal-main li a:visited,
.mars-portal-main .mars-related a:visited,
.mars-portal-main .mars-book-link:visited,
.mars-portal-main .mars-sources a:visited,
.mars-portal-main .sources a:visited{
  color:#075587!important;-webkit-text-fill-color:#075587!important;text-decoration-color:#6b9cba!important;opacity:1!important;
}
.mars-portal-main p a:hover,.mars-portal-main p a:focus-visible,
.mars-portal-main li a:hover,.mars-portal-main li a:focus-visible,
.mars-portal-main .mars-related a:hover,.mars-portal-main .mars-related a:focus-visible,
.mars-portal-main .mars-book-link:hover,.mars-portal-main .mars-book-link:focus-visible,
.mars-portal-main .mars-sources a:hover,.mars-portal-main .mars-sources a:focus-visible,
.mars-portal-main .sources a:hover,.mars-portal-main .sources a:focus-visible{
  color:#642600!important;-webkit-text-fill-color:#642600!important;background:#fff1c9!important;outline:2px solid #b77512!important;outline-offset:2px!important;
}
.mars-portal-main .ds-tool-card,
.mars-portal-main .ds-tool-card:link,
.mars-portal-main .ds-tool-card:visited{
  color:#f7f4ee!important;-webkit-text-fill-color:#f7f4ee!important;background:rgba(18,34,56,.96)!important;border-color:#6d8799!important;
}
.mars-portal-main .ds-tool-card *{color:inherit!important;-webkit-text-fill-color:inherit!important}
.mars-portal-main .ds-tool-card:hover,.mars-portal-main .ds-tool-card:focus-visible{
  color:#111a21!important;-webkit-text-fill-color:#111a21!important;background:#f1be5c!important;outline:3px solid #6f351f!important;outline-offset:2px!important;
}
.mars-az-grid a,.mars-az-grid a:link,.mars-az-grid a:visited{
  color:#f5f7f8!important;-webkit-text-fill-color:#f5f7f8!important;background:#102638!important;border-color:#48677d!important;
}
.mars-az-grid a:hover,.mars-az-grid a:focus-visible{color:#121a20!important;-webkit-text-fill-color:#121a20!important;background:#f1be5c!important;outline:2px solid #6f351f!important}
.mars-footer{background:#07131e!important;color:#e8eef3!important}
.mars-footer a,.mars-footer a:link,.mars-footer a:visited{color:#ffd678!important;-webkit-text-fill-color:#ffd678!important;text-decoration-color:#a97832!important;opacity:1!important}
.mars-footer a:hover,.mars-footer a:focus-visible{color:#101820!important;-webkit-text-fill-color:#101820!important;background:#ffd678!important;outline:2px solid #fff1b7!important}
.skip-link:focus{background:#fff4d5!important;color:#17212a!important;-webkit-text-fill-color:#17212a!important;outline:3px solid #8b4a20!important}
/* alternate Mars header markup used by a subset of deep dossiers */
.ds-mars-branded-header{background:linear-gradient(180deg,#050c12,#071018)!important;color:#fff!important}
.ds-mars-branded-header + .site-nav{background:#071018!important}
.ds-mars-branded-header + .site-nav .site-nav__inner{background:#0a1621!important;border-color:#344958!important}
.ds-mars-branded-header + .site-nav a,
.ds-mars-branded-header + .site-nav a:link,
.ds-mars-branded-header + .site-nav a:visited{color:#f7f4ee!important;-webkit-text-fill-color:#f7f4ee!important;opacity:1!important}
.ds-mars-branded-header + .site-nav a:hover,.ds-mars-branded-header + .site-nav a:focus-visible{color:#fff!important;-webkit-text-fill-color:#fff!important;background:#69351f!important;outline:2px solid #ffe08a!important}
.ds-mars-branded-header + .site-nav .mars-nav-link,.ds-mars-branded-header + .site-nav a[aria-current="page"]{color:#111820!important;-webkit-text-fill-color:#111820!important;background:#f1be5c!important;border-color:#ffd989!important}
/* Legacy Mars templates do not all expose .mars-portal-main. The contract therefore also covers
   every Mars main element, with explicit dark-surface exceptions below. */
body.mars-site main a:link,body.mars-site main a:visited,
body.mars-page main a:link,body.mars-page main a:visited{
  color:#075587!important;-webkit-text-fill-color:#075587!important;text-decoration-color:#6b9cba!important;opacity:1!important;
}
body.mars-site main a:hover,body.mars-site main a:focus-visible,
body.mars-page main a:hover,body.mars-page main a:focus-visible{
  color:#642600!important;-webkit-text-fill-color:#642600!important;background:#fff1c9!important;outline:2px solid #b77512!important;outline-offset:2px!important;
}
/* Buttons are not treated as ordinary text links. */
body.mars-site main .mars-btn,body.mars-site main .mars-btn:link,body.mars-site main .mars-btn:visited,
body.mars-page main .mars-btn,body.mars-page main .mars-btn:link,body.mars-page main .mars-btn:visited,
.mars-hero__actions a,.mars-hero__actions a:link,.mars-hero__actions a:visited{
  color:#fff!important;-webkit-text-fill-color:#fff!important;background:#a63d2e!important;border-color:#c95a43!important;text-decoration:none!important;
}
body.mars-site main .mars-btn:hover,body.mars-site main .mars-btn:focus-visible,
body.mars-page main .mars-btn:hover,body.mars-page main .mars-btn:focus-visible,
.mars-hero__actions a:hover,.mars-hero__actions a:focus-visible{
  color:#151d22!important;-webkit-text-fill-color:#151d22!important;background:#f1be5c!important;outline:3px solid #6d321e!important;
}
/* Topic-index sections and parity/source bands are dark surfaces. */
.mars-portal-frame > .mars-section a,.mars-portal-frame > .mars-section a:link,.mars-portal-frame > .mars-section a:visited,
.mars-v20312-parity a,.mars-v20312-parity a:link,.mars-v20312-parity a:visited,
.mars-v20313-parity-source a,.mars-v20313-parity-source a:link,.mars-v20313-parity-source a:visited{
  color:#f4f7f8!important;-webkit-text-fill-color:#f4f7f8!important;text-decoration-color:#e0b665!important;
}
.mars-portal-frame > .mars-section a:hover,.mars-portal-frame > .mars-section a:focus-visible,
.mars-v20312-parity a:hover,.mars-v20312-parity a:focus-visible,
.mars-v20313-parity-source a:hover,.mars-v20313-parity-source a:focus-visible{
  color:#121a20!important;-webkit-text-fill-color:#121a20!important;background:#f1be5c!important;outline:2px solid #fff0b0!important;
}
/* Re-assert dark tool cards after the generic main-link contract. */
body.mars-site main .ds-tool-card,body.mars-site main .ds-tool-card:link,body.mars-site main .ds-tool-card:visited,
body.mars-page main .ds-tool-card,body.mars-page main .ds-tool-card:link,body.mars-page main .ds-tool-card:visited{
  color:#f7f4ee!important;-webkit-text-fill-color:#f7f4ee!important;background:rgba(18,34,56,.96)!important;border-color:#6d8799!important;
}
body.mars-site main .ds-tool-card:hover,body.mars-site main .ds-tool-card:focus-visible,
body.mars-page main .ds-tool-card:hover,body.mars-page main .ds-tool-card:focus-visible{
  color:#111a21!important;-webkit-text-fill-color:#111a21!important;background:#f1be5c!important;outline:3px solid #6f351f!important;
}
/* Alternate branded header: language options and support CTA must not fall back to browser blue. */
.ds-mars-branded-header .site-language-switcher a,
.ds-mars-branded-header .site-language-switcher a:link,
.ds-mars-branded-header .site-language-switcher a:visited{
  color:#17222b!important;-webkit-text-fill-color:#17222b!important;background:#fff!important;opacity:1!important;
}
.ds-mars-branded-header .site-language-switcher a:hover,.ds-mars-branded-header .site-language-switcher a:focus-visible{
  color:#111820!important;-webkit-text-fill-color:#111820!important;background:#ffe6aa!important;outline:2px solid #6d351e!important;
}
.ds-mars-branded-header .btn-soutien,.ds-mars-branded-header .btn-soutien:link,.ds-mars-branded-header .btn-soutien:visited{
  color:#fff!important;-webkit-text-fill-color:#fff!important;background:#b83c2f!important;text-decoration:none!important;
}
/* Sidebar is inside <main> on the portal templates; reassert its dark-surface contract after the generic content rules. */
body.mars-site .mars-system-sidebar a,body.mars-site .mars-system-sidebar a:link,body.mars-site .mars-system-sidebar a:visited,
body.mars-page .mars-system-sidebar a,body.mars-page .mars-system-sidebar a:link,body.mars-page .mars-system-sidebar a:visited{
  color:#f3f6f8!important;-webkit-text-fill-color:#f3f6f8!important;background-color:transparent!important;opacity:1!important;text-decoration:none!important;
}
body.mars-site .mars-system-sidebar .mars-sidebar-tools a,body.mars-site .mars-system-sidebar .mars-sidebar-tools a:visited,
body.mars-page .mars-system-sidebar .mars-sidebar-tools a,body.mars-page .mars-system-sidebar .mars-sidebar-tools a:visited{background:#1b3040!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
body.mars-site .mars-system-sidebar a:hover,body.mars-site .mars-system-sidebar a:focus-visible,
body.mars-page .mars-system-sidebar a:hover,body.mars-page .mars-system-sidebar a:focus-visible{color:#fff!important;-webkit-text-fill-color:#fff!important;background:#5a301e!important;outline:2px solid #ffe08a!important}
body.mars-site .mars-system-sidebar a[aria-current="page"],body.mars-site .mars-system-sidebar .is-active,
body.mars-page .mars-system-sidebar a[aria-current="page"],body.mars-page .mars-system-sidebar .is-active{color:#fff!important;-webkit-text-fill-color:#fff!important;background:linear-gradient(90deg,#873a21,#5d2a1b)!important;border-left:4px solid #f1be5c!important}
/* Final surface exceptions — placed last by design so generic content rules cannot override them. */
body.mars-site main .mars-hero__actions a,body.mars-site main .mars-hero__actions a:link,body.mars-site main .mars-hero__actions a:visited,
body.mars-page main .mars-hero__actions a,body.mars-page main .mars-hero__actions a:link,body.mars-page main .mars-hero__actions a:visited,
body.mars-site main .mars-btn,body.mars-site main .mars-btn:link,body.mars-site main .mars-btn:visited,
body.mars-page main .mars-btn,body.mars-page main .mars-btn:link,body.mars-page main .mars-btn:visited{
  color:#fff!important;-webkit-text-fill-color:#fff!important;background:#a63d2e!important;border-color:#c95a43!important;text-decoration:none!important;
}
body.mars-site main .mars-hero__actions a:hover,body.mars-site main .mars-hero__actions a:focus-visible,
body.mars-page main .mars-hero__actions a:hover,body.mars-page main .mars-hero__actions a:focus-visible,
body.mars-site main .mars-btn:hover,body.mars-site main .mars-btn:focus-visible,
body.mars-page main .mars-btn:hover,body.mars-page main .mars-btn:focus-visible{
  color:#151d22!important;-webkit-text-fill-color:#151d22!important;background:#f1be5c!important;outline:3px solid #6d321e!important;
}
body.mars-site main .mars-az-grid a,body.mars-site main .mars-az-grid a:link,body.mars-site main .mars-az-grid a:visited,
body.mars-page main .mars-az-grid a,body.mars-page main .mars-az-grid a:link,body.mars-page main .mars-az-grid a:visited{
  color:#f5f7f8!important;-webkit-text-fill-color:#f5f7f8!important;background:#102638!important;border-color:#48677d!important;
}
body.mars-site main .mars-az-grid a:hover,body.mars-site main .mars-az-grid a:focus-visible,
body.mars-page main .mars-az-grid a:hover,body.mars-page main .mars-az-grid a:focus-visible{
  color:#121a20!important;-webkit-text-fill-color:#121a20!important;background:#f1be5c!important;outline:2px solid #6f351f!important;
}
body.mars-site main .mars-v20312-parity a,body.mars-site main .mars-v20312-parity a:link,body.mars-site main .mars-v20312-parity a:visited,
body.mars-page main .mars-v20312-parity a,body.mars-page main .mars-v20312-parity a:link,body.mars-page main .mars-v20312-parity a:visited,
body.mars-site main .mars-v20313-parity-source a,body.mars-site main .mars-v20313-parity-source a:link,body.mars-site main .mars-v20313-parity-source a:visited,
body.mars-page main .mars-v20313-parity-source a,body.mars-page main .mars-v20313-parity-source a:link,body.mars-page main .mars-v20313-parity-source a:visited{
  color:#f4f7f8!important;-webkit-text-fill-color:#f4f7f8!important;text-decoration-color:#e0b665!important;
}
