/* ============================================================
   odNOVA — Microneedling TEST 4+5 · CODEX CONVERSATION V2
   PHONE concept: TEST 5 FULL's nested conversation with TEST 3's
   CODEX hero and TEST 4's geometric precision below the fold.
   Independent V2 copy, isolated from every earlier candidate.
   ============================================================ */

body.mn5-page {
  --mn5-paper: #eee8dd;
  --mn5-paper-warm: #e3dacd;
  --mn5-card: #f7f2e9;
  --mn5-ink: #17231d;
  --mn5-body: #4e574f;
  --mn5-green: #10231b;
  --mn5-green-deep: #08130f;
  --mn5-gold: #b9935f;
  --mn5-burgundy: #713b38;
  --mn5-slate: #3d5661;
  --mn5-line: rgba(23, 35, 29, .16);
  --mn5-light-line: rgba(247, 242, 233, .17);
  margin: 0;
  overflow-x: clip;
  background: var(--mn5-paper);
  color: var(--mn5-ink);
  font-family: var(--font-sans);
  font-weight: 300;
}

body.mn5-page *, body.mn5-page *::before, body.mn5-page *::after { box-sizing: border-box; }
body.mn5-page main { display: block; overflow: clip; }
:where(body.mn5-page) a { color: inherit; text-decoration: none; }
body.mn5-page button, body.mn5-page summary { font: inherit; }
.mn5-page :is(a, button, summary):focus-visible {
  outline: 2px solid #b89556;
  outline-offset: 3px;
}

body.mn5f-page summary:focus-visible {
  outline: 0;
  box-shadow: inset 0 0 0 1px rgba(185,147,95,.62);
}
body.mn5-page p, body.mn5-page h1, body.mn5-page h2, body.mn5-page h3,
body.mn5-page blockquote, body.mn5-page dl, body.mn5-page dd,
body.mn5-page ol, body.mn5-page ul { margin-top: 0; }
body.mn5-page [hidden] { display: none !important; }

.mn5-skip {
  position: fixed;
  z-index: 10020;
  top: 12px;
  left: 14px;
  transform: translateY(-180%);
  padding: 12px 15px;
  background: var(--mn5-card);
  color: var(--mn5-green-deep);
  font: 500 11px/1 var(--font-mono);
  letter-spacing: .08em;
  transition: transform .2s ease;
}
.mn5-skip:focus { transform: none; }
.mn5-wrap { width: min(100%, 600px); margin-inline: auto; padding-inline: 22px; }
.mn5-kicker {
  margin: 0 0 16px;
  color: rgba(23, 35, 29, .57);
  font: 500 9.5px/1.45 var(--font-mono);
  letter-spacing: .18em;
  text-transform: uppercase;
}

/* ---------- The room: portrait above, consultation card below ---------- */
.mn5-hero {
  position: relative;
  isolation: isolate;
  min-height: 100svh;
  overflow: hidden;
  background: var(--mn5-green-deep);
  color: #f6f0e7;
}
.mn5-announcement {
  position: relative;
  z-index: 6;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  min-height: 30px;
  padding: max(6px, env(safe-area-inset-top)) 16px 5px;
  border-bottom: 1px solid rgba(247, 242, 233, .11);
  color: rgba(247, 242, 233, .64);
  font: 400 8px/1.2 var(--font-mono);
  letter-spacing: .13em;
  text-transform: uppercase;
}
.mn5-announcement a {
  position: relative;
  display: inline-flex;
  min-height: 24px;
  align-items: center;
}
.mn5-announcement a + a::before {
  content: "";
  position: absolute;
  left: -11px;
  top: 50%;
  width: 2px;
  height: 2px;
  border-radius: 50%;
  background: var(--mn5-gold);
}
.mn5-hero #heroNav {
  position: relative;
  z-index: 6;
  min-height: 72px;
  flex-wrap: nowrap;
  padding: 14px 22px !important;
}
.mn5-hero #heroNav .hero-mark { color: #f6f0e7; font-size: 30px; }
.mn5-hero #hamburger { margin-left: auto; }
.mn5-hero #hamburger .hamburger-bar { width: 20px; height: 1px; background: #f6f0e7; }
.mn5-hero-portrait {
  position: absolute;
  z-index: 0;
  inset: 0 0 auto;
  height: 59svh;
  overflow: hidden;
  background: #30352f;
}
.mn5-hero-portrait::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(4, 10, 7, .32) 0 18%, transparent 46%),
    linear-gradient(180deg, transparent 48%, rgba(8, 19, 15, .92) 100%),
    linear-gradient(90deg, rgba(8, 19, 15, .18), transparent 42%);
}
.mn5-hero-portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 23%;
  filter: saturate(.78) contrast(.95) sepia(.08);
  transform: scale(1.025);
}
.mn5-hero-card {
  position: absolute;
  z-index: 4;
  right: 14px;
  bottom: max(14px, env(safe-area-inset-bottom));
  left: 14px;
  min-height: 45svh;
  padding: 25px 23px 19px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .4);
  border-radius: 29px 7px 29px 29px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.54), transparent 42%),
    rgba(239, 233, 222, .97);
  box-shadow: 0 28px 70px rgba(0, 0, 0, .34), inset 0 1px rgba(255,255,255,.72);
  color: var(--mn5-ink);
}
.mn5-hero-card::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  height: 36px;
  background: linear-gradient(225deg, #cfc4b4 0 49%, transparent 50%);
  opacity: .8;
}
.mn5-hero-card .mn5-kicker { margin-bottom: 12px; }
.mn5-hero h1 {
  max-width: 9ch;
  margin: 0 0 11px;
  font: 300 clamp(38px, 11.8vw, 49px)/.91 var(--font-serif);
  letter-spacing: -.035em;
}
.mn5-hero h1 i { color: var(--mn5-burgundy); font-weight: 300; }
.mn5-hero blockquote {
  max-width: 31ch;
  margin: 0 0 10px;
  color: var(--mn5-body);
  font: 300 14.5px/1.42 var(--font-sans);
}
.mn5-byline {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin: 0 0 14px;
  color: rgba(23,35,29,.55);
  font: 400 8px/1.3 var(--font-mono);
  letter-spacing: .06em;
  text-transform: uppercase;
}
.mn5-byline span { color: var(--mn5-ink); font: italic 400 19px/1 var(--font-serif); letter-spacing: 0; text-transform: none; }
.mn5-start-link {
  display: flex;
  min-height: 47px;
  align-items: center;
  justify-content: space-between;
  padding: 0 15px;
  border-radius: 14px 4px 14px 14px;
  background: var(--mn5-green);
  color: #f5eee4;
  font: 500 9px/1 var(--font-mono);
  letter-spacing: .13em;
  text-transform: uppercase;
}

/* ---------- A tactile choice, not a table of contents ---------- */
.mn5-start {
  min-height: 100svh;
  padding: 82px 0 70px;
  background:
    radial-gradient(90% 34% at 100% 0, rgba(113,59,56,.08), transparent 72%),
    var(--mn5-paper);
}
.mn5-start h2 {
  max-width: 10ch;
  margin: 0 0 35px;
  font: 300 43px/.98 var(--font-serif);
  letter-spacing: -.025em;
}
.mn5-question-picks { display: grid; gap: 9px; }
.mn5-question-picks a {
  position: relative;
  display: grid;
  min-height: 79px;
  align-content: center;
  padding: 14px 52px 14px 17px;
  border: 1px solid rgba(23,35,29,.15);
  border-radius: 3px 18px 18px 18px;
  background: rgba(248, 244, 237, .7);
  box-shadow: 0 10px 30px -26px rgba(23,35,29,.7);
}
.mn5-question-picks a:nth-child(even) { margin-left: 24px; border-radius: 18px 3px 18px 18px; }
.mn5-question-picks a::after {
  content: "↗";
  position: absolute;
  right: 17px;
  top: 50%;
  color: var(--mn5-burgundy);
  font: 300 20px/1 var(--font-serif);
  transform: translateY(-50%);
}
.mn5-question-picks span { font: 400 18px/1.12 var(--font-serif); }
.mn5-question-picks small { margin-top: 5px; color: rgba(23,35,29,.58); font-size: 12px; line-height: 1.35; }
.mn5-read-order { margin: 29px 0 0; color: var(--mn5-body); font-size: 13px; line-height: 1.55; }
.mn5-read-order a { display: inline-block; padding: 8px 0; border-bottom: 1px solid var(--mn5-gold); color: var(--mn5-ink); }

