/* V18.9: optional reading help and the separate original novel. */
.novel-stop{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(28px,7vw,100px);padding-block:70px;align-items:center}
.novel-stop h2{margin-bottom:24px}.novel-stop .actions{margin-top:24px}
.novel-glimpse{font-family:var(--serif);font-size:clamp(19px,2vw,25px);line-height:2.05;padding-inline:20px 0}
.novel-glimpse small{display:block;font-family:var(--sans);font-size:13px;color:var(--muted);margin-top:24px;line-height:1.8}
.margin-walkthrough{padding-block:36px 72px;scroll-margin-top:24px}
.margin-walkthrough>p{max-width:780px;font-size:16px;margin-top:20px}
.reading-trail{list-style:none;counter-reset:read;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;gap:35px;margin:32px 0}
.reading-trail li{counter-increment:read;min-width:0}.reading-trail h3{font-size:22px;margin-bottom:14px}
.reading-trail h3:before{content:counter(read,decimal-leading-zero) ' ';font-family:var(--sans);font-size:13px;color:var(--muted)}
.reading-trail p{font-size:16px;line-height:1.95}.reading-trail strong{font-weight:600}
.margin-example{max-width:800px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:14px;margin:32px 0}
.margin-example summary,.margin-example details summary{cursor:pointer;padding:10px 0;min-height:44px;font-size:16px;line-height:1.65}
.margin-example>h3{font-size:23px;margin:24px 0 18px}.margin-example p{font-size:16px;line-height:2}
.margin-example>.quiet{font-size:14px;margin:18px 0}.margin-example details{margin-top:14px}
.play-examples{max-width:900px;display:grid;gap:50px;padding-bottom:60px}.play-examples h2{font-size:29px;margin-bottom:20px}
.play-examples p{font-size:17px;line-height:2}.play-examples .quiet{font-size:14px;line-height:1.85}
.novel-layout{display:grid;grid-template-columns:240px minmax(0,800px);gap:clamp(24px,5vw,75px);align-items:start;padding-bottom:60px}
.novel-contents{position:sticky;top:22px;min-width:0}.novel-contents summary{font-size:17px;cursor:pointer;min-height:44px;padding:8px 0}
.novel-contents ol{padding-left:1.35em;margin:15px 0}.novel-contents li{margin:5px 0}.novel-contents a{display:block;min-height:44px;padding:8px 0;line-height:1.65}
.novel-prose{min-width:0;font-family:var(--serif);font-size:18px;line-height:2.12;overflow-wrap:break-word}
.novel-prose.large{font-size:21px}.novel-prose article{scroll-margin-top:24px;padding-bottom:52px}.novel-prose h2{font-size:29px;margin-bottom:30px;line-height:1.6}
.novel-prose p{margin:0 0 1em;text-indent:2em}.novel-prose .chapter-end{text-indent:0;text-align:right;font-family:var(--sans);font-size:13px;margin-top:24px}
.novel-reading-tools{display:flex;gap:12px;flex-wrap:wrap;margin-block:18px}.novel-reading-tools button{min-height:44px;min-width:48px;padding:8px 16px;color:var(--ink);background:transparent;border:1px solid var(--line)}
.novel-reading-tools button[aria-pressed=true]{border-color:var(--muted);background:#e9eddf}
.novel-next{padding-block:24px}.nav{gap:clamp(16px,2vw,32px)}
@media(max-width:760px){.novel-stop{grid-template-columns:1fr;padding-block:44px}.novel-glimpse{padding:0}.reading-trail{grid-template-columns:1fr;gap:26px}.margin-walkthrough{padding-block:24px 42px}.novel-layout{grid-template-columns:1fr}.novel-contents{position:static}.novel-prose{font-size:18px;line-height:2.05}.novel-prose.large{font-size:20px}.novel-prose h2{font-size:26px}.play-examples p{font-size:17px}.nav{flex-wrap:wrap;gap:6px 16px}.nav a{min-height:44px}.novel-stop .quiet{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* V18.10: one topic label; the source stays a quiet optional shelf. */
.topic-shelf{max-width:800px;margin:24px 0 34px;border-bottom:1px solid var(--line);padding-bottom:12px}
.topic-shelf summary{cursor:pointer;min-height:46px;padding:12px 0;font-size:16px;line-height:1.8}
.topic-shelf p{font-size:15px;line-height:1.95;max-width:47em;margin:14px 0;overflow-wrap:anywhere}
.topic-shelf summary:focus-visible,.margin-example summary:focus-visible{outline:2px solid #385e44;outline-offset:4px}
.novel-glimpse{font-size:clamp(18px,1.65vw,22px)}
@media(max-width:760px){.nav{gap:4px 16px;justify-content:flex-start;overflow-x:visible}.novel-glimpse{font-size:18px;line-height:2}.topic-shelf summary{font-size:16px}.topic-shelf p{font-size:15px}}
