/* Full essay rhythm extends the approved chapter prototype. */
.full-essay .hero h1 {font-size: clamp(100px,10.5vw,160px); margin-bottom: 16px}
.title-stop {color: var(--signal)}
.hero-subtitle {font: 500 clamp(25px,2.5vw,36px)/1.16 var(--serif); max-width: 410px; color: var(--signal); margin: 0 0 22px}
.full-essay .hero-deck {max-width: 345px}
.full-essay .chapter-number {margin-top: 48px}
.byline a {text-decoration: none}
.reader-nav {position: sticky; top: 0; z-index: 15; min-height: 61px; display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 0 6%; background: #170c10f7; border-bottom: 1px solid var(--hairline)}
.reader-name {font: 11px var(--mono); letter-spacing: .15em; text-decoration: none}
.reader-parts {display: flex; gap: 32px}
.reader-parts a {font: 11px var(--mono); color: var(--ghost); text-decoration: none; padding: 22px 0}
.reader-parts a[aria-current='true'] {color: var(--paper); box-shadow: inset 0 -2px var(--signal)}
.reader-nav details {position: relative}
.reader-nav summary {cursor: pointer; min-height: 48px; display: flex; align-items: center; gap: 35px; font: 11px var(--mono); list-style: none}
.reader-nav summary::-webkit-details-marker {display: none}
.reader-nav summary span[aria-hidden] {font-size: 23px; color: var(--signal)}
.reader-nav summary span[aria-hidden] {transition: transform .2s ease}
.reader-nav details[open] summary span[aria-hidden] {transform: rotate(45deg)}
.reader-nav details[open] .contents-list {animation: contents-enter .22s ease-out}
@keyframes contents-enter {from {opacity: 0; transform: translateY(-8px)} to {opacity: 1; transform: translateY(0)}}
.reader-nav summary:focus-visible {outline: 2px solid var(--signal); outline-offset: 2px}
.contents-list {position: absolute; top: calc(100% + 6px); right: -12px; width: min(520px,88vw); max-height: 72svh; overflow-y: auto; overscroll-behavior: contain; margin: 0; padding: 20px; background: var(--deep); border: 1px solid var(--hairline); box-shadow: 0 25px 80px #000a; list-style: none}
.contents-list li {margin: 0; padding: 0}
.contents-list a {display: flex; align-items: baseline; gap: 15px; padding: 13px 10px; min-height: 44px; text-decoration: none; color: var(--ghost); font: 13px/1.4 var(--sans)}
.contents-list a:hover,.contents-list a[aria-current='location'] {background: #36232a; color: var(--paper)}
.toc-number {font: 10px var(--mono); color: var(--signal)}
.contents-list .toc-part a {font: 11px var(--mono); color: var(--paper); border-bottom: 1px solid var(--hairline); margin-top: 15px; letter-spacing: .08em}
.reading-progress {height: 2px; position: absolute; bottom: -1px; left: 0; right: 0; overflow: hidden}
.reading-progress>span {display: block; width: 100%; height: 100%; background: var(--signal); transform: scaleX(0); transform-origin: left}
.introduction {padding-top: 75px; padding-bottom: 90px}
.chapter-copy h3 {font: 600 29px/1.2 var(--serif); margin: 45px 0 25px}
.chapter-copy .spoiler-note {font: 11px/1.7 var(--mono); letter-spacing: .025em; color: var(--red); border-bottom: 1px solid #b89d91; padding-bottom: 23px; margin-bottom: 34px}
.part-opening {background: radial-gradient(ellipse at 80% 50%,#381620,transparent 70%),var(--deep); color: var(--paper); padding: 78px 8%; overflow: hidden; border-top: 1px solid #513037; border-bottom: 1px solid #513037}
.part-inner {max-width: 1100px; margin: auto; display: grid; grid-template-columns: 1fr 390px; align-items: center; gap: 70px}
.part-opening h2 {font: 500 clamp(65px,7vw,106px)/.95 var(--serif); letter-spacing: -.035em; margin: 20px 0 24px}
.part-deck {font: 15px/1.8 var(--sans); color: var(--ghost); max-width: 320px}
.part-symbol {width: 100%; height: auto; max-height: 260px; color: #c5a168}
.essay-chapter {background: var(--paper); color: var(--ink); scroll-margin-top: 0}
.chapter-heading {padding: 78px 6% 15px}
.chapter-heading h2 {font: 500 clamp(36px,3.3vw,49px)/1.07 var(--serif); letter-spacing: -.025em; margin: 0}
.chapter-heading .margin-note {display: flex; flex-direction: column; gap: 12px; margin-top: 3px}
.chapter-heading .margin-number {margin: 0; font-size: 74px}
.thematic-label {color: var(--red); margin-bottom: 18px}
.chapter-body {padding-top: 25px; padding-bottom: 32px}
.chapter-body .chapter-copy {border-bottom: 1px solid #b89d9166; padding-bottom: 30px}
.chapter-thread {display: flex; justify-content: flex-start; padding: 15px 0 0 24px}
.chapter-thread span {display: block; height: min(100%,220px); width: 1px; background: linear-gradient(#a2263b80,transparent); position: relative}
.chapter-thread span::before {content: ''; width: 5px; height: 5px; border-radius: 50%; background: var(--red); position: absolute; top: 0; left: -2px}
.full-essay .chapter-copy .source-emphasis {font: 500 clamp(30px,3.2vw,44px)/1.2 var(--serif); color: var(--red); padding: 25px 0 28px; margin: 12px 0 35px; border-top: 1px solid #b89d91; border-bottom: 1px solid #b89d91}
.essay-chapter>.experiment,.essay-chapter>[data-scene] {margin-top: 22px; margin-bottom: 28px; color: var(--paper)}
.full-essay .experiment-head h3 {font: 500 clamp(40px,4vw,58px)/1 var(--serif); letter-spacing: -.035em; margin: 15px 0 0}
[data-reserved='true'] .chapter-body {padding-bottom: 50px}
[data-reserved='true'] .chapter-copy {border: 1px dashed #99766a; padding: 28px}
.chapter-copy .reserved-label {font: 11px var(--mono); color: var(--red); letter-spacing: .1em; text-transform: uppercase}
[data-reserved='true'] .chapter-copy p:last-child {font-size: 15px; color: var(--muted); margin-bottom: 0}
.notes {padding-top: 70px; border-top: 1px solid #b89d91}
.notes ol {padding-left: 22px; margin: 0}
.notes li {font: 14px/1.85 var(--sans); padding: 0 0 20px 10px}
.notes li::marker {font: 11px var(--mono); color: var(--red)}
.closing {text-align: center; padding: 65px 24px 60px; border-bottom: 1px solid var(--hairline); background: radial-gradient(ellipse at 50% 100%,#361521,transparent 80%),var(--deep)}
.closing .end-mark {margin: 0 0 20px}
.closing h2 {font: 500 clamp(44px,5vw,70px)/1 var(--serif); letter-spacing: -.035em; margin: 0 0 20px}
@media(max-width:1000px) {.reader-parts {gap: 18px}.part-inner {grid-template-columns: 1fr 280px; gap: 25px}}
@media(max-width:700px) {
  html {scroll-padding-top: 80px}
  .full-essay .hero h1 {font-size: clamp(80px,21vw,130px)}
  .full-essay .chapter-number {margin-top: 280px; font-size: 9px}
  .hero-subtitle {font-size: 29px; max-width: 310px; margin-bottom: 18px}
  .reader-nav {padding: 0 6%; gap: 15px; min-height: 56px}
  .reader-parts {gap: 15px}
  .reader-parts a {font-size: 0; padding: 20px 4px}
  .reader-parts a:nth-child(1)::after {content: 'I'; font: 12px var(--mono)}
  .reader-parts a:nth-child(2)::after {content: 'II'; font: 12px var(--mono)}
  .reader-parts a:nth-child(3)::after {content: 'III'; font: 12px var(--mono)}
  .reader-nav summary {font-size: 10px; gap: 15px}
  .contents-list {right: 0; padding: 12px}
  .introduction {padding-top: 48px; padding-bottom: 45px}
  .part-opening {padding: 45px 9% 20px}
  .part-inner {grid-template-columns: 1fr; gap: 5px}
  .part-opening h2 {font-size: 70px}
  .part-deck {font-size: 13px; margin-bottom: 0}
  .part-symbol {height: 150px; width: 260px; justify-self: end; margin-top: -5px}
  .chapter-heading {padding: 45px 8% 5px}
  .chapter-heading .margin-note {flex-direction: row; align-items: center; margin-bottom: 20px}
  .chapter-heading .margin-number {font-size: 36px; order: -1}
  .chapter-heading h2 {font-size: 37px}
  .chapter-body {padding-top: 23px; padding-bottom: 10px}
  .chapter-body .chapter-copy {padding-bottom: 15px}
  .chapter-thread {display: none}
  .full-essay .chapter-copy .source-emphasis {font-size: 32px}
  .notes li {font-size: 13px; padding-left: 4px}
}
@media print {
  .reader-nav,.part-symbol,[data-scene],.closing,.hero-art {display: none !important}
  .part-opening {padding: 24pt 0 10pt; break-before: page; background: #fff; color: #000; border: 0}
  .part-opening h2 {font-size: 30pt}
  .part-inner {display: block}
  .part-opening .eyebrow,.part-deck {color: #333}
  .chapter-heading {padding: 24pt 0 8pt; break-after: avoid}
  .chapter-heading h2 {font-size: 22pt}
  .chapter-heading .margin-note {display: none}
  .chapter-body {padding: 0}
  .chapter-thread {display: none}
  .chapter-copy,.reading-grid {max-width: none; display: block}
  .chapter-copy p {font-size: 11pt; line-height: 1.5; orphans: 3; widows: 3}
  .hero-subtitle {color: #000}
}