/* ---------- The conversation ---------- */
.mn5-thread { background: #dcd4c8; }
.mn5-thread-intro {
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 16px 14px;
  padding-top: 70px;
  padding-bottom: 54px;
}
.mn5-portrait-dot {
  width: 52px;
  height: 52px;
  overflow: hidden;
  border: 2px solid rgba(255,255,255,.72);
  border-radius: 50% 50% 46% 54%;
  box-shadow: 0 8px 22px rgba(23,35,29,.16);
}
.mn5-portrait-dot img { width: 100%; height: 100%; object-fit: cover; object-position: 56% 48%; transform: scale(1.5); }
.mn5-thread-intro .mn5-kicker { margin: 2px 0 9px; }
.mn5-thread-intro h2 { margin: 0; font: 300 35px/.98 var(--font-serif); letter-spacing: -.02em; }
.mn5-thread-intro h2 i { color: var(--mn5-burgundy); font-weight: 300; }
.mn5-thread-intro > p:last-child { grid-column: 1 / -1; max-width: 34ch; margin: 3px 0 0 66px; color: var(--mn5-body); font-size: 14px; line-height: 1.56; }
.mn5-exchanges { border-top: 1px solid rgba(23,35,29,.18); }
.mn5-exchange {
  border-bottom: 1px solid rgba(23,35,29,.18);
  background: transparent;
}
.mn5-exchange > summary {
  position: relative;
  display: grid;
  grid-template-columns: 40px 1fr 28px;
  min-height: 92px;
  align-items: center;
  gap: 3px 10px;
  padding: 15px 18px 15px 22px;
  cursor: pointer;
  list-style: none;
  transition: background .25s ease, color .25s ease;
}
.mn5-exchange > summary::-webkit-details-marker,
.mn5-depth > summary::-webkit-details-marker,
.mn5-faq-list summary::-webkit-details-marker,
.mn5-references > summary::-webkit-details-marker { display: none; }
.mn5-exchange > summary::marker,
.mn5-depth > summary::marker,
.mn5-faq-list summary::marker,
.mn5-references > summary::marker { content: ""; }
.mn5-exchange > summary .mn5-you {
  grid-row: 1 / span 2;
  align-self: start;
  margin-top: 4px;
  color: var(--mn5-burgundy);
  font: 500 8px/1 var(--font-mono);
  letter-spacing: .16em;
  text-transform: uppercase;
}
.mn5-exchange > summary strong { font: 300 20px/1.08 var(--font-serif); letter-spacing: -.01em; }
.mn5-exchange > summary small { color: rgba(23,35,29,.5); font: 400 8px/1 var(--font-mono); letter-spacing: .12em; text-transform: uppercase; }
.mn5-exchange > summary i {
  grid-column: 3;
  grid-row: 1 / span 2;
  position: relative;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(23,35,29,.22);
  border-radius: 50%;
}
.mn5-exchange > summary i::before,
.mn5-exchange > summary i::after { content: ""; position: absolute; left: 50%; top: 50%; width: 9px; height: 1px; background: currentColor; transform: translate(-50%,-50%); }
.mn5-exchange > summary i::after { transform: translate(-50%,-50%) rotate(90deg); transition: transform .25s ease; }
.mn5-exchange[open] > summary { background: var(--mn5-green); color: #f3eee6; }
.mn5-exchange[open] > summary .mn5-you { color: #d6b783; }
.mn5-exchange[open] > summary small { color: rgba(243,238,230,.54); }
.mn5-exchange[open] > summary i { border-color: rgba(243,238,230,.25); }
.mn5-exchange[open] > summary i::after { transform: translate(-50%,-50%) rotate(0deg); }
.mn5-exchange-body {
  padding: 20px 22px 34px;
  background: var(--mn5-card);
  color: var(--mn5-body);
  font-size: 14.5px;
  line-height: 1.62;
}
.mn5-exchange-body > p { margin-bottom: 19px; }
.mn5-exchange-body h3 { color: var(--mn5-ink); font: 400 21px/1.12 var(--font-serif); }
.mn5-exchange-body sup { display: inline-block; margin-left: 3px; vertical-align: super; line-height: 0; }
.mn5-exchange-body sup a {
  display: inline-flex;
  min-width: 24px;
  min-height: 24px;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid rgba(113,59,56,.35);
  color: var(--mn5-burgundy);
  font: 500 9px/1 var(--font-mono);
}
.mn5-reply {
  position: relative;
  margin: 0 0 27px 15px;
  padding: 20px 20px 20px 23px;
  border-radius: 23px 23px 5px 23px;
  background: var(--mn5-green);
  box-shadow: 0 20px 40px -30px rgba(8,19,15,.8), inset 0 1px rgba(255,255,255,.05);
  color: rgba(244,239,231,.84);
}
.mn5-reply::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -8px;
  width: 16px;
  height: 16px;
  background: linear-gradient(135deg, var(--mn5-green) 0 49%, transparent 50%);
}
.mn5-reply p { margin: 0; }
.mn5-reply .mn5-piotr { margin: 0 0 8px; color: #d6b783; font: 500 8px/1 var(--font-mono); letter-spacing: .17em; text-transform: uppercase; }
.mn5-reply .mn5-piotr + p { font: 300 18px/1.42 var(--font-serif); }
.mn5-four-looks { display: grid; margin: 0 0 24px; border-top: 1px solid var(--mn5-line); }
.mn5-four-looks p { display: grid; grid-template-columns: 1fr 1.25fr; gap: 15px; margin: 0; padding: 12px 0; border-bottom: 1px solid var(--mn5-line); }
.mn5-four-looks b { color: var(--mn5-ink); font: 400 16px/1.18 var(--font-serif); }
.mn5-four-looks span { font-size: 12.5px; line-height: 1.45; }
.mn5-honest {
  margin: 24px 0;
  padding: 15px 16px;
  border-left: 2px solid var(--mn5-gold);
  background: rgba(185,147,95,.08);
}
.mn5-honest span { color: #7d5c31; font: 500 8px/1 var(--font-mono); letter-spacing: .15em; text-transform: uppercase; }
.mn5-honest p { margin: 6px 0 0; color: var(--mn5-ink); font: italic 300 16px/1.45 var(--font-serif); }

/* ---------- Optional depth remains optional ---------- */
.mn5-depth { margin: 21px 0; border-top: 1px solid var(--mn5-line); border-bottom: 1px solid var(--mn5-line); }
.mn5-depth > summary {
  display: flex;
  min-height: 55px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  cursor: pointer;
  list-style: none;
  color: var(--mn5-ink);
  font: 400 12px/1.3 var(--font-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.mn5-depth > summary span { color: var(--mn5-burgundy); font: 300 21px/1 var(--font-serif); transition: transform .2s ease; }
.mn5-depth[open] > summary span { transform: rotate(45deg); }
.mn5-depth > div { padding: 2px 0 20px; }
.mn5-depth > div p { margin-bottom: 16px; }
.mn5-depth > div p:last-child { margin-bottom: 0; }
.mn5-depth ul { margin: 8px 0 0; padding-left: 19px; }
.mn5-depth li { margin-bottom: 8px; padding-left: 3px; }
.mn5-next, .mn5-finish {
  display: flex;
  width: 100%;
  min-height: 52px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 27px;
  padding: 0 16px;
  border: 0;
  border-radius: 15px 4px 15px 15px;
  background: #dcd3c5;
  color: var(--mn5-ink);
  cursor: pointer;
  font: 500 9px/1.2 var(--font-mono);
  letter-spacing: .1em;
  text-align: left;
  text-transform: uppercase;
}
.mn5-next span, .mn5-finish span { color: var(--mn5-burgundy); font-size: 17px; }

/* ---------- Repair, visit and recovery beats ---------- */
.mn5-repair-beats { position: relative; margin: 0 0 26px; padding-left: 29px; }
.mn5-repair-beats::before { content: ""; position: absolute; top: 12px; bottom: 12px; left: 8px; width: 1px; background: rgba(185,147,95,.48); }
.mn5-repair-beats article { position: relative; padding: 2px 0 23px 12px; }
.mn5-repair-beats article:last-child { padding-bottom: 0; }
.mn5-repair-beats article > span { position: absolute; left: -33px; top: 2px; width: 25px; padding: 5px 0; border: 1px solid rgba(185,147,95,.55); border-radius: 50%; background: var(--mn5-card); color: #7d5c31; font: 500 6px/1.4 var(--font-mono); text-align: center; text-transform: uppercase; }
.mn5-repair-beats h3 { margin: 0 0 5px; }
.mn5-repair-beats p { margin: 0; }
.mn5-visit-line { margin: 0 0 24px; padding: 0; list-style: none; border-top: 1px solid var(--mn5-line); }
.mn5-visit-line li { display: grid; grid-template-columns: 63px 1fr; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--mn5-line); }
.mn5-visit-line span { padding-top: 2px; color: #7d5c31; font: 500 8px/1.3 var(--font-mono); letter-spacing: .12em; text-transform: uppercase; }
.mn5-visit-line p { margin: 0; }
.mn5-timeline { position: relative; margin: 3px 0 24px; padding-left: 25px; }
.mn5-timeline::before { content: ""; position: absolute; left: 5px; top: 6px; bottom: 7px; width: 1px; background: rgba(185,147,95,.6); }
.mn5-timeline section { position: relative; padding: 0 0 20px 9px; }
.mn5-timeline section::before { content: ""; position: absolute; left: -23px; top: 5px; width: 7px; height: 7px; border: 2px solid var(--mn5-card); border-radius: 50%; background: var(--mn5-gold); box-shadow: 0 0 0 1px var(--mn5-gold); }
.mn5-timeline section:last-child { padding-bottom: 0; }
.mn5-timeline time { color: #7d5c31; font: 500 8px/1 var(--font-mono); letter-spacing: .14em; text-transform: uppercase; }
.mn5-timeline p { margin: 5px 0 0; }
.mn5-contact { margin: 24px 0; padding: 16px; border: 1px solid rgba(113,59,56,.3); border-radius: 3px 16px 16px 16px; background: rgba(113,59,56,.06); }
.mn5-contact strong { color: var(--mn5-burgundy); font: 500 9px/1 var(--font-mono); letter-spacing: .13em; text-transform: uppercase; }
.mn5-contact p { margin: 7px 0 0; }

/* ---------- Research arrives as a sequence of paper notes ---------- */
.mn5-exchange--evidence > summary, .mn5-exchange--evidence[open] > summary { background: #304854; }
.mn5-exchange--evidence .mn5-exchange-body { background: #253b45; color: rgba(241,239,233,.75); }
.mn5-exchange--evidence .mn5-reply { background: #182a32; }
.mn5-evidence-key {
  display: grid;
  gap: 1px;
  margin: 0 0 24px;
  overflow: hidden;
  border: 1px solid rgba(241,239,233,.15);
  border-radius: 3px 16px 16px 16px;
  background: rgba(9,22,27,.22);
}
.mn5-evidence-key p {
  position: relative;
  display: grid;
  grid-template-columns: 7px 78px 1fr;
  align-items: center;
  gap: 9px;
  margin: 0;
  padding: 12px 13px;
  background: rgba(255,255,255,.025);
}
.mn5-evidence-key p + p { border-top: 1px solid rgba(241,239,233,.1); }
.mn5-evidence-key p:nth-child(1) { background: rgba(167,213,180,.13); }
.mn5-evidence-key p:nth-child(2) { background: rgba(255,231,183,.11); }
.mn5-evidence-key p:nth-child(3) { background: rgba(195,213,218,.12); }
.mn5-evidence-key__mark { width: 7px; height: 7px; border-radius: 50%; box-shadow: 0 0 0 3px rgba(255,255,255,.035); }
.mn5-evidence-key__mark--stronger { background: #a7d5b4; }
.mn5-evidence-key__mark--supportive { background: #ffe7b7; }
.mn5-evidence-key__mark--limited { background: #c3d5da; }
.mn5-evidence-key strong { color: #f5f1ea; font: 500 8px/1.3 var(--font-mono); letter-spacing: .1em; text-transform: uppercase; }
.mn5-evidence-key small { color: rgba(235,239,236,.74); font: 400 10px/1.35 var(--font-sans); }
.mn5-research-receipt {
  margin: 0 0 22px;
  padding: 20px 18px;
  border: 1px solid rgba(255,231,183,.23);
  border-radius: 4px 20px 20px 20px;
  background: linear-gradient(145deg,rgba(255,231,183,.105),rgba(9,22,27,.26) 55%);
}
.mn5-research-receipt > p:first-child { margin: 0 0 8px; color: #ffe7b7; font: 500 8px/1.4 var(--font-mono); letter-spacing: .14em; text-transform: uppercase; }
.mn5-research-receipt h3 { margin: 0 0 17px; max-width: 18ch; color: #f5f1ea; font: 300 25px/1.05 var(--font-serif); }
.mn5-research-receipt > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; overflow: hidden; border: 1px solid rgba(245,241,234,.13); border-radius: 3px 14px 14px 14px; background: rgba(245,241,234,.1); }
.mn5-research-receipt span { min-height: 99px; padding: 13px; background: rgba(9,22,27,.42); }
.mn5-research-receipt b { display: block; margin-bottom: 6px; color: #f5f1ea; font: 300 33px/.95 var(--font-serif); }
.mn5-research-receipt small { display: block; color: rgba(235,239,236,.76); font: 400 9px/1.4 var(--font-sans); }
.mn5-research-receipt > p:last-child { margin: 16px 0 0; color: rgba(241,239,233,.76); font-size: 11.5px; line-height: 1.55; }
.mn5-research-receipt > p:last-child strong { color: #f5f1ea; font-weight: 600; }
.mn5-evidence-lens-title { display: grid; grid-template-columns: 48px 1fr; gap: 13px; align-items: end; margin: 31px 0 14px; padding-bottom: 13px; border-bottom: 1px solid rgba(255,231,183,.34); }
.mn5-evidence-lens-title > span { display: grid; width: 48px; height: 48px; place-items: center; border: 1px solid rgba(255,231,183,.42); border-radius: 50%; color: #ffe7b7; font: 600 7px/1 var(--font-mono); letter-spacing: .13em; text-transform: uppercase; }
.mn5-evidence-lens-title h3 { margin: 0; color: #f5f1ea; font: 300 31px/.95 var(--font-serif); }
.mn5-evidence-lens-title p { margin: 5px 0 0; color: rgba(235,239,236,.72); font-size: 10.5px; line-height: 1.4; }
.mn5-swipe-hint { display: flex; justify-content: space-between; gap: 12px; color: rgba(241,239,233,.65); font: 500 8px/1.4 var(--font-mono); letter-spacing: .12em; text-transform: uppercase; }
.mn5-swipe-hint span { color: #d6b783; }
.mn5-evidence-strip {
  display: grid;
  grid-auto-columns: min(84vw, 300px);
  grid-auto-flow: column;
  gap: 12px;
  margin: 0 -22px 25px;
  padding: 2px 22px 15px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-padding-inline: 22px;
  scroll-snap-type: inline mandatory;
  scrollbar-width: none;
}
.mn5-evidence-strip:focus-visible { outline: 2px solid #ffe7b7; outline-offset: 4px; }
.mn5-evidence-strip::-webkit-scrollbar { display: none; }
.mn5-evidence-strip > article {
  --mn5-evidence-level: #c3d5da;
  position: relative;
  min-height: 430px;
  padding: 23px 20px;
  border: 1px solid color-mix(in srgb, var(--mn5-evidence-level) 38%, transparent);
  border-radius: 4px 22px 22px 22px;
  overflow: hidden;
  background: linear-gradient(145deg, color-mix(in srgb, var(--mn5-evidence-level) 16%, transparent), rgba(12,27,33,.4) 44%);
  box-shadow: inset 0 1px rgba(255,255,255,.04);
  scroll-snap-align: start;
}
.mn5-evidence-strip > article::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--mn5-evidence-level); opacity: 1; }
.mn5-evidence-strip > .mn5-evidence-card--stronger { --mn5-evidence-level: #a7d5b4; }
.mn5-evidence-strip > .mn5-evidence-card--supportive { --mn5-evidence-level: #ffe7b7; }
.mn5-evidence-strip > .mn5-evidence-card--limited { --mn5-evidence-level: #c3d5da; }
.mn5-evidence-strip > article > p { display: inline-flex; margin: 0 0 16px; padding: 6px 8px; border: 1px solid color-mix(in srgb,var(--mn5-evidence-level) 48%,transparent); border-radius: 999px; background: color-mix(in srgb,var(--mn5-evidence-level) 12%,transparent); color: var(--mn5-evidence-level); font: 600 8px/1.35 var(--font-mono); letter-spacing: .13em; text-transform: uppercase; }
.mn5-evidence-strip h3 { margin: 0 0 14px; color: #f5f1ea; font: 300 27px/1.02 var(--font-serif); }
.mn5-evidence-strip small { display: block; min-height: 44px; color: rgba(224,233,233,.78); font: 400 9.5px/1.5 var(--font-mono); letter-spacing: .025em; }
.mn5-evidence-strip small a { color: #ffe7b7; border-bottom: 1px solid rgba(255,231,183,.38); }
.mn5-evidence-strip dl { margin: 18px 0 0; }
.mn5-evidence-strip dl div { display: grid; grid-template-columns: 62px 1fr; gap: 9px; padding-top: 10px; border-top: 1px solid rgba(241,239,233,.13); }
.mn5-evidence-strip dt { color: var(--mn5-evidence-level); font: 500 7px/1.5 var(--font-mono); letter-spacing: .09em; text-transform: uppercase; }
.mn5-evidence-strip dd { margin: 0; font-size: 12.5px; line-height: 1.5; }
.mn5-evidence-strip dd strong { color: #fffaf1; font-weight: 650; }
.mn5-evidence-study-intro { margin-top: 0; }
.mn5-evidence-study-intro sup { margin-left: 3px; font: 500 8px/1 var(--font-mono); }
.mn5-evidence-study-intro sup a { color: #ffe7b7; border-bottom: 1px solid rgba(255,231,183,.4); }
.mn5-evidence-metrics { display: grid; gap: 9px; margin: 20px 0; }
.mn5-evidence-metrics article {
  padding: 17px 15px;
  border: 1px solid rgba(241,239,233,.15);
  border-radius: 3px 15px 15px 15px;
  background: rgba(9,22,27,.28);
}
.mn5-evidence-metrics span { display: block; margin-bottom: 7px; color: #ffe7b7; font: 300 31px/1 var(--font-serif); }
.mn5-evidence-metrics h4 { margin: 0 0 7px; color: #f5f1ea; font: 400 9px/1.25 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.mn5-evidence-metrics p { margin: 0; color: rgba(241,239,233,.76); font-size: 12px; line-height: 1.5; }
.mn5-evidence-caution { margin: 18px 0 0; padding: 15px 16px; border-left: 3px solid #c3d5da; background: rgba(9,22,27,.25); }
.mn5-evidence-caution strong { display: block; margin-bottom: 6px; color: #c3d5da; font: 500 8px/1.35 var(--font-mono); letter-spacing: .1em; text-transform: uppercase; }
.mn5-evidence-caution p { margin: 0; }
.mn5-depth--evidence { border-color: rgba(241,239,233,.18); }
.mn5-depth--evidence > summary { color: #f1eee8; }
.mn5-depth--evidence > summary span { color: #d6b783; }
.mn5-exchange--evidence .mn5-next { background: #182a32; color: #f3eee6; }

/* Imported clinical record: inline presentation is removed in JS. */
.mn5-study-record { display: grid; gap: 12px; }
.mn5-study-record > p { color: rgba(241,239,233,.72); font-size: 13px; line-height: 1.55; }
.mn5-study-record > article {
  --mn5-study-level: #c3d5da;
  padding: 18px 16px;
  border: 1px solid rgba(241,239,233,.16);
  border-left: 3px solid var(--mn5-study-level);
  border-radius: 3px 17px 17px 17px;
  background: rgba(9,22,27,.35);
}
.mn5-study-record > .mn5-study-card--stronger { --mn5-study-level: #a7d5b4; }
.mn5-study-record > .mn5-study-card--supportive { --mn5-study-level: #ffe7b7; }
.mn5-study-record > .mn5-study-card--limited { --mn5-study-level: #c3d5da; }
.mn5-study-record > article > div:first-child { margin-bottom: 7px; color: var(--mn5-study-level); font: 500 7.5px/1.4 var(--font-mono); letter-spacing: .13em; text-transform: uppercase; }
.mn5-study-record h4 { margin: 0 0 5px; color: #f5f1ea; font: 300 21px/1.08 var(--font-serif); }
.mn5-study-record article > p { margin: 0 0 11px; color: rgba(214,226,225,.62); font: 400 8px/1.5 var(--font-mono); }
.mn5-study-record article > div:not(:first-child) { padding: 9px 0; border-top: 1px solid rgba(241,239,233,.13); }
.mn5-study-record article > div:not(:first-child) > span { display: block; margin-bottom: 3px; color: var(--mn5-study-level); font: 500 7px/1.4 var(--font-mono); letter-spacing: .11em; text-transform: uppercase; }
.mn5-study-record article > div:not(:first-child) p { margin: 0; color: rgba(241,239,233,.74); font-size: 12.5px; line-height: 1.52; }
.mn5-study-record strong { color: #f5f1ea; font-weight: 400; }
.mn5-study-record a {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
  color: #e1c797;
  border-bottom: 1px solid rgba(225,199,151,.45);
}

/* ---------- Course receipt and risk semantics ---------- */
.mn5-course-line { display: grid; grid-template-columns: auto 31px 1fr 31px 1fr 31px; align-items: center; gap: 7px; margin: 3px 0 22px; }
.mn5-course-line > span { grid-column: 1 / -1; margin-bottom: 7px; color: #7d5c31; font: 500 8px/1 var(--font-mono); letter-spacing: .14em; text-transform: uppercase; }
.mn5-course-line b { display: grid; width: 31px; height: 31px; place-items: center; border: 1px solid rgba(23,35,29,.22); border-radius: 50%; font: 400 9px/1 var(--font-mono); }
.mn5-course-line i { height: 1px; background: rgba(23,35,29,.2); }
.mn5-course-line small { grid-column: 1 / -1; margin-top: 9px; color: rgba(23,35,29,.55); font: 400 8px/1 var(--font-mono); letter-spacing: .1em; text-align: right; text-transform: uppercase; }
.mn5-receipt {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  margin: 26px 0;
  padding: 22px 20px 20px;
  border: 1px solid rgba(23,35,29,.18);
  border-radius: 4px;
  background: #e4dbce;
  box-shadow: 0 15px 35px -31px rgba(23,35,29,.8);
}
.mn5-receipt::before, .mn5-receipt::after { content: ""; position: absolute; top: 59px; width: 16px; height: 16px; border-radius: 50%; background: var(--mn5-card); }
.mn5-receipt::before { left: -9px; }
.mn5-receipt::after { right: -9px; }
.mn5-receipt p { margin: 0; color: #7d5c31; font: 500 8px/1 var(--font-mono); letter-spacing: .13em; text-transform: uppercase; }
.mn5-receipt strong { grid-row: 1 / span 2; grid-column: 2; color: var(--mn5-ink); font: 300 43px/.9 var(--font-serif); }
.mn5-receipt small { margin-top: 7px; color: var(--mn5-body); font: 400 11px/1 var(--font-mono); }
.mn5-receipt > span { grid-column: 1 / -1; margin-top: 20px; padding-top: 16px; border-top: 1px dashed rgba(23,35,29,.25); font-size: 11.5px; line-height: 1.5; }
.mn5-risk-ledger { margin: 25px 0; }
.mn5-risk-ledger section { position: relative; padding: 14px 14px 14px 18px; border-top: 1px solid var(--mn5-line); background: rgba(255,255,255,.2); }
.mn5-risk-ledger section:last-child { border-bottom: 1px solid var(--mn5-line); }
.mn5-risk-ledger section::before { content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 2px; }
.mn5-risk-ledger [data-risk="expected"]::before { background: #547d64; }
.mn5-risk-ledger [data-risk="reported"]::before { background: #aa7b38; }
.mn5-risk-ledger [data-risk="persistent"]::before { background: var(--mn5-burgundy); }
.mn5-risk-ledger span { color: var(--mn5-ink); font: 500 8px/1.4 var(--font-mono); letter-spacing: .12em; text-transform: uppercase; }
.mn5-risk-ledger p { margin: 5px 0 0; }
.mn5-risk-note { margin: -10px 0 22px; padding: 13px 15px; border-left: 2px solid rgba(125,92,49,.42); background: rgba(255,255,255,.24); color: var(--mn5-body); font-size: 12.5px; line-height: 1.55; }
.mn5-risk-note strong { color: var(--mn5-ink); }
.mn5-other-routes { margin: 0 0 23px; border-top: 1px solid var(--mn5-line); }
.mn5-other-routes div { display: grid; grid-template-columns: 1fr 1.15fr; gap: 13px; padding: 13px 0; border-bottom: 1px solid var(--mn5-line); }
.mn5-other-routes dt { color: var(--mn5-ink); font: 400 16px/1.16 var(--font-serif); }
.mn5-other-routes dd { margin: 0; font-size: 12.5px; line-height: 1.45; }

/* ---------- FAQ, source trail and last word ---------- */
.mn5-faq { padding: 76px 0 70px; background: var(--mn5-paper); }
.mn5-faq h2, .mn5-sources h2, .mn5-close h2 { margin: 0 0 17px; font: 300 41px/.98 var(--font-serif); letter-spacing: -.025em; }
.mn5-faq .mn5-wrap > p:not(.mn5-kicker), .mn5-sources .mn5-wrap > p:not(.mn5-kicker) { color: var(--mn5-body); font-size: 14px; line-height: 1.55; }
.mn5-faq-list { margin-top: 30px; border-top: 1px solid var(--mn5-line); }
.mn5-faq-list details { border-bottom: 1px solid var(--mn5-line); }
.mn5-faq-list summary {
  position: relative;
  display: flex;
  min-height: 59px;
  align-items: center;
  padding: 11px 38px 11px 0;
  cursor: pointer;
  list-style: none;
  color: var(--mn5-ink);
  font: 300 16px/1.25 var(--font-sans);
}
.mn5-faq-list summary::after { content: "+"; position: absolute; right: 3px; color: var(--mn5-burgundy); font: 300 20px/1 var(--font-serif); }
.mn5-faq-list details[open] summary::after { content: "×"; }
.mn5-faq-list details p { margin: 0; padding: 0 22px 18px 0; color: var(--mn5-body); font-size: 13.5px; line-height: 1.57; }
.mn5-sources { padding: 76px 0 72px; background: #d8d0c4; }
.mn5-references { margin: 28px 0 37px; border-top: 1px solid var(--mn5-line); border-bottom: 1px solid var(--mn5-line); }
.mn5-references > summary { display: flex; min-height: 58px; align-items: center; justify-content: space-between; cursor: pointer; list-style: none; color: var(--mn5-ink); font: 500 9px/1.2 var(--font-mono); letter-spacing: .13em; text-transform: uppercase; }
.mn5-references > summary span { color: var(--mn5-burgundy); font: 300 21px/1 var(--font-serif); transition: transform .2s ease; }
.mn5-references[open] > summary span { transform: rotate(45deg); }
.mn5-import-fallback { padding: 15px; border: 1px solid rgba(113,59,56,.3); background: rgba(113,59,56,.06); color: var(--mn5-ink); }
.mn5-import-fallback a { border-bottom: 1px solid var(--mn5-burgundy); }
.mn5-imported-references { margin: 0; padding: 0 0 20px 24px; }
.mn5-imported-references li { margin-bottom: 17px; padding-left: 3px; color: var(--mn5-body); font-size: 11.5px; line-height: 1.5; }
.mn5-imported-references strong { color: var(--mn5-ink); font-weight: 400; }
.mn5-imported-references a {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
  color: #6a4c2d;
  border-bottom: 1px solid rgba(106,76,45,.3);
  overflow-wrap: anywhere;
}
.mn5-author { padding-top: 20px; border-top: 1px solid var(--mn5-line); }
.mn5-author p:first-child { margin: 0 0 6px; color: rgba(23,35,29,.55); font: 500 8px/1 var(--font-mono); letter-spacing: .14em; text-transform: uppercase; }
.mn5-author h3 { margin: 0 0 7px; font: italic 300 27px/1 var(--font-serif); }
.mn5-author h3 a { border-bottom: 1px solid var(--mn5-gold); }
.mn5-author p:last-child { max-width: 38ch; margin: 0; color: var(--mn5-body); font-size: 11.5px; line-height: 1.55; }
.mn5-close {
  position: relative;
  display: flex;
  min-height: 100svh;
  align-items: flex-end;
  overflow: hidden;
  padding: 72px 0 62px;
  background: var(--mn5-green-deep);
  color: #f5f0e8;
}
.mn5-close-photo { position: absolute; inset: 0; opacity: .34; }
.mn5-close-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(8,19,15,.15), rgba(8,19,15,.97) 68%); }
.mn5-close-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 58% center; filter: grayscale(.35) saturate(.75); }
.mn5-close .mn5-wrap { position: relative; z-index: 2; }
.mn5-close .mn5-kicker { color: #d6b783; }
.mn5-close h2 { color: #f5f0e8; }
.mn5-close h2 i { color: #d6b783; font-weight: 300; }
.mn5-close p:not(.mn5-kicker) { max-width: 32ch; margin-bottom: 28px; color: rgba(245,240,232,.7); font-size: 14px; line-height: 1.57; }
.mn5-primary { display: flex; min-height: 54px; align-items: center; justify-content: space-between; padding: 0 17px; border: 1px solid rgba(214,183,131,.5); border-radius: 16px 4px 16px 16px; background: rgba(214,183,131,.1); color: #f5f0e8; font: 500 9px/1 var(--font-mono); letter-spacing: .12em; text-transform: uppercase; }
.mn5-primary span { color: #d6b783; font-size: 18px; }
.mn5-secondary { display: block; width: max-content; min-height: 44px; margin: 12px auto 0; padding: 14px 4px 8px; border-bottom: 1px solid rgba(245,240,232,.2); color: rgba(245,240,232,.7); font-size: 12px; }

/* ---------- PHONE enhancement only ---------- */
@media (max-width: 600px) {
  body.mn5-page.mn5-enhanced .mn5-exchange > summary { contain: layout paint; }
  body.mn5-page.mn5-motion .mn5-question-picks a,
  body.mn5-page.mn5-motion .mn5-thread-intro,
  body.mn5-page.mn5-motion .mn5-exchange,
  body.mn5-page.mn5-motion .mn5-faq .mn5-wrap,
  body.mn5-page.mn5-motion .mn5-sources .mn5-wrap {
    opacity: 0;
    transform: translateY(12px);
  }
  body.mn5-page.mn5-motion .mn5-seen {
    opacity: 1 !important;
    transform: none !important;
    transition: opacity .5s ease, transform .55s cubic-bezier(.2,.7,.2,1);
  }
}

/* ---------- Complete linear fallback above the phone concept ---------- */
@media (min-width: 601px) {
  .mn5-hero { min-height: 720px; }
  .mn5-hero-portrait { height: 100%; width: 56%; right: 0; left: auto; }
  .mn5-hero-card { top: 150px; right: auto; bottom: auto; left: max(5vw, 40px); width: min(480px, 44vw); min-height: 0; }
  .mn5-start, .mn5-thread, .mn5-faq, .mn5-sources, .mn5-close { min-height: auto; }
  .mn5-start { padding-block: 80px; }
  .mn5-wrap { width: min(760px, calc(100% - 48px)); }
  .mn5-thread-intro { width: min(760px, calc(100% - 48px)); }
  .mn5-exchanges { width: min(860px, calc(100% - 48px)); margin-inline: auto; }
  .mn5-exchange > summary { pointer-events: none; }
  .mn5-exchange > summary i { display: none; }
  .mn5-exchange > :not(summary), .mn5-depth > :not(summary),
  .mn5-faq-list details > :not(summary), .mn5-references > :not(summary) { display: block !important; }
  .mn5-depth > summary, .mn5-faq-list summary, .mn5-references > summary { pointer-events: none; }
  .mn5-next { display: none; }
  .mn5-evidence-strip { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; }
}

@media (prefers-reduced-motion: reduce) {
  body.mn5-page *, body.mn5-page *::before, body.mn5-page *::after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition-duration: .01ms !important;
    transition-delay: 0ms !important;
  }
  body.mn5-page.mn5-motion .mn5-question-picks a,
  body.mn5-page.mn5-motion .mn5-thread-intro,
  body.mn5-page.mn5-motion .mn5-exchange,
  body.mn5-page.mn5-motion .mn5-faq .mn5-wrap,
  body.mn5-page.mn5-motion .mn5-sources .mn5-wrap { opacity: 1; transform: none; }
}

/* ================================================================
   TEST 5 FULL · COMPLETE NESTED CONVERSATION
   Isolated additions. Earlier TEST 5 is not linked to this file.
   ================================================================ */

body.mn5f-page strong {
  color: var(--mn5-ink);
  font-weight: 500;
}

body.mn5f-page .mn5-exchange--evidence strong,
body.mn5f-page .mn5-exchange[open] > summary strong,
body.mn5f-page .mn5-close strong,
body.mn5f-page .mn5f-footer strong {
  color: inherit;
}

.mn5f-layer-guide {
  position: sticky;
  top: 0;
  z-index: 18;
  width: 100%;
  min-height: 62px;
  padding: 8px 18px 7px;
  border-top: 1px solid rgba(222,202,167,.14);
  border-bottom: 1px solid rgba(222,202,167,.24);
  background:
    linear-gradient(115deg, rgba(255,255,255,.055), transparent 38%),
    rgba(13,30,24,.94);
  box-shadow: 0 16px 28px -28px rgba(0,0,0,.9), inset 0 1px rgba(255,255,255,.04);
  color: #eee8de;
  -webkit-backdrop-filter: blur(14px) saturate(1.05);
  backdrop-filter: blur(14px) saturate(1.05);
}

.mn5f-layer-guide__label {
  position: absolute;
  top: 10px;
  left: 18px;
  color: rgba(222,202,167,.62);
  font: 500 7px/1 var(--font-mono);
  letter-spacing: .15em;
  text-transform: uppercase;
}

.mn5f-layer-guide ol {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 7px;
  margin: 21px 0 0;
  padding: 0;
  list-style: none;
}

body.mn5f-page .mn5f-layer-guide ol { margin: 21px 0 0; }

.mn5f-layer-guide li {
  position: relative;
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 4px;
  color: rgba(238,232,222,.36);
  font: 400 7.4px/1 var(--font-mono);
  letter-spacing: .02em;
  transition: color .22s ease, transform .22s ease;
}

.mn5f-layer-guide li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 7px;
  right: -3px;
  width: 6px;
  height: 1px;
  background: rgba(222,202,167,.22);
}

.mn5f-layer-guide li b {
  display: grid;
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  place-items: center;
  border: 1px solid rgba(222,202,167,.22);
  border-radius: 50%;
  color: inherit;
  font: 500 7px/1 var(--font-mono);
  transition: border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.mn5f-layer-guide li span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mn5f-layer-guide li.is-passed { color: rgba(222,202,167,.62); }
.mn5f-layer-guide li.is-passed b { background: rgba(214,183,131,.08); }
.mn5f-layer-guide li.is-active { color: #f2e8d4; transform: translateY(-1px); }
.mn5f-layer-guide li.is-active b { border-color: rgba(222,202,167,.72); background: rgba(214,183,131,.17); box-shadow: 0 0 15px rgba(214,183,131,.14); }
.mn5f-layer-guide > p { position: absolute; top: 9px; right: 18px; left: 96px; overflow: hidden; margin: 0; color: rgba(238,232,222,.65); font: 400 8px/1.2 var(--font-mono); letter-spacing: .06em; text-align: right; text-overflow: ellipsis; white-space: nowrap; }

.mn5f-layer,
.mn5f-question-index,
.mn5f-question-index a,
[id^="mn5f-"] { scroll-margin-top: 76px; }

.mn5f-page .mn5-depth,
.mn5f-page .mn5-deep {
  position: relative;
  overflow: clip;
  border: 1px solid rgba(23,35,29,.15);
  border-radius: 4px 15px 15px 15px;
  background: rgba(255,255,255,.25);
  box-shadow: inset 0 1px rgba(255,255,255,.38), 0 14px 30px -32px rgba(23,35,29,.8);
}

.mn5f-page .mn5-depth { margin: 11px 0; }
.mn5f-page .mn5-deep { margin: 10px 0 4px 9px; border-color: rgba(125,92,49,.22); background: rgba(214,183,131,.075); }

.mn5f-page .mn5-depth::before,
.mn5f-page .mn5-deep::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  left: 0;
  width: 2px;
  background: linear-gradient(180deg, rgba(125,92,49,.78), rgba(125,92,49,.09));
  transform: scaleY(0);
  transform-origin: top;
  transition: transform .32s cubic-bezier(.2,.7,.2,1);
}

.mn5f-page .mn5-depth[open]::before,
.mn5f-page .mn5-deep[open]::before { transform: scaleY(1); }

.mn5f-page .mn5-depth > summary,
.mn5f-page .mn5-deep > summary {
  position: relative;
  min-height: 58px;
  padding: 12px 42px 12px 16px;
  cursor: pointer;
  list-style: none;
  font-size: 14.5px;
  line-height: 1.28;
}

.mn5f-page .mn5-deep > summary::-webkit-details-marker { display: none; }
.mn5f-page .mn5-deep > summary::marker { content: ""; }

.mn5f-page .mn5-deep > summary { min-height: 54px; padding-left: 14px; font-size: 13.5px; }
.mn5f-page .mn5-depth > summary::before { content: "Clinical detail"; display: block; margin: 0 0 4px; color: #8a673b; font: 500 7px/1 var(--font-mono); letter-spacing: .12em; text-transform: uppercase; }
.mn5f-page .mn5-deep > summary::before { content: "Go one layer deeper"; display: block; margin: 0 0 4px; color: #8a673b; font: 500 7px/1 var(--font-mono); letter-spacing: .12em; text-transform: uppercase; }
.mn5f-page .mn5-depth > summary span,
.mn5f-page .mn5-deep > summary span { position: absolute; top: 50%; right: 15px; transform: translateY(-50%); transition: transform .22s ease; }
.mn5f-page .mn5-depth[open] > summary span,
.mn5f-page .mn5-deep[open] > summary span { transform: translateY(-50%) rotate(45deg); }

.mn5f-page .mn5-depth > div,
.mn5f-page .mn5-deep > div { padding: 2px 16px 18px; }
.mn5f-page .mn5-deep > div { padding: 1px 14px 16px; }
.mn5f-page .mn5-depth[open] > div,
.mn5f-page .mn5-deep[open] > div,
.mn5f-page .mn5-exchange[open] > .mn5-exchange-body { animation: mn5f-unfold .36s cubic-bezier(.2,.72,.2,1) both; }

@keyframes mn5f-unfold {
  from { opacity: 0; transform: translateY(7px); filter: blur(1.5px); }
  to { opacity: 1; transform: none; filter: none; }
}

.mn5f-page .mn5-depth p,
.mn5f-page .mn5-deep p { font-size: 13.5px; line-height: 1.6; }
.mn5f-page .mn5-depth a,
.mn5f-page .mn5-deep a { color: #6c4d2a; border-bottom: 1px solid rgba(108,77,42,.35); }
.mn5f-page .mn5-exchange--evidence .mn5-depth a,
.mn5f-page .mn5-exchange--evidence .mn5-deep a { color: #e1c797; border-bottom-color: rgba(225,199,151,.4); }
.mn5f-page .mn5-exchange--evidence .mn5-deep { border-color: rgba(214,183,131,.25); background: rgba(10,29,36,.62); }
.mn5f-page .mn5-exchange--evidence .mn5-deep > div { color: rgba(241,239,233,.78); }

.mn5f-scan-list { margin: 12px 0; padding: 0; list-style: none; border-top: 1px solid rgba(23,35,29,.12); }
.mn5f-scan-list li { position: relative; padding: 10px 0 10px 16px; border-bottom: 1px solid rgba(23,35,29,.12); font-size: 13px; line-height: 1.5; }
.mn5f-scan-list li::before { content: "—"; position: absolute; left: 0; color: #8a673b; }

.mn5f-scar-cards { display: grid; gap: 8px; margin: 14px 0; }
.mn5f-scar-cards article { padding: 14px; border: 1px solid rgba(23,35,29,.13); border-radius: 3px 14px 14px 14px; background: rgba(244,240,232,.58); }
.mn5f-scar-cards h3 { margin: 0 0 5px; color: var(--mn5-ink); font: 400 22px/1 var(--font-serif); }
.mn5f-scar-cards p { margin: 0; }
.mn5f-scar-map { display: block; width: 100%; height: auto; margin: 5px 0 12px; }
.mn5f-scar-map path { fill: none; stroke: #5a4630; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.mn5f-scar-map path:nth-child(3) { stroke: #8f6e43; stroke-width: 1.3; stroke-dasharray: 4 4; }
.mn5f-scar-map text { fill: #6b5438; font: 500 11px var(--font-mono); letter-spacing: .04em; }
.mn5f-fine { color: rgba(23,35,29,.52); font: 400 8px/1.5 var(--font-mono) !important; letter-spacing: .05em; }

.mn5f-decades { margin: 12px 0 4px; }
.mn5f-decades div { display: grid; grid-template-columns: 42px 1fr; gap: 9px; padding: 9px 0; border-top: 1px solid rgba(23,35,29,.12); }
.mn5f-decades dt { color: #7d5c31; font: 500 9px/1.5 var(--font-mono); }
.mn5f-decades dd { margin: 0; font-size: 12.5px; line-height: 1.48; }
.mn5f-deep-set { display: grid; gap: 4px; }

.mn5f-photo-note { position: relative; margin: 24px -22px 8px; min-height: 310px; overflow: hidden; background: #14261f; }
.mn5f-photo-note::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 32%, rgba(8,20,16,.91)); }
.mn5f-photo-note img { display: block; width: 100%; height: 310px; object-fit: cover; object-position: center; filter: saturate(.76) contrast(1.04); }
.mn5f-photo-note figcaption { position: absolute; z-index: 2; right: 22px; bottom: 20px; left: 22px; color: #f1ece3; }
.mn5f-photo-note figcaption span { color: #d6b783; font: 500 8px/1 var(--font-mono); letter-spacing: .13em; text-transform: uppercase; }
.mn5f-photo-note figcaption p { margin: 7px 0 0; color: #f1ece3; font: italic 300 24px/1.05 var(--font-serif); }

.mn5f-inline-route { padding: 13px 14px; border-left: 2px solid rgba(125,92,49,.48); background: rgba(214,183,131,.08); }
.mn5f-inline-route a { color: #6c4d2a; border-bottom: 1px solid rgba(108,77,42,.35); }
.mn5f-inline-route a,
.mn5f-page .mn5-depth > div > a,
.mn5f-page .mn5-deep > div > a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
}

.mn5f-question-finder { background: linear-gradient(148deg, #eee8de, #dcd3c6); }
.mn5f-question-index { margin-top: 26px; border-top: 1px solid var(--mn5-line); border-bottom: 1px solid var(--mn5-line); }
.mn5f-question-index > summary { display: flex; min-height: 58px; align-items: center; justify-content: space-between; cursor: pointer; list-style: none; color: var(--mn5-ink); font: 500 9px/1.3 var(--font-mono); letter-spacing: .12em; text-transform: uppercase; }
.mn5f-question-index > summary span { color: var(--mn5-burgundy); font: 300 21px/1 var(--font-serif); transition: transform .2s ease; }
.mn5f-question-index[open] > summary span { transform: rotate(45deg); }
.mn5f-question-index nav { display: grid; padding: 0 0 16px; }
.mn5f-question-index a { display: flex; min-height: 48px; align-items: center; border-top: 1px solid rgba(23,35,29,.1); color: var(--mn5-ink); font-size: 13px; line-height: 1.35; }
.mn5f-question-index a::after { content: "→"; margin-left: auto; padding-left: 10px; color: #8a673b; }

.mn5f-author-links { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 16px !important; }
.mn5f-author-links a { display: inline-flex; min-height: 44px; align-items: center; border-bottom: 1px solid rgba(23,35,29,.25); color: var(--mn5-ink); font: 500 8px/1 var(--font-mono); letter-spacing: .1em; text-transform: uppercase; }
.mn5f-page .mn5-author p:last-child { max-width: none; }

.mn5f-footer {
  position: relative;
  overflow: hidden;
  padding: 74px 0 calc(34px + env(safe-area-inset-bottom));
  background:
    radial-gradient(80% 55% at 100% 0%, rgba(92,121,104,.22), transparent 68%),
    linear-gradient(155deg, #101d19, #07100e 78%);
  color: #efeae1;
}
.mn5f-footer__moon { position: absolute; top: -54px; right: -82px; width: 196px; height: 196px; border: 1px solid rgba(214,183,131,.19); border-radius: 50%; box-shadow: inset 28px -18px 42px rgba(214,183,131,.04), 0 0 70px rgba(214,183,131,.04); }
.mn5f-footer__status { display: flex; align-items: center; gap: 8px; margin: 0 0 30px; color: rgba(214,183,131,.73); font: 500 8px/1 var(--font-mono); letter-spacing: .15em; text-transform: uppercase; }
.mn5f-footer__status span { display: grid; width: 22px; height: 22px; place-items: center; border: 1px solid rgba(214,183,131,.4); border-radius: 50%; }
.mn5f-footer__mark { display: block; width: 112px; height: 46px; opacity: .82; }
.mn5f-footer__line { max-width: 13ch; margin: 27px 0 35px; color: #f2ede5; font: italic 300 34px/1.02 var(--font-serif); }
.mn5f-footer__contact { display: grid; gap: 7px; padding: 21px 0; border-top: 1px solid rgba(238,232,222,.13); border-bottom: 1px solid rgba(238,232,222,.13); color: rgba(238,232,222,.58); font-size: 11.5px; line-height: 1.45; }
.mn5f-footer__contact a { display: inline-flex; min-height: 44px; align-items: center; color: #e0c797; overflow-wrap: anywhere; }
.mn5f-footer__nav { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin: 24px 0; }
.mn5f-footer__nav a { display: flex; min-height: 48px; align-items: center; padding: 0 12px; border: 1px solid rgba(238,232,222,.1); color: rgba(238,232,222,.78); font: 400 11px/1 var(--font-mono); }
.mn5f-footer__legal { margin: 0; color: rgba(238,232,222,.38); font: 400 8px/1.7 var(--font-mono); letter-spacing: .04em; }
.mn5f-footer__legal a { display: inline-flex; min-height: 32px; align-items: center; color: rgba(238,232,222,.54); }

@media (max-width: 600px) {
  body.mn5f-page { overflow-x: clip; }
  body.mn5f-page .mn5f-layer-guide { opacity: 0; transition: opacity .2s ease; }
  body.mn5f-page .mn5-exchange > summary { scroll-margin-top: 76px; }
  body.mn5f-page .mn5-exchange > summary strong { font-weight: 400; }
  body.mn5f-page.mn5-enhanced .mn5f-layer-guide { opacity: 1; }
}

@media (min-width: 601px) {
  .mn5f-layer-guide { position: relative; }
  .mn5f-page .mn5-deep > :not(summary),
  .mn5f-question-index > :not(summary) { display: block !important; }
  .mn5f-page .mn5-deep > summary,
  .mn5f-question-index > summary { pointer-events: none; }
}

@media (prefers-reduced-motion: reduce) {
  body.mn5f-page *, body.mn5f-page *::before, body.mn5f-page *::after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition-duration: .01ms !important;
    transition-delay: 0ms !important;
  }
}

/* ================================================================
   TEST 4+5 · PHONE VISUAL AND MOTION ADAPTER
   Content remains identical to TEST 5 FULL. This layer owns only the
   hybrid composition, orientation and transition language.
   ================================================================ */

body.mn45-page {
  --mn45-forest: #07150f;
  --mn45-forest-soft: #10251c;
  --mn45-gold: #d0ad73;
  --mn45-paper: #eee8dd;
  --mn45-guide-h: 76px;
  --mn5-question-sticky-top: 76px;
  --mn5-question-compact-h: 72px;
  scroll-padding-top: calc(var(--mn45-guide-h) + 12px);
}

.mn5-current-question {
  display: none;
  position: sticky;
  top: var(--mn5-question-sticky-top);
  z-index: 17;
  height: 0;
  overflow: visible;
  pointer-events: none;
}

.mn5-current-question__link {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  display: grid;
  grid-template-columns: minmax(0,1fr) 24px;
  grid-template-rows: auto 1fr;
  min-height: var(--mn5-question-compact-h);
  align-items: center;
  gap: 3px 12px;
  padding: 9px 18px 10px;
  overflow: hidden;
  border-bottom: 1px solid rgba(208,173,115,.34);
  background:
    linear-gradient(rgba(222,202,167,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(222,202,167,.025) 1px,transparent 1px),
    rgba(9,25,18,.975);
  background-size: 34px 34px,34px 34px,auto;
  box-shadow: 0 18px 34px -27px rgba(0,0,0,.9);
  color: #f3eee6;
  opacity: 0;
  transform: translateY(-8px) scaleY(1.08);
  transform-origin: center top;
  transition: opacity .22s ease, transform .3s cubic-bezier(.16,1,.3,1),
    border-color .28s ease, border-radius .3s ease, background .28s ease;
}

.mn5-current-question.is-stuck .mn5-current-question__link {
  pointer-events: auto;
  opacity: 1;
  transform: none;
}

.mn5-current-question.is-evidence .mn5-current-question__link {
  border-bottom-color: rgba(225,199,151,.42);
  background: rgba(48,79,92,.98);
}

.mn5-current-question__label {
  grid-column: 1;
  grid-row: 1;
  color: #d6b783;
  font: 500 7.5px/1 var(--font-mono);
  letter-spacing: .15em;
  text-transform: uppercase;
}

.mn5-current-question__window {
  grid-column: 1;
  grid-row: 2;
  position: relative;
  display: block;
  min-width: 0;
  overflow: hidden;
}

/* The active question stays forest. The next unopened question receives a
   warm sage wake-up state; later questions remain calm cream. This preserves
   the editorial hierarchy while making the downward route unmistakable. */
body.mn452-page .mn5-exchange:not([open]) > summary {
  background: rgba(247,242,233,.48);
  color: #17231d;
  box-shadow: inset 3px 0 0 rgba(23,35,29,.08);
}
body.mn452-page .mn5-exchange:not([open]) > summary strong {
  color: #17231d;
}
body.mn452-page .mn5-exchange:not([open]) > summary small {
  color: rgba(23,35,29,.68);
}
body.mn452-page .mn5-exchange.is-up-next:not([open]) > summary {
  background:
    radial-gradient(110% 150% at 0 50%,rgba(88,125,98,.18),transparent 58%),
    linear-gradient(105deg,rgba(230,235,226,.92),rgba(247,242,233,.84) 68%);
  box-shadow:
    inset 3px 0 0 rgba(72,105,80,.62),
    0 18px 38px -34px rgba(23,35,29,.54);
}
body.mn452-page .mn5-exchange.is-up-next:not([open]) > summary .mn5-you {
  color: #46684f;
}
body.mn452-page .mn5-exchange.is-up-next:not([open]) > summary strong {
  color: #10251c;
  font-weight: 400;
}
body.mn452-page .mn5-exchange.is-up-next:not([open]) > summary small::before {
  content: "";
  color: #46684f;
}
body.mn452-page .mn5-exchange--evidence.is-up-next:not([open]) > summary small::before {
  color: #ffe7b7;
}

.mn5-current-question__current,
.mn5-current-question__incoming,
body.mn5f-page .mn5-current-question strong {
  display: block;
  overflow: hidden;
  color: #f3eee6;
  font: 300 17.5px/1.04 var(--font-serif);
  letter-spacing: -.01em;
  white-space: normal;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.mn5-current-question__incoming {
  position: absolute;
  inset: 0;
  transform: translateY(110%);
}

.mn5-current-question__return {
  grid-column: 2;
  grid-row: 1 / span 2;
  color: #d6b783;
  font: 300 18px/1 var(--font-serif);
  text-align: center;
}

.mn5-current-question.is-swapping-forward .mn5-current-question__current {
  animation: mn5-question-out-up .3s cubic-bezier(.16,1,.3,1) both;
}
.mn5-current-question.is-swapping-forward .mn5-current-question__incoming {
  animation: mn5-question-in-up .3s cubic-bezier(.16,1,.3,1) both;
}
.mn5-current-question.is-swapping-backward .mn5-current-question__current {
  animation: mn5-question-out-down .3s cubic-bezier(.16,1,.3,1) both;
}
.mn5-current-question.is-swapping-backward .mn5-current-question__incoming {
  animation: mn5-question-in-down .3s cubic-bezier(.16,1,.3,1) both;
}

@keyframes mn5-question-out-up { to { opacity: 0; transform: translateY(-110%); } }
@keyframes mn5-question-in-up { to { opacity: 1; transform: translateY(0); } }
@keyframes mn5-question-out-down { to { opacity: 0; transform: translateY(110%); } }
@keyframes mn5-question-in-down {
  from { opacity: 0; transform: translateY(-110%); }
  to { opacity: 1; transform: translateY(0); }
}

html.mn45-pinning,
html.mn45-pinning body,
html.mn45-pinning body * { overflow-anchor: none !important; }

html.mn45-manual-scroll,
html.mn45-pinning { scroll-behavior: auto !important; }

.mn45-hero-geometry { display: none; }

@media (max-width: 600px) {
  body.mn452-page.mn5-enhanced .mn5-current-question {
    display: none;
  }

  body.mn452-page.mn5-question-stuck .mn5f-layer-guide {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }

  body.mn452-page.mn5-question-stuck .mn5-current-question__link {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }

  body.mn452-page .mn5-current-question__window {
    min-height: 36.4px;
  }
  body.mn45-page .mn5-hero {
    display: flex;
    min-height: 100svh;
    flex-direction: column;
    background:
      radial-gradient(110% 78% at 84% 10%, rgba(69,112,85,.26), transparent 60%),
      radial-gradient(86% 54% at -14% 76%, rgba(199,163,107,.12), transparent 68%),
      linear-gradient(154deg, #07120e 0%, #10251b 52%, #07140f 100%);
    color: #f3efe7;
  }

  body.mn45-page .mn5-hero::before { content: none; display: none; }
  body.mn45-page .mn5-hero::after {
    content: "";
    position: absolute;
    z-index: 0;
    inset: auto 0 0;
    height: 34%;
    pointer-events: none;
    background: linear-gradient(180deg, transparent, rgba(3,8,6,.36));
  }

  body.mn45-page .mn5-announcement,
  body.mn45-page .mn5-hero #heroNav { z-index: 8; }
  body.mn45-page .mn5-hero #heroNav .hero-mark { opacity: 1; }

  body.mn45-page .mn45-codex-field {
    position: absolute;
    z-index: 1;
    inset: 0;
    pointer-events: none;
  }
  body.mn45-page .mn45-codex-field::before {
    content: "";
    position: absolute;
    top: 18%;
    right: -65vw;
    width: 112vw;
    height: 112vw;
    border: 1px solid rgba(219,235,221,.11);
    border-radius: 44% 56% 62% 38% / 56% 43% 57% 44%;
    box-shadow:
      0 0 0 13vw rgba(132,176,145,.018),
      0 0 0 27vw rgba(132,176,145,.012),
      inset 0 0 80px rgba(199,163,107,.055);
    transform: rotate(-18deg);
  }
  body.mn45-page .mn45-codex-field::after {
    content: "";
    position: absolute;
    top: 21%;
    left: 10%;
    width: 1px;
    height: 46%;
    background: linear-gradient(180deg, transparent, rgba(199,163,107,.72) 22%, rgba(237,232,223,.15) 75%, transparent);
    box-shadow: 0 0 6px rgba(214,186,126,.05);
  }
  body.mn45-page .mn45-codex-field span {
    position: absolute;
    left: calc(10% - 3px);
    width: 7px;
    height: 7px;
    border: 1px solid rgba(228,207,170,.55);
    border-radius: 50%;
    background: #10251b;
    box-shadow: 0 0 0 5px rgba(199,163,107,.05);
  }
  body.mn45-page .mn45-codex-field span:nth-child(1) { top: 29%; }
  body.mn45-page .mn45-codex-field span:nth-child(2) { top: 39%; opacity: .78; }
  body.mn45-page .mn45-codex-field span:nth-child(3) { top: 49%; opacity: .58; }
  body.mn45-page .mn45-codex-field span:nth-child(4) { top: 59%; opacity: .36; }

  body.mn45-page .mn45-codex-copy {
    position: relative;
    z-index: 2;
    width: 100%;
    margin: auto 0;
    padding: 34px 24px 112px 52px;
  }
  body.mn45-page .mn45-codex-eyebrow {
    position: relative;
    width: max-content;
    max-width: 100%;
    margin: 0 0 21px;
    color: rgba(228,207,170,.74);
    font: 400 10.5px/1.35 var(--font-mono);
    letter-spacing: .2em;
    text-transform: uppercase;
  }
  body.mn45-page .mn45-codex-eyebrow::before {
    content: "";
    position: absolute;
    top: -10px;
    left: 0;
    width: 29px;
    height: 1px;
    background: #c7a36b;
    opacity: .72;
    transform: scaleY(.45);
    transform-origin: left center;
  }
  body.mn45-page .mn45-codex-copy h1 {
    max-width: 295px;
    margin: 0;
    color: #f4f0e8;
    font: 400 49px/.93 var(--font-serif);
    letter-spacing: -.037em;
  }
  body.mn45-page .mn45-codex-copy h1 i {
    display: block;
    width: max-content;
    max-width: 100%;
    min-height: 50px;
    margin-top: 8px;
    color: #e4cfaa;
    font-size: clamp(23px,7.2vw,27px);
    font-weight: 300;
    line-height: 1.05;
    letter-spacing: -.012em;
    white-space: nowrap;
  }
  body.mn45-page .mn45-codex-lead {
    max-width: 285px;
    margin: 29px 0 0;
    color: rgba(239,233,222,.87);
    font: 300 17px/1.48 var(--font-sans);
  }
  body.mn45-page .mn45-codex-note {
    max-width: 284px;
    margin: 17px 0 0;
    color: rgba(190,205,195,.72);
    font: 300 13.5px/1.55 var(--font-sans);
  }
  body.mn45-page .mn45-codex-cta {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    gap: 18px;
    margin-top: 28px;
    padding-left: 14px;
    border-left: 1px solid rgba(199,163,107,.7);
    color: #e9dec9;
    font: 400 9.5px/1.25 var(--font-mono);
    letter-spacing: .13em;
    text-transform: uppercase;
  }
  body.mn45-page .mn45-codex-cta span:last-child { color: #c7a36b; font-size: 14px; }
  body.mn45-page .mn45-codex-cue {
    position: absolute;
    z-index: 3;
    bottom: 13px;
    left: 50%;
    width: 32px;
    height: 58px;
    transform: translateX(-50%);
  }
  body.mn45-page .mn45-codex-cue::before,
  body.mn45-page .mn45-codex-cue span {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 1px;
    transform: translateX(-50%);
  }
  body.mn45-page .mn45-codex-cue::before { height: 48px; background: rgba(228,207,170,.2); }
  body.mn45-page .mn45-codex-cue span {
    height: 20px;
    background: #c7a36b;
    animation: mn45-codex-trace 3.8s cubic-bezier(.16,1,.3,1) infinite;
  }
  body.mn45-page.mn5-enhanced .mn45-codex-copy > * {
    animation: mn45-hero-enter .78s cubic-bezier(.16,1,.3,1) both;
  }
  body.mn45-page.mn5-enhanced .mn45-codex-copy > :nth-child(2) { animation-delay: .08s; }
  body.mn45-page.mn5-enhanced .mn45-codex-copy > :nth-child(3) { animation-delay: .16s; }
  body.mn45-page.mn5-enhanced .mn45-codex-copy > :nth-child(4) { animation-delay: .24s; }
  body.mn45-page.mn5-enhanced .mn45-codex-copy > :nth-child(5) { animation-delay: .32s; }

  /* V2 hero theatre: the wallpaper counter-moves while the readable ribbon
     remains in the document flow. All final states are visible without JS. */
  body.mn452-page .mn5-hero {
    --mn452-hero-progress: 0;
    --mn452-wallpaper-y: 0px;
    background: #06100c;
  }
  body.mn452-page .mn5-hero::before {
    content: none;
    display: none;
  }
  body.mn452-page .mn5-hero::after {
    inset: 0;
    height: auto;
    z-index: 1;
    background: linear-gradient(106deg,
      transparent 18%,
      rgba(228,207,170,.035) 39%,
      rgba(218,235,222,.15) 50%,
      rgba(199,163,107,.07) 57%,
      transparent 76%);
    opacity: 0;
    transform: translate3d(-125%,0,0) skewX(-8deg);
  }

  body.mn452-page .mn45-codex-field {
    top: 0;
    right: 0;
    bottom: auto;
    left: 0;
    height: 100svh;
    background:
      linear-gradient(180deg, transparent 66%, rgba(3,8,6,.36) 100%),
      radial-gradient(62% 44% at 72% 25%, rgba(216,234,220,.046), transparent 72%),
      radial-gradient(46% 34% at 18% 68%, rgba(199,163,107,.023), transparent 76%),
      radial-gradient(110% 78% at 84% 10%, rgba(69,112,85,.26), transparent 60%),
      radial-gradient(86% 54% at -14% 76%, rgba(199,163,107,.12), transparent 68%),
      linear-gradient(154deg, #07120e 0%, #10251b 52%, #07140f 100%);
    transform: translate3d(0,var(--mn452-wallpaper-y),0);
  }

  body.mn452-page .mn45-codex-field::before {
    transform-origin: 48% 52%;
  }

  body.mn452-page .mn45-codex-field::after {
    transform-origin: center top;
  }

  body.mn452-page .mn45-codex-field span {
    transform-origin: center;
  }
  body.mn452-page .mn45-codex-field span::after {
    content: "";
    position: absolute;
    inset: -6px;
    border: 1px solid rgba(228,207,170,.72);
    border-radius: 50%;
    background: rgba(228,207,170,.08);
    box-shadow: 0 0 18px rgba(228,207,170,.48);
    opacity: 0;
    transform: scale(.45);
  }
  body.mn452-page .mn45-codex-field span:nth-child(1) {
    --mn452-dot-opacity: 1;
    --mn452-dot-delay: .38s;
    --mn452-guide-delay: 0s;
  }
  body.mn452-page .mn45-codex-field span:nth-child(2) {
    --mn452-dot-opacity: .78;
    --mn452-dot-delay: .58s;
    --mn452-guide-delay: .32s;
  }
  body.mn452-page .mn45-codex-field span:nth-child(3) {
    --mn452-dot-opacity: .58;
    --mn452-dot-delay: .78s;
    --mn452-guide-delay: .64s;
  }
  body.mn452-page .mn45-codex-field span:nth-child(4) {
    --mn452-dot-opacity: .36;
    --mn452-dot-delay: .98s;
    --mn452-guide-delay: .96s;
  }

  body.mn452-page .mn45-codex-copy {
    isolation: isolate;
    transform: none;
  }
  body.mn452-page .mn45-codex-copy::before {
    content: "";
    position: absolute;
    z-index: -2;
    top: -25svh;
    right: -24px;
    bottom: -12svh;
    left: 36px;
    border-left: 1px solid rgba(228,207,170,.13);
    background: radial-gradient(130% 108% at 0 30%,
      rgba(4,14,10,.64) 0 48%,
      rgba(8,24,17,.42) 69%,
      rgba(8,24,17,0) 100%);
    transform-origin: left center;
  }
  body.mn452-page .mn45-codex-copy::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: -25svh;
    right: -24px;
    bottom: -12svh;
    left: 36px;
    pointer-events: none;
    background: linear-gradient(103deg,
      transparent 30%,
      rgba(239,229,209,.12) 48%,
      transparent 66%);
    opacity: 0;
    transform: translate3d(-115%,0,0);
  }
  body.mn452-page .mn45-codex-copy > * {
    position: relative;
    z-index: 1;
  }
  body.mn452-page.mn5-enhanced .mn45-codex-copy > * {
    animation: none;
  }
  body.mn452-page .mn45-codex-cue {
    opacity: clamp(0, calc(1 - var(--mn452-hero-progress) * 3), 1);
  }
  body.mn452-page .mn45-codex-cue span { animation: none; }

  body.mn45-page .mn5-start {
    position: relative;
    isolation: isolate;
    overflow: hidden;
  }
  body.mn45-page .mn5-start::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 58px;
    right: -116px;
    width: 248px;
    height: 248px;
    border: 1px solid rgba(113,59,56,.08);
    border-radius: 50%;
    box-shadow: 0 0 0 42px rgba(113,59,56,.025);
  }

  body.mn45-page .mn5-question-picks a {
    transition: transform .5s cubic-bezier(.16,1,.3,1), border-color .45s ease,
      box-shadow .5s ease, background .45s ease;
  }
  body.mn45-page .mn5-question-picks a:active {
    transform: translateY(2px) scale(.992);
    border-color: rgba(113,59,56,.3);
  }

  body.mn45-page .mn5-thread-intro {
    position: relative;
    overflow: hidden;
  }
  body.mn45-page .mn5-thread-intro::after {
    content: "";
    position: absolute;
    z-index: 0;
    right: -96px;
    bottom: -118px;
    width: 238px;
    height: 238px;
    border: 1px solid rgba(23,35,29,.08);
    border-radius: 50%;
  }
  body.mn45-page .mn5-thread-intro > * { position: relative; z-index: 1; }

  body.mn45-page .mn5f-layer-guide {
    min-height: var(--mn45-guide-h);
    padding: 10px 16px 9px;
    border-color: rgba(222,202,167,.2);
    background:
      linear-gradient(115deg, rgba(255,255,255,.07), transparent 41%),
      rgba(9,25,18,.93);
    box-shadow: 0 12px 26px -26px rgba(0,0,0,.8), inset 0 1px rgba(255,255,255,.045);
    transition: min-height .36s cubic-bezier(.16,1,.3,1), background .36s ease,
      box-shadow .36s ease, border-color .36s ease;
  }
  body.mn45-page .mn5f-layer-guide::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0;
    background: linear-gradient(105deg, transparent 22%, rgba(230,205,157,.12) 48%, transparent 72%);
    transform: translateX(-55%);
  }
  body.mn45-page .mn5f-layer-guide.is-stuck {
    border-bottom-color: rgba(222,202,167,.44);
    background:
      radial-gradient(90% 170% at 10% 0%, rgba(85,119,98,.2), transparent 62%),
      rgba(7,22,16,.98);
    box-shadow: 0 18px 34px -25px rgba(0,0,0,.98), inset 0 1px rgba(255,255,255,.06);
  }
  body.mn45-page .mn5f-layer-guide.is-awake::before {
    animation: mn45-guide-signal .72s cubic-bezier(.16,.76,.2,1) both;
  }
  body.mn45-page .mn5f-layer-guide__label {
    top: 11px;
    left: 16px;
    color: rgba(222,202,167,.78);
    font-size: 8.5px;
    letter-spacing: .16em;
  }
  body.mn45-page .mn5f-layer-guide ol {
    gap: 8px;
    margin-top: 29px;
  }
  body.mn45-page .mn5f-layer-guide li {
    gap: 4px;
    color: rgba(238,232,222,.54);
    font-size: 9.5px;
    letter-spacing: .01em;
  }
  body.mn45-page .mn5f-layer-guide li:not(:last-child)::after {
    top: 9px;
    right: -4px;
    width: 8px;
  }
  body.mn45-page .mn5f-layer-guide li b {
    flex-basis: 18px;
    width: 18px;
    height: 18px;
    font-size: 8px;
  }
  body.mn45-page .mn5f-layer-guide li span { padding-bottom: 2px; }
  body.mn45-page .mn5f-layer-guide li.is-passed { color: rgba(222,202,167,.74); }
  body.mn45-page .mn5f-layer-guide li.is-active {
    color: #ffe7b7;
    text-shadow: 0 0 18px rgba(222,202,167,.36);
    transform: translateY(-1px) scale(1.04);
  }
  body.mn45-page .mn5f-layer-guide li.is-active span {
    border-bottom: 1px solid rgba(232,201,143,.78);
    font-weight: 500;
  }
  body.mn45-page .mn5f-layer-guide li.is-active b {
    border-color: rgba(241,212,158,.94);
    background: rgba(208,173,115,.32);
    box-shadow: 0 0 0 3px rgba(208,173,115,.08), 0 0 20px rgba(208,173,115,.3);
  }
  body.mn45-page .mn5f-layer-guide > p {
    top: 10px;
    right: 16px;
    left: 116px;
    color: rgba(248,237,217,.78);
    font-size: 9px;
  }

  body.mn45-page .mn5f-layer,
  body.mn45-page .mn5f-question-index,
  body.mn45-page .mn5f-question-index a,
  body.mn45-page [id^="mn5f-"] { scroll-margin-top: calc(var(--mn45-guide-h) + 10px); }
  body.mn45-page .mn5-exchange > summary { scroll-margin-top: calc(var(--mn45-guide-h) + 8px); }

  body.mn45-page .mn5-exchange > summary {
    min-height: 100px;
    grid-template-columns: 42px 1fr 32px;
    transition: background .48s ease, color .38s ease, box-shadow .48s ease;
  }
  body.mn45-page .mn5-exchange > summary strong { font-size: 21.5px; }
  body.mn45-page .mn5-exchange > summary i { width: 32px; height: 32px; }
  body.mn45-page .mn5-exchange[open] > summary {
    background:
      linear-gradient(rgba(222,202,167,.03) 1px, transparent 1px),
      linear-gradient(90deg, rgba(222,202,167,.03) 1px, transparent 1px),
      var(--mn45-forest-soft);
    background-size: 34px 34px, 34px 34px, auto;
    box-shadow: inset 3px 0 0 rgba(208,173,115,.58);
  }
  body.mn45-page .mn5-exchange.is-transition-target > summary {
    animation: mn45-arrival 1.15s cubic-bezier(.16,1,.3,1) both;
  }
  body.mn45-page .mn5-exchange.is-current > summary {
    border-bottom-color: rgba(208,173,115,.24);
  }

  body.mn45-page .mn5-depth,
  body.mn45-page .mn5-deep {
    transition: border-color .45s ease, background .45s ease, box-shadow .45s ease;
  }
  body.mn45-page .mn5-depth[open],
  body.mn45-page .mn5-deep[open] {
    border-color: rgba(125,92,49,.38);
    background: rgba(255,255,255,.36);
    box-shadow: inset 0 1px rgba(255,255,255,.5), 0 18px 38px -33px rgba(23,35,29,.9);
  }
  body.mn45-page .mn5-depth::before,
  body.mn45-page .mn5-deep::before { transition-duration: .58s; }
  body.mn45-page .mn5-depth > summary,
  body.mn45-page .mn5-deep > summary {
    min-height: 62px;
    font-size: 15px;
    transition: color .38s ease, padding .45s cubic-bezier(.16,1,.3,1), background .38s ease;
  }
  body.mn45-page .mn5-deep > summary { min-height: 58px; font-size: 14px; }
  body.mn45-page .mn5-depth[open] > summary,
  body.mn45-page .mn5-deep[open] > summary {
    padding-left: 20px;
    background: linear-gradient(90deg, rgba(208,173,115,.08), transparent 72%);
  }
  body.mn45-page .mn5-depth[open] > div,
  body.mn45-page .mn5-deep[open] > div,
  body.mn45-page .mn5-exchange[open] > .mn5-exchange-body {
    animation: mn45-unfold .58s cubic-bezier(.16,.76,.2,1) both;
  }

  body.mn45-page .mn5-next,
  body.mn45-page .mn5-finish {
    position: relative;
    min-height: 78px;
    margin-top: 42px;
    padding: 28px 42px 12px 4px;
    border-top: 1px solid rgba(23,35,29,.2);
    border-bottom: 1px solid rgba(23,35,29,.12);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: var(--mn5-ink);
    font-size: 10px;
    transition: color .4s ease, border-color .4s ease, background .4s ease;
  }
  body.mn45-page .mn5-next::before,
  body.mn45-page .mn5-finish::before {
    content: "Continue down · next question";
    position: absolute;
    top: 10px;
    left: 4px;
    color: rgba(23,35,29,.5);
    font: 500 7.5px/1 var(--font-mono);
    letter-spacing: .14em;
    text-transform: uppercase;
  }
  body.mn45-page .mn5-finish::before { content: "Continue down · quick reference"; }
  body.mn45-page .mn5-next span,
  body.mn45-page .mn5-finish span {
    position: absolute;
    right: 7px;
    bottom: 15px;
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border: 1px solid rgba(113,59,56,.32);
    border-radius: 50%;
    color: var(--mn5-burgundy);
    font-size: 17px;
    transition: transform .55s cubic-bezier(.16,1,.3,1), background .4s ease;
  }
  body.mn45-page .mn5-next:active,
  body.mn45-page .mn5-finish:active { background: rgba(208,173,115,.07); }
  body.mn45-page .mn5-next:active span,
  body.mn45-page .mn5-finish:active span { transform: translateY(4px); background: rgba(208,173,115,.12); }
  body.mn45-page.mn45-navigating .mn5f-layer-guide {
    border-bottom-color: rgba(232,201,143,.68);
    box-shadow: 0 22px 42px -24px rgba(0,0,0,.98), 0 0 28px rgba(208,173,115,.09);
  }
  body.mn45-page.mn45-navigating .mn5-next,
  body.mn45-page.mn45-navigating .mn5-finish { pointer-events: none; }

  body.mn45-page.mn5-motion .mn5-question-picks a,
  body.mn45-page.mn5-motion .mn5-thread-intro,
  body.mn45-page.mn5-motion .mn5-exchange,
  body.mn45-page.mn5-motion .mn5f-photo-note,
  body.mn45-page.mn5-motion .mn5-faq .mn5-wrap,
  body.mn45-page.mn5-motion .mn5-sources .mn5-wrap,
  body.mn45-page.mn5-motion .mn5f-footer .mn5-wrap {
    transform: translateY(22px);
    filter: blur(2px);
  }
  body.mn45-page.mn5-motion .mn5-seen {
    transform: none !important;
    filter: none !important;
    transition: opacity .72s ease, transform .82s cubic-bezier(.16,1,.3,1), filter .7s ease;
  }
  /* A direct source link must be measured in its final geometry. */
  body.mn452-page.mn5-motion .mn5-sources .mn5-wrap.mn5-target-ready {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
  }
  /* A next-question destination is already animated by the controlled page
     travel and arrival halo. Snap its card to final geometry before JS
     measures the landing point so the observer reveal cannot lift it later. */
  body.mn452-page.mn5-motion .mn5-exchange.is-transition-target {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
  }
  body.mn45-page .mn5f-photo-note img {
    transform: scale(1.035);
    transition: transform 1.1s cubic-bezier(.16,1,.3,1);
  }
  body.mn45-page .mn5f-photo-note.mn5-seen img { transform: scale(1); }
}

@keyframes mn45-orbit-breathe {
  from { transform: scale(.985); opacity: .72; }
  to { transform: scale(1.018); opacity: 1; }
}

@keyframes mn45-hero-enter {
  from { opacity: 0; transform: translateY(15px); filter: blur(2px); }
  to { opacity: 1; transform: none; filter: none; }
}

@keyframes mn45-codex-trace {
  0% { transform: translate(-50%, 0); opacity: 0; }
  18% { opacity: 1; }
  66% { opacity: 1; }
  100% { transform: translate(-50%, 28px); opacity: 0; }
}

@media (max-width: 600px) and (prefers-reduced-motion: no-preference) {
  body.mn452-page.mn452-intro .mn45-codex-field {
    animation: mn452-wallpaper-awake 1.55s cubic-bezier(.16,1,.3,1) both;
  }
  body.mn452-page.mn452-intro .mn5-hero::after {
    animation: mn452-light-sweep 1.65s cubic-bezier(.16,1,.3,1) .18s both;
  }
  body.mn452-page.mn452-intro.mn452-hero-live .mn45-codex-field::before {
    animation:
      mn452-field-reveal 1.85s cubic-bezier(.16,1,.3,1) .12s both,
      mn452-field-breathe 18s ease-in-out 2.2s infinite alternate;
  }
  body.mn452-page.mn452-intro-complete.mn452-hero-live .mn45-codex-field::before {
    animation: mn452-field-breathe 18s ease-in-out infinite alternate;
  }
  body.mn452-page.mn452-intro .mn45-codex-field::after {
    animation: mn452-axis-draw 1.28s cubic-bezier(.16,1,.3,1) .12s both;
  }
  body.mn452-page.mn452-intro .mn45-codex-field span {
    animation: mn452-dot-ignite .78s cubic-bezier(.16,1,.3,1) var(--mn452-dot-delay) both;
  }
  body.mn452-page.mn452-hero-live .mn45-codex-field span::after {
    animation: mn452-bead-guide 5.6s cubic-bezier(.16,1,.3,1)
      calc(2.8s + var(--mn452-guide-delay)) infinite both;
  }
  body.mn452-page.mn452-intro .mn45-codex-copy::before {
    animation: mn452-ribbon-open 1.16s cubic-bezier(.16,1,.3,1) .46s both;
  }
  body.mn452-page.mn452-intro .mn45-codex-copy::after {
    animation: mn452-ribbon-glint 1.34s cubic-bezier(.16,1,.3,1) .76s both;
  }
  body.mn452-page.mn452-intro .mn45-codex-copy > * {
    animation: mn452-copy-in .9s cubic-bezier(.16,1,.3,1) both;
  }
  body.mn452-page.mn452-intro .mn45-codex-copy > :nth-child(1) { animation-delay: .68s; }
  body.mn452-page.mn452-intro .mn45-codex-copy > :nth-child(2) { animation-delay: .84s; }
  body.mn452-page.mn452-intro .mn45-codex-copy > :nth-child(3) { animation-delay: 1.04s; }
  body.mn452-page.mn452-intro .mn45-codex-copy > :nth-child(4) { animation-delay: 1.22s; }
  body.mn452-page.mn452-intro .mn45-codex-copy > :nth-child(5) { animation-delay: 1.40s; }
  body.mn452-page.mn452-intro .mn45-codex-eyebrow::before {
    animation: mn452-rule-reveal .74s cubic-bezier(.16,1,.3,1) .76s both;
  }
  body.mn452-page.mn452-hero-live .mn45-codex-cue span {
    animation: mn45-codex-trace 4.4s cubic-bezier(.16,1,.3,1) 2.4s infinite both;
  }
}

@keyframes mn452-wallpaper-awake {
  0% { opacity: .08; }
  42% { opacity: .72; }
  100% { opacity: 1; }
}

@keyframes mn452-light-sweep {
  0% { opacity: 0; transform: translate3d(-125%,0,0) skewX(-8deg); }
  34% { opacity: .9; }
  100% { opacity: 0; transform: translate3d(125%,0,0) skewX(-8deg); }
}

@keyframes mn452-field-reveal {
  0% { opacity: 0; transform: rotate(-28deg) scale(.54); }
  58% { opacity: 1; transform: rotate(-16.6deg) scale(1.035); }
  100% { opacity: 1; transform: rotate(-18deg) scale(1); }
}

@keyframes mn452-field-breathe {
  from { opacity: .9; transform: rotate(-18.15deg) scale(.996); }
  to { opacity: 1; transform: rotate(-17.35deg) scale(1.012); }
}

@keyframes mn452-axis-draw {
  0% { opacity: 0; transform: scaleY(0); }
  46% { opacity: 1; }
  100% { opacity: 1; transform: scaleY(1); }
}

@keyframes mn452-dot-ignite {
  0% { opacity: 0; transform: scale(.2); box-shadow: 0 0 0 0 rgba(228,207,170,0); }
  58% { opacity: 1; transform: scale(1.65); box-shadow: 0 0 0 11px rgba(228,207,170,.1); }
  to { opacity: var(--mn452-dot-opacity); transform: scale(1); }
}

@keyframes mn452-bead-guide {
  0%, 9%, 100% { opacity: 0; transform: scale(.45); }
  3.5% { opacity: 1; transform: scale(1.4); }
  7% { opacity: 0; transform: scale(1.95); }
}

@keyframes mn452-ribbon-open {
  0% { opacity: 0; clip-path: inset(0 100% 0 0); transform: translate3d(-22px,0,0); }
  100% { opacity: 1; clip-path: inset(0); transform: none; }
}

@keyframes mn452-ribbon-glint {
  0% { opacity: 0; transform: translate3d(-115%,0,0); }
  35% { opacity: .9; }
  100% { opacity: 0; transform: translate3d(115%,0,0); }
}

@keyframes mn452-copy-in {
  0% { opacity: 0; clip-path: inset(0 0 100% 0); transform: translate3d(0,24px,0); }
  100% { opacity: 1; clip-path: inset(0); transform: none; }
}

@keyframes mn452-rule-reveal {
  from { transform: scaleX(0) scaleY(.45); }
  to { transform: scaleX(1) scaleY(.45); }
}

@keyframes mn45-guide-signal {
  0% { opacity: 0; transform: translateX(-55%); }
  38% { opacity: 1; }
  100% { opacity: 0; transform: translateX(55%); }
}

@keyframes mn45-arrival {
  0% { box-shadow: inset 3px 0 0 rgba(208,173,115,.2), 0 0 0 rgba(208,173,115,0); }
  35% { box-shadow: inset 4px 0 0 rgba(230,199,139,.92), 0 0 34px rgba(208,173,115,.2); }
  100% { box-shadow: inset 3px 0 0 rgba(208,173,115,.58), 0 0 0 rgba(208,173,115,0); }
}

@keyframes mn45-unfold {
  from { opacity: 0; transform: translateY(11px); filter: blur(2px); }
  to { opacity: 1; transform: none; filter: none; }
}

@media (prefers-reduced-motion: reduce) {
  body.mn45-page .mn45-orbit,
  body.mn45-page .mn45-codex-cue span,
  body.mn45-page .mn5f-layer-guide::before,
  body.mn45-page .mn5-exchange.is-transition-target > summary { animation: none !important; }
  body.mn45-page.mn5-enhanced .mn45-codex-copy > * { animation: none !important; }
  body.mn45-page .mn5-hero-portrait img,
  body.mn45-page .mn45-hero-geometry,
  body.mn45-page .mn5-hero-card { transform: none !important; }
  body.mn452-page .mn5-hero::before,
  body.mn452-page .mn45-codex-field::before,
  body.mn452-page .mn45-codex-field::after,
  body.mn452-page .mn45-codex-field span,
  body.mn452-page .mn45-codex-field span::after,
  body.mn452-page .mn45-codex-copy::before,
  body.mn452-page .mn45-codex-copy::after,
  body.mn452-page .mn45-codex-eyebrow::before { animation: none !important; }
  body.mn452-page .mn45-codex-field span::after,
  body.mn452-page .mn45-codex-copy::after { display: none !important; }
  body.mn452-page .mn45-codex-copy::before { opacity: 1 !important; transform: none !important; }
  body.mn452-page .mn45-codex-field,
  body.mn452-page .mn45-codex-copy { transform: none !important; opacity: 1 !important; }
  body.mn452-page .mn45-codex-cue { opacity: 1 !important; }
}

/* V2 phone refinements: evidence contrast and closing portrait visibility. */
@media (max-width: 600px) {
  /* The awakened next question is the single progression control on phone.
     Keep the authored link in the DOM as a no-JS fallback and JS transaction
     source, but remove the duplicate visual CTA once enhancement is active. */
  body.mn452-page.mn5-enhanced .mn5-next {
    display: none;
  }
  body.mn452-page .mn5-exchange.mn5-exchange--evidence > summary {
    background: #496875;
    color: #f5f1ea;
  }
  body.mn452-page .mn5-exchange.mn5-exchange--evidence.is-up-next:not([open]) > summary {
    background:
      radial-gradient(120% 150% at 0 50%,rgba(225,199,151,.10),transparent 58%),
      #496875;
    color: #f5f1ea;
    box-shadow:
      inset 3px 0 0 rgba(225,199,151,.62),
      0 18px 38px -34px rgba(16,37,28,.58);
  }
  body.mn452-page .mn5-exchange.mn5-exchange--evidence.is-up-next:not([open]) > summary strong {
    color: #f5f1ea;
  }
  body.mn452-page .mn5-exchange.mn5-exchange--evidence.is-up-next:not([open]) > summary small {
    color: rgba(245,241,234,.90);
  }
  body.mn452-page .mn5-exchange.mn5-exchange--evidence.is-up-next:not([open]) > summary .mn5-you {
    color: #ffe7b7;
  }
  body.mn452-page .mn5-exchange.mn5-exchange--evidence[open] > summary {
    background:
      linear-gradient(rgba(222,202,167,.035) 1px, transparent 1px),
      linear-gradient(90deg, rgba(222,202,167,.035) 1px, transparent 1px),
      #304f5c;
    background-size: 34px 34px, 34px 34px, auto;
    color: #f5f1ea;
    box-shadow: inset 3px 0 0 rgba(208,173,115,.72);
  }
  body.mn452-page .mn5-exchange--evidence > summary .mn5-you {
    color: #ffe7b7;
  }
  body.mn452-page .mn5-exchange--evidence > summary small {
    color: rgba(245,241,234,.90);
  }
  body.mn452-page .mn5-exchange--evidence > summary i {
    color: #f5f1ea;
    border-color: rgba(245,241,234,.42);
  }
  body.mn452-page .mn5-exchange--evidence .mn5-exchange-body {
    color: rgba(245,241,234,.88);
  }
  body.mn452-page .mn5-exchange--evidence .mn5-reply {
    background: #203741;
    color: #f5f1ea;
  }
  body.mn452-page .mn5-exchange--evidence .mn5-reply::before {
    background: linear-gradient(135deg, #203741 0 49%, transparent 50%);
  }
  body.mn452-page .mn5-exchange--evidence .mn5-reply .mn5-piotr {
    color: #e1c797;
  }
  body.mn452-page .mn5-exchange--evidence .mn5-swipe-hint {
    color: rgba(245,241,234,.78);
  }
  body.mn452-page .mn5-exchange--evidence > .mn5-exchange-body > .mn5-depth--evidence,
  body.mn452-page .mn5-exchange--evidence > .mn5-exchange-body > .mn5-depth--evidence[open] {
    border-color: rgba(225,199,151,.34);
    background: #36515d;
  }
  body.mn452-page .mn5-exchange--evidence .mn5-depth--evidence .mn5-deep,
  body.mn452-page .mn5-exchange--evidence .mn5-depth--evidence .mn5-deep[open] {
    border-color: rgba(225,199,151,.30);
    background: #29434e;
  }
  body.mn452-page .mn5-exchange--evidence .mn5-depth--evidence > summary {
    color: #f5f1ea;
  }
  body.mn452-page .mn5-exchange--evidence .mn5-depth--evidence > summary::before {
    color: #e1c797;
  }
  body.mn452-page .mn5-exchange--evidence .mn5-depth--evidence > div {
    color: rgba(245,241,234,.88);
  }
  body.mn452-page .mn5-exchange--evidence .mn5-evidence-strip small,
  body.mn452-page .mn5-exchange--evidence .mn5-study-record article > p {
    color: rgba(225,231,229,.74);
  }
  body.mn452-page .mn5-exchange--evidence .mn5-study-record article > div:not(:first-child) p {
    color: rgba(245,241,234,.86);
  }

  body.mn452-page .mn5-exchange:not([open]):not(.mn5-exchange--evidence) > summary small {
    color: rgba(23,35,29,.72);
  }
  body.mn452-page .mn5-course-line small {
    color: rgba(23,35,29,.68);
  }
  body.mn452-page .mn5f-fine {
    color: rgba(23,35,29,.70);
  }
  body.mn452-page .mn5f-footer__legal {
    color: rgba(238,232,222,.58);
    font-size: 9px;
  }
  body.mn452-page .mn5f-footer__legal a {
    min-height: 44px;
    color: rgba(238,232,222,.72);
  }

  body.mn452-page .mn5-close-photo {
    opacity: 1;
  }
  body.mn452-page .mn5-close-photo img {
    opacity: .62;
    object-position: 43% center;
    filter: grayscale(.18) saturate(.86);
  }
  body.mn452-page .mn5-close-photo::after {
    background: linear-gradient(180deg,
      rgba(8,19,15,.08) 0%,
      rgba(8,19,15,.28) 42%,
      rgba(8,19,15,.94) 76%,
      rgba(8,19,15,.98) 100%);
  }
}

/* V2 PHONE · the eight main questions as one visual family.
   Geometry and interaction ownership stay unchanged: this layer only paints
   sequence, resting, next and open states. */
@media (max-width: 600px) {
  body.mn452-page .mn452-question-status { display: none; }

  body.mn452-page .mn5-exchange[data-mn5-exchange] > summary {
    --mn452-question-rest:
      linear-gradient(90deg,rgba(247,242,233,.92),rgba(247,242,233,.70));
    --mn452-question-fill: #10251c;
    isolation: isolate;
    overflow: hidden;
    background: var(--mn452-question-rest);
    box-shadow: inset 3px 0 0 rgba(41,86,61,.72);
  }

  /* A question that has genuinely been opened keeps a quiet visual memory.
     The current and up-next states still take precedence below. */
  body.mn452-page .mn5-exchange[data-mn5-exchange].is-viewed:not([open]):not(.is-up-next):not(.mn5-exchange--evidence) > summary {
    --mn452-question-rest:
      linear-gradient(90deg,rgba(226,237,228,.97),rgba(244,241,232,.82));
    background: var(--mn452-question-rest);
    box-shadow: inset 3px 0 0 rgba(54,104,72,.82);
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange].is-invitation:not(.is-viewed):not([open]) > summary .mn452-question-status,
  body.mn452-page .mn5-exchange[data-mn5-exchange].is-up-next:not([open]) > summary .mn452-question-status,
  body.mn452-page .mn5-exchange[data-mn5-exchange].is-viewed:not([open]):not(.is-up-next) > summary .mn452-question-status {
    position: absolute;
    right: 10px;
    bottom: 7px;
    z-index: 2;
    display: inline-flex;
    min-height: 18px;
    align-items: center;
    padding: 3px 6px;
    border: 1px solid rgba(43,91,61,.24);
    border-radius: 999px;
    background: rgba(244,241,232,.88);
    color: #315c40;
    font: 600 6.5px/1 var(--font-mono);
    letter-spacing: .11em;
    text-transform: uppercase;
    pointer-events: none;
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange].is-invitation:not(.is-viewed):not([open]) > summary .mn452-question-status::before { content: "Start here"; }
  body.mn452-page .mn5-exchange[data-mn5-exchange].is-up-next:not([open]) > summary .mn452-question-status::before { content: "Read next"; }
  body.mn452-page .mn5-exchange[data-mn5-exchange].is-viewed:not([open]):not(.is-up-next) > summary .mn452-question-status::before { content: "Viewed ✓"; }

  body.mn452-page .mn5-exchange[data-mn5-exchange].is-up-next:not([open]) > summary .mn452-question-status {
    border-color: rgba(255,255,255,.42);
    background: #4f725e;
    color: #fffaf2;
  }

  body.mn452-page .mn5-exchange.mn5-exchange--evidence[data-mn5-exchange].is-viewed:not([open]):not(.is-up-next):not(.is-invitation) > summary .mn452-question-status {
    border-color: rgba(255,231,183,.34);
    background: rgba(32,55,65,.78);
    color: #ffe7b7;
  }

  /* A colour layer travels across the existing tile. It never transforms the
     summary itself, so the compensated-scroll controller keeps exact ownership. */
  body.mn452-page .mn5-exchange[data-mn5-exchange] > summary::after {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0;
    background:
      linear-gradient(rgba(222,202,167,.03) 1px,transparent 1px),
      linear-gradient(90deg,rgba(222,202,167,.03) 1px,transparent 1px),
      var(--mn452-question-fill);
    background-size: 34px 34px,34px 34px,auto;
    clip-path: inset(0 100% 0 0);
    opacity: 0;
    pointer-events: none;
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange] > summary > * {
    position: relative;
    z-index: 1;
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange][open] > summary,
  body.mn452-page .mn5-exchange[data-mn5-exchange].is-transition-target[open] > summary {
    background: var(--mn452-question-rest);
    color: #f5f1ea;
    box-shadow: inset 3px 0 0 rgba(208,173,115,.68);
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange][open] > summary::after,
  body.mn452-page .mn5-exchange[data-mn5-exchange].is-transition-target[open] > summary::after {
    clip-path: inset(0);
    opacity: 1;
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange][open] > summary strong {
    color: #f5f1ea;
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange][open] > summary small {
    color: rgba(245,241,234,.74);
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange][open] > summary i {
    background: rgba(245,241,234,.035);
    color: #f5f1ea;
    border-color: rgba(245,241,234,.34);
  }

  /* One question is awake. The dark field holds every word; only the icon end
     returns to cream, so the state reads as deliberate rather than stained. */
  body.mn452-page .mn5-exchange[data-mn5-exchange].is-up-next > summary {
    --mn452-question-rest:
      radial-gradient(120% 170% at 12% 50%,
        rgba(70,118,84,.44) 0%,
        rgba(70,118,84,.16) 44%,
        transparent 72%),
      linear-gradient(90deg,
        #8fb19a 0%,
        #c2d2c3 58%,
        #e2e7dc 84%,
        #f3ece1 100%);
    background: var(--mn452-question-rest);
    box-shadow:
      inset 3px 0 0 rgba(52,113,76,.88),
      0 18px 42px -32px rgba(36,76,52,.46);
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange].is-up-next:not([open]) > summary,
  body.mn452-page .mn5-exchange[data-mn5-exchange].is-up-next:not([open]) > summary strong {
    color: #10291e;
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange].is-up-next:not([open]) > summary .mn5-you,
  body.mn452-page .mn5-exchange[data-mn5-exchange].is-up-next:not([open]) > summary small::before {
    color: #315f45;
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange].is-up-next:not([open]) > summary small {
    color: rgba(16,41,30,.72);
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange].is-up-next:not([open]) > summary i {
    background: rgba(247,242,233,.94);
    color: #173126;
    border-color: rgba(23,49,38,.24);
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange] > summary i {
    transition:
      background-color .36s ease,
      border-color .36s ease,
      color .36s ease;
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange] > summary i::after {
    transition:
      transform .46s cubic-bezier(.16,1,.3,1),
      opacity .24s ease;
  }

  body.mn452-page .mn5-exchange[data-mn5-exchange][open] > summary i::after {
    opacity: 0;
  }

  /* Evidence keeps its clinical slate identity while following the same
     sequence, rail and opening grammar. */
  body.mn452-page .mn5-exchange.mn5-exchange--evidence[data-mn5-exchange] > summary {
    --mn452-question-rest: #496875;
    --mn452-question-fill: #304f5c;
    background: var(--mn452-question-rest);
    box-shadow: inset 3px 0 0 rgba(225,199,151,.62);
  }

  body.mn452-page .mn5-exchange.mn5-exchange--evidence[data-mn5-exchange]:not([open]) > summary,
  body.mn452-page .mn5-exchange.mn5-exchange--evidence[data-mn5-exchange]:not([open]) > summary strong {
    color: #f5f1ea;
  }

  body.mn452-page .mn5-exchange.mn5-exchange--evidence[data-mn5-exchange]:not([open]) > summary .mn5-you {
    color: #ffe7b7;
  }

  body.mn452-page .mn5-exchange.mn5-exchange--evidence[data-mn5-exchange]:not([open]) > summary small {
    color: rgba(245,241,234,.80);
  }

  body.mn452-page .mn5-exchange.mn5-exchange--evidence[data-mn5-exchange]:not([open]) > summary i {
    color: #f5f1ea;
    border-color: rgba(245,241,234,.42);
  }

  body.mn452-page .mn5-exchange.mn5-exchange--evidence[data-mn5-exchange].is-up-next > summary {
    --mn452-question-rest:
      linear-gradient(90deg,
        #304f5c 0%,
        #496875 76%,
        #6f858d 86%,
        #f3ece1 100%);
    background: var(--mn452-question-rest);
  }

  body.mn452-page .mn5-exchange.mn5-exchange--evidence[data-mn5-exchange].is-up-next:not([open]) > summary .mn452-question-status {
    border-color: rgba(255,255,255,.34);
    background: #304f5c;
    color: #fffaf2;
  }

}

@media (max-width: 600px) and (prefers-reduced-motion: no-preference) {
  body.mn452-page .mn5-exchange[data-mn5-exchange] { --mn452-plus-delay: 0ms; }
  body.mn452-page .mn5-exchange[data-mn5-exchange]:nth-child(2) { --mn452-plus-delay: 100ms; }
  body.mn452-page .mn5-exchange[data-mn5-exchange]:nth-child(3) { --mn452-plus-delay: 200ms; }
  body.mn452-page .mn5-exchange[data-mn5-exchange]:nth-child(4) { --mn452-plus-delay: 300ms; }
  body.mn452-page .mn5-exchange[data-mn5-exchange]:nth-child(5) { --mn452-plus-delay: 400ms; }
  body.mn452-page .mn5-exchange[data-mn5-exchange]:nth-child(6) { --mn452-plus-delay: 500ms; }
  body.mn452-page .mn5-exchange[data-mn5-exchange]:nth-child(7) { --mn452-plus-delay: 600ms; }
  body.mn452-page .mn5-exchange[data-mn5-exchange]:nth-child(8) { --mn452-plus-delay: 700ms; }

  body.mn452-page .mn5-exchange[data-mn5-exchange] > summary::after {
    transition:
      clip-path .9s cubic-bezier(.16,.76,.2,1),
      opacity .24s ease;
  }

  body.mn452-page.mn452-question-wave .mn5-exchange[data-mn5-exchange]:not([open]) > summary i {
    animation: mn452-plus-arrive .68s cubic-bezier(.16,1,.3,1) var(--mn452-plus-delay) 1 backwards;
  }

  body.mn452-page.mn452-question-wave-complete .mn5-exchange[data-mn5-exchange]:is(.is-invitation,.is-up-next):not([open]) > summary i {
    animation: mn452-next-plus-breathe 2.65s ease-in-out .35s infinite;
  }

  body.mn452-page.mn452-question-wave-complete .mn5-exchange[data-mn5-exchange]:is(.is-invitation,.is-up-next):not([open]) > summary .mn452-question-status {
    animation: mn452-read-next 2.65s ease-in-out .35s infinite;
  }
}

@keyframes mn452-plus-arrive {
  0% { opacity: .42; transform: scale(.76); box-shadow: 0 0 0 0 rgba(208,173,115,0); }
  52% { opacity: 1; transform: scale(1.16); box-shadow: 0 0 0 5px rgba(208,173,115,.12); }
  74% { transform: scale(.96); box-shadow: 0 0 0 2px rgba(208,173,115,.07); }
  100% { opacity: 1; transform: scale(1); box-shadow: 0 0 0 0 rgba(208,173,115,0); }
}

@keyframes mn452-next-plus-breathe {
  0%,100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(208,173,115,0); }
  46% { transform: scale(1.13); box-shadow: 0 0 0 5px rgba(208,173,115,.13); }
  62% { transform: scale(1.03); box-shadow: 0 0 0 2px rgba(208,173,115,.07); }
}

@keyframes mn452-read-next {
  0%,100% { opacity: .72; transform: translateY(0); }
  46% { opacity: 1; transform: translateY(-2px); }
  62% { opacity: .92; transform: translateY(0); }
}

@media (max-width: 600px) and (prefers-reduced-motion: reduce) {
  body.mn452-page .mn5-exchange[data-mn5-exchange] > summary::after,
  body.mn452-page .mn5-exchange[data-mn5-exchange] > summary i::after {
    transition: none !important;
  }
  body.mn452-page .mn5-exchange[data-mn5-exchange] > summary i {
    animation: none !important;
  }
  body.mn452-page .mn452-question-status {
    animation: none !important;
  }
}

/* Appointment clinical drawers: one shared label column and left-aligned titles. */
body.mn452-page #mn5-visit > .mn5-exchange-body > .mn5-depth > summary {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  column-gap: 14px;
  justify-content: initial;
  justify-items: start;
  text-align: left;
}

body.mn452-page #mn5-visit > .mn5-exchange-body > .mn5-depth > summary::before {
  content: "Clinical\A detail";
  margin: 0;
  display: block;
  width: auto;
  min-height: 0;
  padding: 0;
  align-self: center;
  border: 0;
  border-radius: 0;
  background: none;
  color: #8a673b;
  box-shadow: none;
  text-align: left;
  white-space: pre-line;
  line-height: 1.18;
}

/* ================================================================
   MICRONEEDLING V3 · THE CLINICAL ATLAS
   CSS-only visual layer. The V2 interaction and disclosure contract stays
   intact; every rule is isolated to the V3 body class.
   ================================================================ */

body.mn6-page {
  --mn6-forest: #07140f;
  --mn6-forest-soft: #10271c;
  --mn6-paper: #f2eee6;
  --mn6-paper-deep: #e5ded2;
  --mn6-reader: #faf7f1;
  --mn6-ink: #14221b;
  --mn6-body: #526057;
  --mn6-gold: #ba9258;
  --mn6-slate: #344f59;
  --mn6-recovery: #eadfd8;
  --mn6-course: #e8e0cf;
  --mn6-safety: #e4dbd5;
  --mn6-blue: #0e1721;
  --mn6-blue-soft: #142331;
  --mn6-line: rgba(20,34,27,.16);
  background: var(--mn6-paper);
  color: var(--mn6-ink);
}

body.mn6-page main { background: var(--mn6-paper); }
body.mn6-page .mn5-wrap { width: min(100%, 620px); }

body.mn6-page :is(a,button,summary):focus-visible {
  outline: 2px solid #cfaa6c;
  outline-offset: 4px;
  box-shadow: none;
}

body.mn6-page .mn5-skip {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
}

body.mn6-page :is(.mn5-question-picks a,.mn5-next,.mn5-finish,
  .mn5-secondary,.mn5f-question-index a,.mn5f-footer__nav a,
  .mn5f-footer__contact a,.mn5f-author-links a,.mn5-references > summary,
  .mn5-depth > summary,.mn5-deep > summary,.mn5-faq-list summary) {
  min-height: 44px;
}

body.mn6-page .mn5-exchange-body sup a { position: relative; }
body.mn6-page .mn5-exchange-body sup a::before {
  content: "";
  position: absolute;
  inset: -10px;
}
body.mn6-page :is(.mn5-study-record a,.mn5-imported-references a,
  .mn5-evidence-strip small a) {
  min-height: 44px;
  align-items: center;
}

body.mn6-page .mn6-noscript-nav {
  position: absolute;
  top: 100%;
  right: 18px;
  left: 18px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 1px;
  padding: 8px;
  border: 1px solid rgba(239,234,224,.15);
  background: #0b1c14;
}
body.mn6-page .mn6-noscript-nav a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  padding: 0 12px;
  border: 1px solid rgba(239,234,224,.1);
  color: #f2ede5;
  font: 400 9px/1 var(--font-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}

/* ---------- Warm-white atlas entry and coordinates ---------- */
body.mn6-page .mn5-start {
  position: relative;
  isolation: isolate;
  min-height: auto;
  overflow: hidden;
  padding: 88px 0 82px;
  background: var(--mn6-paper);
}
body.mn6-page .mn5-start::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 56px;
  right: -104px;
  width: 236px;
  height: 236px;
  border: 1px solid rgba(20,34,27,.07);
  border-radius: 50%;
  box-shadow: 0 0 0 38px rgba(20,34,27,.018);
}
body.mn6-page .mn5-start .mn5-kicker { color: #80643e; }
body.mn6-page .mn5-start h2 {
  max-width: 10ch;
  margin-bottom: 34px;
  color: var(--mn6-ink);
  font-size: clamp(42px,12vw,54px);
  line-height: .96;
}

body.mn6-page .mn6-coordinates {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin: 0 0 34px;
  border-top: 1px solid var(--mn6-line);
  border-left: 1px solid var(--mn6-line);
}
body.mn6-page .mn6-coordinates article {
  min-width: 0;
  min-height: 142px;
  padding: 15px 14px 17px;
  border-right: 1px solid var(--mn6-line);
  border-bottom: 1px solid var(--mn6-line);
  background: rgba(255,255,255,.28);
}
body.mn6-page .mn6-coordinates article:nth-child(2),
body.mn6-page .mn6-coordinates article:nth-child(3) { background: rgba(229,222,210,.42); }
body.mn6-page .mn6-coordinates span {
  display: block;
  margin-bottom: 17px;
  color: #80643e;
  font: 500 7.5px/1.3 var(--font-mono);
  letter-spacing: .14em;
  text-transform: uppercase;
}
body.mn6-page .mn6-coordinates strong {
  display: block;
  color: var(--mn6-ink);
  font: 300 20px/1.05 var(--font-serif);
}
body.mn6-page .mn6-coordinates p {
  margin: 8px 0 0;
  color: var(--mn6-body);
  font-size: 11.5px;
  line-height: 1.43;
}

body.mn6-page .mn5-question-picks { gap: 10px; }
body.mn6-page .mn5-question-picks a,
body.mn6-page .mn5-question-picks a:nth-child(even) {
  min-height: 104px;
  margin: 0;
  padding: 20px 54px 20px 18px;
  border-color: rgba(20,34,27,.16);
  border-radius: 2px 20px 20px 20px;
  background: var(--mn6-reader);
  box-shadow: 0 18px 38px -36px rgba(20,34,27,.8);
}
body.mn6-page .mn5-question-picks a:nth-child(even) {
  margin-left: 18px;
  border-radius: 20px 2px 20px 20px;
}
body.mn6-page .mn5-question-picks a::after { color: #8d693d; }
body.mn6-page .mn5-question-picks span { font-size: 19px; }
body.mn6-page .mn5-question-picks small { color: rgba(20,34,27,.62); }
body.mn6-page .mn5-read-order { color: var(--mn6-body); }

/* ---------- Eight atlas chapters ---------- */
body.mn6-page .mn5-thread { background: var(--mn6-paper-deep); }
body.mn6-page .mn5-thread-intro {
  position: relative;
  overflow: hidden;
  padding-top: 82px;
  padding-bottom: 66px;
}
body.mn6-page .mn5-thread-intro::after {
  content: "ATLAS";
  position: absolute;
  z-index: 0;
  right: -10px;
  bottom: -18px;
  color: rgba(20,34,27,.035);
  font: 300 86px/.8 var(--font-serif);
  letter-spacing: -.04em;
  pointer-events: none;
}
body.mn6-page .mn5-thread-intro > * { position: relative; z-index: 1; }
body.mn6-page .mn5-thread-intro h2 { color: var(--mn6-ink); }
body.mn6-page .mn5-thread-intro h2 i { color: #86613b; }
body.mn6-page .mn5-thread-intro > p:last-child { color: var(--mn6-body); }
body.mn6-page .mn5-portrait-dot { border-color: rgba(255,255,255,.8); }

body.mn6-page .mn5f-layer-guide {
  border-color: rgba(220,197,156,.22);
  background: rgba(8,24,17,.97);
  box-shadow: 0 16px 34px -30px rgba(0,0,0,.9);
}
body.mn6-page .mn5f-layer-guide.is-stuck { background: #081811; }

body.mn6-page .mn5-exchanges {
  border-top: 0;
}
body.mn6-page .mn5-exchange {
  margin: 0 14px 12px;
  overflow: clip;
  border: 1px solid rgba(20,34,27,.15);
  border-radius: 2px 24px 24px 24px;
  background: var(--mn6-reader);
  box-shadow: 0 25px 48px -46px rgba(20,34,27,.9);
}
body.mn6-page #mn5-fit { --mn6-atlas-coordinate: "01"; }
body.mn6-page #mn5-repair { --mn6-atlas-coordinate: "02"; }
body.mn6-page #mn5-evidence { --mn6-atlas-coordinate: "03"; }
body.mn6-page #mn5-visit { --mn6-atlas-coordinate: "04"; }
body.mn6-page #mn5-recovery { --mn6-atlas-coordinate: "05"; }
body.mn6-page #mn5-course { --mn6-atlas-coordinate: "06"; }
body.mn6-page #mn5-safety { --mn6-atlas-coordinate: "07"; }
body.mn6-page #mn5-routes { --mn6-atlas-coordinate: "08"; }
body.mn6-page .mn5-exchange:nth-child(even) { border-radius: 24px 2px 24px 24px; }
body.mn6-page .mn5-exchange > summary {
  min-height: 108px;
  padding-inline: 18px;
  background: rgba(250,247,241,.92);
}
body.mn6-page .mn5-exchange > summary .mn5-you {
  color: #80613e;
  line-height: 1.35;
}
body.mn6-page .mn5-exchange > summary .mn5-you::after {
  content: " · " var(--mn6-atlas-coordinate);
  display: block;
  margin-top: 7px;
  color: rgba(20,34,27,.46);
  letter-spacing: .1em;
}
body.mn6-page .mn5-exchange > summary strong { color: var(--mn6-ink); }
body.mn6-page .mn5-exchange > summary small { color: rgba(20,34,27,.52); }
body.mn6-page .mn5-exchange > summary i { min-width: 32px; min-height: 32px; }
body.mn6-page .mn5-exchange[open] > summary,
body.mn6-page .mn5-exchange.is-transition-target[open] > summary {
  background: var(--mn6-forest-soft);
  color: #f4efe6;
  box-shadow: inset 3px 0 0 rgba(207,170,108,.68);
}
body.mn6-page .mn5-exchange[open] > summary strong { color: #f4efe6; }
body.mn6-page .mn5-exchange[open] > summary .mn5-you,
body.mn6-page .mn5-exchange[open] > summary .mn5-you::after { color: #e2c996; }
body.mn6-page .mn5-exchange[open] > summary small { color: rgba(244,239,230,.66); }
body.mn6-page .mn5-exchange-body {
  background: var(--mn6-reader);
  color: var(--mn6-body);
}
body.mn6-page .mn5-reply {
  border-radius: 2px 22px 22px 22px;
  background: var(--mn6-forest-soft);
}
body.mn6-page .mn5-reply::before { display: none; }
body.mn6-page .mn5-depth,
body.mn6-page .mn5-deep {
  border-color: rgba(20,34,27,.15);
  background: rgba(255,255,255,.3);
}
body.mn6-page .mn5-depth[open],
body.mn6-page .mn5-deep[open] { background: rgba(255,255,255,.5); }
body.mn6-page .mn5-next,
body.mn6-page .mn5-finish {
  border-radius: 0;
  background: transparent;
}

/* Quiet research room. */
body.mn6-page #mn5-evidence {
  border-color: rgba(212,226,229,.18);
  background: var(--mn6-slate);
}
body.mn6-page #mn5-evidence > summary,
body.mn6-page #mn5-evidence[open] > summary,
body.mn6-page #mn5-evidence.is-transition-target[open] > summary {
  background: var(--mn6-slate);
  color: #f4f0e8;
  box-shadow: inset 3px 0 0 rgba(224,199,151,.72);
}
body.mn6-page #mn5-evidence > summary strong { color: #f4f0e8; }
body.mn6-page #mn5-evidence > summary .mn5-you,
body.mn6-page #mn5-evidence > summary .mn5-you::after { color: #eed8ae; }
body.mn6-page #mn5-evidence .mn5-exchange-body { background: #2a424c; }
body.mn6-page #mn5-evidence .mn5-reply { background: #1d323b; }
body.mn6-page #mn5-evidence :is(.mn5-depth,.mn5-deep) { background: rgba(10,27,34,.28); }
body.mn6-page #mn5-evidence .mn5-next { color: #f4f0e8; }

/* Recovery, course and safety are distinct rooms, not warning banners. */
body.mn6-page #mn5-recovery .mn5-exchange-body { background: var(--mn6-recovery); }
body.mn6-page #mn5-recovery > summary { border-left: 3px solid #a97869; }
body.mn6-page #mn5-course .mn5-exchange-body { background: var(--mn6-course); }
body.mn6-page #mn5-course > summary { border-left: 3px solid #a47e43; }
body.mn6-page #mn5-safety .mn5-exchange-body { background: var(--mn6-safety); }
body.mn6-page #mn5-safety > summary { border-left: 3px solid #875b55; }
body.mn6-page #mn5-routes[open] > summary,
body.mn6-page #mn5-routes.is-transition-target[open] > summary { background: var(--mn6-blue-soft); }
body.mn6-page #mn5-routes .mn5-finish { border-color: rgba(14,23,33,.2); }

/* ---------- Quick reference, evidence trail and odNOVA-blue ending ---------- */
body.mn6-page .mn5-faq { background: var(--mn6-paper); }
body.mn6-page .mn5-sources { background: #ddd6ca; }
body.mn6-page .mn5-faq h2,
body.mn6-page .mn5-sources h2 { color: var(--mn6-ink); }
body.mn6-page .mn5f-question-finder { background: var(--mn6-paper); }

body.mn6-page .mn5f-footer {
  background: var(--mn6-blue);
  color: #f0ece5;
}
body.mn6-page .mn5f-footer__moon {
  border-color: rgba(198,216,229,.16);
  box-shadow: inset 28px -18px 42px rgba(198,216,229,.035);
}
body.mn6-page .mn5f-footer__status,
body.mn6-page .mn5f-footer__contact a { color: #d9bd8b; }
body.mn6-page .mn5f-footer__contact { color: rgba(240,236,229,.68); }
body.mn6-page .mn5f-footer__nav a { color: rgba(240,236,229,.86); }
body.mn6-page .mn5f-footer__legal { color: rgba(240,236,229,.54); }
body.mn6-page .mn5f-footer__legal a { min-height: 44px; color: rgba(240,236,229,.74); }

@media (max-width: 600px) {
  body.mn6-page .mn5-thread-intro > p:last-child { margin-left: 0; }
  body.mn6-page .mn5-exchange > summary {
    grid-template-columns: 42px minmax(0,1fr) 34px;
    gap: 4px 9px;
  }
  body.mn6-page .mn5-exchange > summary strong { font-size: 21px; line-height: 1.08; }
  body.mn6-page .mn5-exchange-body { padding: 25px 20px 38px; }
  body.mn6-page .mn5-reply { margin-left: 0; padding: 21px 19px; }
  body.mn6-page .mn5-reply .mn5-piotr + p { font-size: 19px; }
  body.mn6-page .mn5f-layer-guide { min-height: 78px; }
  body.mn6-page .mn5f-footer__line { font-size: 31px; line-height: 1.03; }
  body.mn6-page .mn5f-footer__contact { font-size: 12px; }
  body.mn6-page .mn5f-footer__legal { font-size: 9px; line-height: 1.7; }
}

/* ---------- V3 terminal · HOME V7 intelligence, treatment-page voice ---------- */
body.mn6-page .mn6-terminal {
  position: relative;
  isolation: isolate;
  display: grid;
  min-height: 100svh;
  align-items: center;
  overflow: hidden;
  padding: 0;
  background:
    radial-gradient(105% 88% at 101% 8%, rgba(70,108,135,.24), transparent 61%),
    radial-gradient(80% 90% at -9% 92%, rgba(27,76,56,.26), transparent 67%),
    linear-gradient(145deg, #06120f, #07151b 48%, #0a1824);
  color: #bac6ce;
}
body.mn6-page .mn6-terminal::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset-block: 0;
  left: 19px;
  width: 1px;
  background: linear-gradient(transparent, rgba(207,170,108,.48) 30%, rgba(207,170,108,.1) 79%, transparent);
}
body.mn6-page .mn6-terminal-light {
  position: absolute;
  z-index: -2;
  top: -28%;
  right: -24%;
  width: 92vw;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(102,143,169,.13), rgba(33,80,64,.055) 40%, transparent 69%);
  filter: blur(18px);
  animation: mn6-terminal-breathe 9s ease-in-out infinite alternate;
}
body.mn6-page .mn6-terminal-orbit {
  position: absolute;
  z-index: -1;
  right: -42vw;
  bottom: -8vw;
  width: 130vw;
  aspect-ratio: 1;
  border: 1px solid rgba(219,199,162,.095);
  border-radius: 50%;
  box-shadow: 0 0 0 1px rgba(130,167,187,.018);
}
body.mn6-page .mn6-terminal-orbit::after {
  content: "";
  position: absolute;
  inset: 14%;
  border: 1px solid rgba(219,199,162,.055);
  border-radius: 50%;
}
body.mn6-page .mn6-terminal-grid {
  position: relative;
  z-index: 2;
  display: block;
  width: min(100%, 600px);
  padding-block: 56px;
}
body.mn6-page .mn6-terminal-index {
  margin: 0 0 28px;
  color: rgba(224,201,157,.62);
  font: 500 8px/1.4 var(--font-mono);
  letter-spacing: .2em;
  text-transform: uppercase;
}
body.mn6-page .mn6-terminal-index::before { content: "The next step"; }
body.mn6-page .mn6-terminal .mn5-kicker {
  margin-bottom: 17px;
  color: #dfc79c;
}
body.mn6-page .mn6-terminal h2 {
  max-width: 10.6ch;
  margin: 0;
  color: #f3eee6;
  font: 300 clamp(46px, 13.4vw, 52px)/.9 var(--font-serif);
  letter-spacing: -.045em;
}
body.mn6-page .mn6-terminal h2 i {
  display: block;
  margin-left: 16px;
  color: #dfc79c;
  font-weight: 300;
}
body.mn6-page .mn6-terminal-body {
  display: grid;
  gap: 14px;
  max-width: 52ch;
  margin-top: 30px;
}
body.mn6-page .mn6-terminal .mn6-terminal-body p {
  max-width: none;
  margin: 0;
  color: rgba(230,235,238,.69);
  font-size: 13.5px;
  line-height: 1.62;
}
body.mn6-page .mn6-terminal .mn6-terminal-body strong {
  color: rgba(245,239,230,.94);
  font-weight: 400;
}
body.mn6-page .mn6-terminal-routes {
  margin-top: 40px;
  border-top: 1px solid rgba(210,222,230,.16);
}
body.mn6-page .mn6-terminal-routes a,
body.mn6-page .mn6-terminal-routes .mn5-primary,
body.mn6-page .mn6-terminal-routes .mn5-secondary {
  display: flex;
  width: 100%;
  max-width: none;
  min-height: 72px;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  margin: 0;
  padding: 0;
  border: 0;
  border-bottom: 1px solid rgba(210,222,230,.16);
  border-radius: 0;
  background: transparent;
  color: #cbd4da;
  font: 500 8.5px/1.35 var(--font-mono);
  letter-spacing: .135em;
  text-transform: uppercase;
  transition: padding .65s cubic-bezier(.16,.76,.2,1), color .4s ease, background-color .45s ease;
}
body.mn6-page .mn6-terminal-routes .mn5-primary { color: #e1c99f; }
body.mn6-page .mn6-terminal-routes i {
  display: grid;
  flex: 0 0 auto;
  width: 46px;
  height: 46px;
  place-items: center;
  border: 1px solid rgba(230,211,176,.2);
  border-radius: 50%;
  color: #dfc18e;
  font: 300 16px/1 var(--font-sans);
  transform: rotate(-44deg);
  transition: transform .7s cubic-bezier(.16,.76,.2,1), background-color .4s ease, border-color .4s ease;
}
body.mn6-page .mn6-terminal-routes .mn5-secondary i::before { content: "→"; }
body.mn6-page .mn6-terminal-routes a:hover,
body.mn6-page .mn6-terminal-routes a:focus-visible {
  padding-inline: 12px;
  background: rgba(241,236,228,.025);
  color: #f4eee4;
}
body.mn6-page .mn6-terminal-routes a:hover i,
body.mn6-page .mn6-terminal-routes a:focus-visible i {
  border-color: rgba(230,211,176,.34);
  background: rgba(230,211,176,.075);
  transform: rotate(0deg);
}
body.mn6-page.mn5-motion .mn6-terminal-grid {
  opacity: 0;
  transform: translate3d(0,28px,0);
  transition: opacity .86s ease, transform 1.08s cubic-bezier(.16,.76,.2,1);
}
body.mn6-page.mn5-motion .mn6-terminal-grid.mn5-seen {
  opacity: 1;
  transform: none;
}
@keyframes mn6-terminal-breathe {
  from { opacity: .52; transform: translate3d(-1.5%,1%,0) scale(.98); }
  to { opacity: .9; transform: translate3d(1.5%,-1%,0) scale(1.03); }
}
@media (prefers-reduced-motion: reduce) {
  body.mn6-page .mn6-terminal-light { animation: none; }
  body.mn6-page.mn5-motion .mn6-terminal-grid {
    opacity: 1;
    transform: none;
    transition: none;
  }
  body.mn6-page .mn6-terminal-routes a,
  body.mn6-page .mn6-terminal-routes i { transition: none; }
}

/* V2 hero remains inherited unchanged above. */
