/* Opt in with body.odnova-conversation-sisters; load after route styles.
   Geometry and motion only: each route retains its own palette and content.
   :is() keeps equal specificity with the legacy route ID rules while also
   allowing any .mn5-thread ID. The desktop rail remains the route's own layout. */
body.odnova-conversation-sisters {
  --odv-conversation-body: 15px;
  --odv-conversation-lead: 19px;
  --odv-conversation-detail: 15px;
  --odv-conversation-detail-question: 15px;
  --odv-conversation-deep-question: 14px;
  --odv-conversation-detail-padding: 16px;
}

body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary {
  display: grid;
  align-items: center;
  grid-template-columns: 42px minmax(0,1fr) 34px;
  gap: 4px 9px;
  min-height: 92px;
  padding: 15px 18px 15px 22px;
  list-style: none;
  cursor: pointer;
  border-left-color: transparent !important;
  box-shadow: none !important;
  transition: color 350ms ease, background 350ms ease;
}
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary strong {
  min-width: 0;
  font-family: var(--font-serif);
  font-size: 21px !important;
  font-weight: 400;
  line-height: 1.08 !important;
  letter-spacing: -.01em !important;
  text-transform: none !important;
  text-wrap: pretty;
}
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary .mn5-you {
  font-size: 8px;
  margin-top: 4px;
}
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary small { font-size: 8px; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary i { width: 32px; height: 32px; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange-body {
  padding: 25px 20px 38px;
  font-size: var(--odv-conversation-body);
  line-height: 1.65;
}
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-reply {
  margin-left: 0;
  padding: 21px 20px 23px;
  border-radius: 2px 22px 22px 22px;
}
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-reply::before { display: none; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-reply :is(p,li,dt,dd):not(.mn5-piotr) {
  font-size: var(--odv-conversation-body) !important;
  line-height: 1.65;
  text-wrap: pretty;
}
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-reply p + p:not(.mn5-piotr) { margin-top: 12px; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-reply .mn5-piotr + p {
  font-size: var(--odv-conversation-lead) !important;
  line-height: 1.45;
  margin-top: 8px;
}
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-reply :is(strong,b,a) { color: inherit; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-reply :is(strong,b) { font-weight: 500; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-reply a { text-decoration: underline; text-underline-offset: .18em; }

body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) :is(.mn5-depth,.mn5-deep) { margin-block: 14px; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) :is(.mn5-depth,.mn5-deep)::before { display: none !important; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) :is(.mn5-depth,.mn5-deep) > summary {
  display: grid !important;
  grid-template-columns: 44px minmax(0,1fr) !important;
  column-gap: 14px !important;
  align-items: center;
  justify-items: start;
  padding: 14px 44px 14px var(--odv-conversation-detail-padding) !important;
  min-height: 62px;
  text-align: left;
  font-size: var(--odv-conversation-detail-question) !important;
  line-height: 1.4 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  text-wrap: pretty;
  list-style: none;
  cursor: pointer;
  transition: color 350ms ease, background 350ms ease;
}
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-deep > summary { font-size: var(--odv-conversation-deep-question) !important; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) :is(.mn5-depth,.mn5-deep) > summary::before {
  width: 44px;
  min-width: 44px;
  max-width: 44px;
  margin: 0;
  align-self: center;
}
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) :is(.mn5-depth,.mn5-deep) > div { padding: 4px var(--odv-conversation-detail-padding) 22px; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) :is(.mn5-depth,.mn5-deep) :is(p,li,dt,dd) {
  font-size: var(--odv-conversation-detail) !important;
  line-height: 1.65;
  text-wrap: pretty;
}
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) :is(.mn5-depth,.mn5-deep) p + p { margin-top: 12px; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) summary::-webkit-details-marker { display: none; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) summary::marker { content: ""; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) summary:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) summary :is(i,span[aria-hidden]) {
  transition: transform 850ms cubic-bezier(.4,0,.2,1), border-color 350ms ease;
}
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary i::after { transition: transform 850ms cubic-bezier(.4,0,.2,1); }

/* Animate the browser's content box, not a measured pixel height. This lets
   nested answers resize an already-open parent without retained constraints.
   Engines without intrinsic-size interpolation keep native immediate toggles. */
body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) details > :not(summary) {
  animation: none !important;
  transform: none !important;
  filter: none !important;
}
@supports (interpolate-size: allow-keywords) and selector(details::details-content) {
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) details {
    interpolate-size: allow-keywords;
    overflow-anchor: none;
  }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) details::details-content {
    block-size: 0;
    overflow: clip;
    transition: block-size 1000ms cubic-bezier(.4,0,.2,1), content-visibility 1000ms allow-discrete !important;
  }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) details[open]::details-content { block-size: auto; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) details:not([open]) > :not(summary) { display: block !important; }
}

@media (max-width: 600px) {
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-deep { margin-left: 0; }
}
@media (min-width: 601px) {
  body.odnova-conversation-sisters {
    --odv-conversation-body: 17px;
    --odv-conversation-lead: 23px;
    --odv-conversation-detail: 17px;
    --odv-conversation-detail-question: 17px;
    --odv-conversation-deep-question: 16px;
    --odv-conversation-detail-padding: 20px;
  }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary {
    grid-template-columns: 54px minmax(0,1fr) 38px;
    gap: 3px 10px;
    padding: 22px 30px;
    min-height: 112px;
  }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary strong {
    font-size: 29px !important;
    line-height: 1.15 !important;
  }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary .mn5-you { margin-top: 7px; font-size: 9px; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary small { font-size: 9px; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary i { width: 36px; height: 36px; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange-body { padding: 32px clamp(30px,5vw,50px) 48px; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-reply { margin: 0 0 34px; padding: 27px 30px 28px; border-radius: 4px 25px 25px 25px; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-reply .mn5-piotr { font-size: 10px; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-reply .mn5-piotr + p { line-height: 1.43; }
}
/* Tablet follows the latest reference's inline list; desktop keeps its rail. */
@media (min-width: 601px) and (max-width: 1099px) {
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-wide-question-rail { display: none; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchanges { grid-row: 3; display: grid; gap: 20px; margin-top: 28px; }
  body.odnova-conversation-sisters.mn5-enhanced .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange[data-mn5-exchange] { display: block; opacity: 1; transform: none; margin: 0; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary strong { max-width: none; }
}
@media (min-width: 1100px) {
  body.odnova-conversation-sisters { --odv-conversation-lead: 25px; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary { min-height: 158px; padding: 26px 40px; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary strong { max-width: 19ch; font-size: 38px !important; line-height: 1.02 !important; }
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange-body { padding: 52px 62px 64px; }
}
@media (hover: hover) {
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) summary:hover :is(i,span[aria-hidden]) { border-color: currentColor; }
}
@media (prefers-reduced-motion: reduce) {
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) details::details-content,
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) summary,
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) summary :is(i,span[aria-hidden]),
  body.odnova-conversation-sisters .mn5-thread:is(#mn5-thread,#lp2-thread,#ph2-thread,.mn5-thread) .mn5-exchange > summary i::after { transition: none !important; }
}

/* The lesion header now uses the shared portrait-and-copy grid. Keep its first
   cell present so the title does not fall into the narrow portrait column. */
body.odnova-conversation-sisters.four-lesion .mn5-thread-intro > .mn5-portrait-dot {
  display: block;
}
