/* Local proof: original article components remain intact; map their palette only. */
.fsr-inheritance-page .fsr-reading-surface { padding-top: 40px; }
.fsr-inheritance-page .document-hero { padding-top: 0; }
.fsr-inheritance-page .document-hero h1 { max-width: 850px; font-size: clamp(36px, 4.2vw, 62px); }
.fsr-inheritance-page .article-origin { display: flex; flex-wrap: wrap; gap: 8px 24px; margin: 24px 0 32px; font-size: 12px; line-height: 1.8; color: var(--fsr-muted); }
.fsr-inheritance-layout { display: grid; grid-template-columns: minmax(0,1fr) 258px; gap: clamp(28px,4vw,64px); align-items: start; }
.fsr-inheritance-layout > .entry-content { grid-column: 1; grid-row: 1; }
.fsr-inheritance-layout > .fsr-inherited-toc { grid-column: 2; grid-row: 1; }
.fsr-inheritance-page .entry-content {
  min-width: 0; max-width: none; margin: 0; font-size: 18px;
  --fsr-fp-cream: var(--fsr-bg);
  --fsr-fp-ink: var(--fsr-mint);
  --fsr-fp-ink2: var(--fsr-muted);
  --fsr-fp-bronze: #d8a66f;
  --fsr-fp-under: var(--fsr-control-surface);
  --fsr-fp-text: var(--fsr-text);
  --fsr-fp-on-ink: var(--fsr-bg);
  --fsr-fp-on-ink-soft: var(--fsr-bg);
  --fsr-fp-rule-soft: var(--fsr-control-border);
  --fsr-fp-rule-row: var(--fsr-control-border);
  --fsr-fp-rule-cell: var(--fsr-control-border);
  --fsr-fp-ink-hover: var(--fsr-text);
  --fsr-mg-graphite: var(--fsr-text);
  --fsr-mg-body: var(--fsr-text);
  --fsr-mg-mute: var(--fsr-muted);
  --fsr-mg-red: #ff8778;
  --fsr-mg-blue: #9db7ff;
  --fsr-mg-rule: var(--fsr-control-border);
  --fsr-fp-font-caps: var(--fsr-display);
  --fsr-fp-font-text: var(--fsr-display);
  --fsr-fp-font-micro: var(--fsr-interface);
  --fsr-fp-max: 100%;
  --fsr-fp-measure: 100%;
}
html[data-fsr-theme="light"] .fsr-inheritance-page .entry-content {
  --fsr-fp-bronze: #8a5b2c;
  --fsr-mg-red: #ad3025;
  --fsr-mg-blue: #2c5ad1;
}
.fsr-inheritance-page .entry-content > h2 { scroll-margin-top: 24px; }
.fsr-inheritance-page .entry-content :where(img,figure,video) { max-width: 100%; }
.fsr-inheritance-page .entry-content .table-wrap { overflow-x: auto; margin-block: 24px; }
.fsr-inheritance-page .entry-content .table-wrap table { min-width: 580px; margin: 0; }
.fsr-inheritance-page .entry-content pre { overflow-wrap: anywhere; }
.fsr-inherited-toc { position: sticky; top: 28px; min-width: 0; padding: 20px 12px 12px; border: 1px solid var(--fsr-control-border); border-left: 3px solid var(--fsr-mint); border-radius: 16px; }
.fsr-inherited-toc details { margin: 0; }
.fsr-inherited-toc summary { list-style: none; margin: 0 8px 6px; min-height: 44px; cursor: pointer; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: var(--fsr-muted); }
.fsr-inherited-toc summary::-webkit-details-marker { display: none; }
.fsr-inherited-toc summary::after { content: " +"; float: right; }
.fsr-inherited-toc details[open] summary::after { content: " −"; }
.fsr-inherited-toc ol { max-height: calc(100dvh - 120px); overflow-y: auto; overscroll-behavior: contain; margin: 0; padding: 0 5px 0 0; list-style: none; scrollbar-width: thin; }
.fsr-inherited-toc li { margin: 0; padding: 0; }
.fsr-inherited-toc a { display: block; padding: 11px 12px; min-height: 44px; border-left: 2px solid transparent; border-radius: 8px; font-size: 14px; line-height: 1.55; text-decoration: none; color: var(--fsr-muted); }
.fsr-inherited-toc a:hover { background: var(--fsr-control-surface); color: var(--fsr-text); }
.fsr-inherited-toc a[aria-current="location"] { color: var(--fsr-text); background: var(--fsr-control-hover); border-left-color: var(--fsr-mint); font-weight: 600; }
.fsr-inherited-toc a:focus-visible { outline-offset: -3px; }
@media(max-width:1000px) {
  .fsr-inheritance-layout { display: flex; flex-direction: column; gap: 28px; }
  .fsr-inherited-toc { position: static; width: 100%; padding: 0; }
  .fsr-inherited-toc summary { pointer-events: auto; cursor: pointer; min-height: 44px; padding: 14px; margin: 0; }
  .fsr-inherited-toc nav { padding: 0 12px 12px; }
  .fsr-inherited-toc ol { max-height: 340px; }
}
@media print {
  .fsr-inheritance-layout { display: block; }
  .fsr-inherited-toc { display: none; }
  html[data-fsr-theme] .fsr-inheritance-page .entry-content {
    --fsr-fp-cream: white; --fsr-fp-ink: black; --fsr-fp-ink2: black;
    --fsr-fp-text: black; --fsr-fp-bronze: black; --fsr-fp-under: white;
    --fsr-fp-on-ink: white; --fsr-fp-on-ink-soft: white;
    --fsr-fp-rule-soft: black; --fsr-fp-rule-row: black; --fsr-fp-rule-cell: black;
    --fsr-fp-shadow-1: transparent; --fsr-fp-shadow-2: transparent;
    --fsr-mg-body: black; --fsr-mg-graphite: black; --fsr-mg-mute: black;
    --fsr-mg-red: black; --fsr-mg-blue: black; --fsr-mg-rule: black;
  }
  .fsr-inheritance-page .entry-content .table-wrap table { min-width: 0; }
}
