/* Reading improvements, scoped to article pages; publication colors and fonts inherit. */
body.detail-refresh main{min-width:0}
body.detail-refresh main h1{font-size:clamp(30px,3.4vw,52px);line-height:1.15;letter-spacing:-.035em;overflow-wrap:anywhere;text-wrap:pretty;max-width:32ch}
body.detail-refresh :is(.detail-camera,.notebook-layout) h1{font-size:clamp(32px,3.8vw,56px)}
body.detail-refresh :is(.detail-deck,.article-summary,#detail-summary,.notebook-detail-heading>p){font-size:16px;line-height:1.75;max-width:65ch;text-wrap:pretty}
body.detail-refresh .reading-prose{display:block!important;columns:auto!important;float:none!important;width:100%;max-width:78ch!important;min-width:0;margin:32px auto 0;padding:0!important;font-size:17px;line-height:1.85;letter-spacing:normal;overflow-wrap:anywhere;text-align:left;counter-reset:none}
body.detail-refresh .reading-prose :is(div,section,article,span,p,li){min-width:0;max-width:100%;overflow-wrap:anywhere}
body.detail-refresh .reading-prose .guide-step{display:block!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
body.detail-refresh .reading-prose :is(p,ul,ol,dl){margin:0 0 1.3em;max-width:none;line-height:inherit;font-size:inherit;color:inherit}
body.detail-refresh .reading-prose :is(ul,ol){padding-left:1.5em}
body.detail-refresh .reading-prose li{margin:.45em 0;padding-left:.2em}
body.detail-refresh .reading-prose :is(h2,h3,h4){font-family:inherit;font-weight:650;line-height:1.35;letter-spacing:-.02em;text-wrap:pretty;max-width:none;border:0;padding:0;scroll-margin-top:calc(var(--reading-header-height,140px) + 22px)}
body.detail-refresh .reading-prose h2{font-size:clamp(23px,2.1vw,29px);margin:1.7em 0 .7em}
body.detail-refresh .reading-prose h3{font-size:clamp(20px,1.8vw,24px);margin:1.5em 0 .65em}
body.detail-refresh .reading-prose h4{font-size:18px;margin:1.4em 0 .6em}
body.detail-refresh .reading-prose :is(h2,h3,h4)::before{content:none!important}
body.detail-refresh .reading-prose :is(img,picture){display:block!important;float:none!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center;margin:1.7em auto!important;position:static!important;transform:none!important}
body.detail-refresh .reading-prose figure{display:block!important;float:none!important;width:100%!important;max-width:100%;margin:1.8em auto!important;padding:0!important;background:transparent;border:0;border-radius:0;overflow:visible}
body.detail-refresh .reading-prose figure img{margin:0 auto!important}
body.detail-refresh .reading-prose a:has(>img){display:block;max-width:100%;margin-inline:auto}
body.detail-refresh .reading-prose figcaption{display:block!important;max-width:68ch;margin:.7em auto 0;padding:0;font-size:12px!important;line-height:1.65;text-align:center;color:var(--muted,inherit);overflow-wrap:anywhere}
body.detail-refresh .reading-prose blockquote{margin:1.8em 0;padding:.3em 0 .3em 1.3em;border-left:3px solid var(--accent,currentColor);font-size:1.06em;font-style:italic}
body.detail-refresh .reading-prose blockquote p:last-child{margin-bottom:0}
body.detail-refresh .reading-prose a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
body.detail-refresh .reading-prose :is(table,pre){display:block;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;margin:1.6em 0;font-size:14px;line-height:1.65}
body.detail-refresh .reading-prose table{border-collapse:collapse;width:100%}
body.detail-refresh .reading-prose :is(td,th){padding:12px 14px;border:1px solid var(--line,#9996);text-align:left;min-width:110px}
body.detail-refresh .reading-prose pre{white-space:pre;padding:18px;background:var(--wash,var(--soft,#8881))}
body.detail-refresh .reading-prose hr{border:0;border-top:1px solid var(--line,#9996);margin:2em 0}
body.detail-refresh .reading-prose .source-credit{font-size:12px;line-height:1.7;margin-top:2.6em;padding-top:1em;border-top:1px solid var(--line,#9996);color:var(--muted,inherit)}
body.detail-refresh :is(.article-cover,.detail-cover,.article-photo,.notebook-detail-cover){visibility:visible;opacity:1;min-width:0}
body.detail-refresh :is(.article-cover,.detail-cover,.article-photo,.notebook-detail-cover)>img{display:block!important;visibility:visible!important;opacity:1!important;object-position:center}
body.detail-refresh :is(.article-cover,.detail-cover,.article-photo,.notebook-detail-cover)>figcaption{display:block;font-size:11px;line-height:1.6;margin:0;padding:10px 0;color:var(--muted,inherit);overflow-wrap:anywhere}
body.detail-refresh .article-cover img{height:clamp(230px,30vw,380px);object-fit:contain;background:var(--wash,var(--soft,#8881))}
body.detail-refresh .reading-restored-cover{display:block;position:static;width:100%;max-width:1100px;margin:28px auto 0}
body.detail-refresh .reading-restored-cover img{width:100%;height:clamp(230px,30vw,400px);object-fit:cover}
body.detail-refresh #detail-image{display:block!important;visibility:visible!important;opacity:1!important;object-fit:cover;object-position:center;align-self:center}
body.detail-refresh :is(.article-aside,.manual-detail-index,.report-sidebar,.journal-detail-route,.routebook-rail,.dossier-rail){max-height:calc(100dvh - var(--reading-header-height,140px) - 35px);overflow-y:auto;scrollbar-width:thin}
body.detail-refresh :is(.article-toc,.article-contents,.detail-toc,.detail-route,.notebook-detail-contents){max-height:290px;overflow-y:auto;scrollbar-width:thin;overscroll-behavior:contain}
body.detail-refresh :is(.article-toc,.article-contents,.detail-toc,.detail-route,.notebook-detail-contents) a{min-width:0;font-size:12px;line-height:1.55;overflow-wrap:anywhere}
body.detail-refresh .detail-route{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
body.detail-refresh .detail-route a{padding:12px!important}
body.detail-refresh .specimen-table.reading-prose{border:0;background:transparent}
body.detail-refresh .reading-prose::before,body.detail-refresh .reading-prose::after{content:none!important}
body.detail-refresh .detail-header>#detail-image{width:100%;height:clamp(260px,29vw,390px)}
body.detail-refresh .detail-header .photo-credit{margin-top:16px;font-size:11px}
@media(max-width:760px){
 body.detail-refresh main h1{font-size:clamp(28px,7.6vw,36px);line-height:1.18;letter-spacing:-.03em}
 body.detail-refresh :is(.detail-camera,.notebook-layout) h1{font-size:clamp(29px,8vw,38px)}
 body.detail-refresh .reading-prose{font-size:16px;line-height:1.85;margin-top:24px}
 body.detail-refresh .reading-prose :is(img,figure){margin-block:1.4em!important}
 body.detail-refresh .detail-route{grid-template-columns:repeat(2,minmax(0,1fr));max-height:200px}
 body.detail-refresh :is(.detail-deck,.article-summary,#detail-summary,.notebook-detail-heading>p){font-size:15px;line-height:1.75}
 body.detail-refresh :is(.article-aside,.manual-detail-index,.report-sidebar,.journal-detail-route,.routebook-rail,.dossier-rail){max-height:none}
 body.detail-refresh .article-cover img{height:230px;object-fit:contain}
 body.detail-refresh .notebook-detail-cover img{height:230px;object-fit:cover}
 body.detail-refresh .detail-header>#detail-image{height:260px;max-width:100%}
 body.detail-refresh .reading-prose :is(td,th){padding:10px;font-size:13px}
}
/* Second editorial pass: a clearer opening, quieter navigation and generous reading rhythm. */
body.detail-refresh main h1{line-height:1.13;letter-spacing:-.035em;text-wrap:balance;max-width:27ch;margin-block:14px 22px}
body.detail-refresh :is(.article-header,.detail-heading,.notebook-detail-heading){padding-block:20px 28px}
body.detail-refresh :is(.article-meta,.detail-meta,.notebook-detail-meta){font-size:11px;line-height:1.8;gap:10px 20px;flex-wrap:wrap}
body.detail-refresh :is(.article-summary,.detail-deck,#detail-summary){line-height:1.8;margin-block:14px 24px}
body.detail-refresh .article-cover:not(.reading-restored-cover){width:100%;max-width:1040px;margin:12px auto 30px;padding:0;background:transparent;border:0}
body.detail-refresh .article-cover:not(.reading-restored-cover) img{width:100%;height:auto;aspect-ratio:16/9;min-height:240px;max-height:460px;object-fit:cover;background:transparent}
body.detail-refresh .reading-restored-cover{margin-top:34px;margin-bottom:30px}
body.detail-refresh .reading-restored-cover img{height:clamp(260px,33vw,460px);object-fit:cover}
body.detail-refresh .reading-prose{max-width:74ch!important;font-size:17px;line-height:1.9;margin-top:36px}
body.detail-refresh .reading-prose p{margin-bottom:1.45em}
body.detail-refresh .reading-prose :is(h2,h3,h4){text-transform:none;letter-spacing:-.025em;text-wrap:pretty}
body.detail-refresh .reading-prose h2{font-size:clamp(25px,2.15vw,31px);line-height:1.3;margin:1.9em 0 .8em}
body.detail-refresh .reading-prose h3{font-size:clamp(21px,1.7vw,24px);line-height:1.4;margin:1.7em 0 .7em}
body.detail-refresh .reading-prose>h2:first-child{margin-top:.3em}
body.detail-refresh .reading-prose figcaption{font-size:12px!important;line-height:1.7;margin-top:12px;opacity:.78}
body.detail-refresh .reading-prose :is(td,th){line-height:1.65}
body.detail-refresh .reading-prose th{font-weight:650;background:var(--wash,var(--soft,#8881))}
body.detail-refresh .reading-prose blockquote{padding:18px 24px;margin-block:32px;background:var(--wash,var(--soft,#8881));font-style:normal}
body.detail-refresh .reading-contents{max-height:250px!important;overflow-y:auto;scrollbar-width:thin;scrollbar-gutter:stable;padding:0;list-style:none;counter-reset:none}
body.detail-refresh .reading-contents a{display:block;font-size:12px!important;line-height:1.6!important;text-transform:none;letter-spacing:0;padding:10px 2px!important;text-decoration:none;border-bottom:1px solid var(--line,#8883);overflow-wrap:anywhere}
body.detail-refresh .reading-contents a:hover{text-decoration:underline;text-underline-offset:4px}
body.detail-refresh .reading-contents .reading-subsection{font-size:11px!important;padding-left:12px!important;opacity:.8}
body.detail-refresh .reading-contents li{margin:0;padding:0;list-style:none}
body.detail-refresh .reading-toc-toggle{display:none}
body.detail-refresh .reading-contents a:focus-visible,body.detail-refresh .reading-toc-toggle:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:760px){
 body.detail-refresh main h1{font-size:clamp(29px,7.8vw,38px);line-height:1.15;max-width:100%;margin-block:12px 20px;text-wrap:pretty}
 body.detail-refresh :is(.article-header,.detail-heading,.notebook-detail-heading){padding-block:12px 20px}
 body.detail-refresh .article-cover:not(.reading-restored-cover){margin-block:8px 24px}
 body.detail-refresh .article-cover:not(.reading-restored-cover) img{height:240px;min-height:240px;max-height:none;aspect-ratio:auto;object-fit:cover}
 body.detail-refresh .reading-restored-cover{margin-block:24px}
 body.detail-refresh .reading-restored-cover img{height:260px}
 body.detail-refresh .reading-prose{font-size:16px;line-height:1.9;margin-top:28px}
 body.detail-refresh .reading-prose h2{font-size:25px;margin-top:1.6em}
 body.detail-refresh .reading-prose h3{font-size:21px}
 body.detail-refresh .reading-toc-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:15px 0;border:0;border-block:1px solid var(--line,#8884);background:transparent;color:inherit;font:inherit;font-size:12px;font-weight:600;text-align:left;cursor:pointer}
 body.detail-refresh .reading-toc-toggle::after{content:'+';font-size:20px;font-weight:400}
 body.detail-refresh .reading-toc-toggle[aria-expanded=true]::after{content:'−'}
 body.detail-refresh .reading-contents{display:none!important}
 body.detail-refresh .reading-contents.is-expanded{display:block!important;max-height:240px!important;margin-top:8px}
 body.detail-refresh :is(.article-aside,.manual-detail-index,.report-sidebar,.journal-detail-route,.routebook-rail,.dossier-rail){overflow:visible}
}
@media print{body.detail-refresh .reading-prose{max-width:none!important;font-size:11pt}body.detail-refresh .reading-prose img{max-height:80vh!important;break-inside:avoid}body.detail-refresh .reading-toc-toggle{display:none!important}body.detail-refresh .reading-contents{display:block!important;max-height:none!important}}



/* Layout review, 2026-11-04: retain template identity without conflicting image placement. */
body.detail-refresh.layout-build #detail-image{align-self:start;top:calc(var(--sticky-header-height,80px) + 20px);object-fit:contain;min-height:0}
body.detail-refresh.layout-harvest .detail-header>#detail-image{height:100%;max-height:none;align-self:stretch}
body.detail-refresh.layout-harvest .detail-header::after{background:linear-gradient(90deg,#142518f5,#142518d9 55%,#14251855)}
body.detail-refresh.article-view .detail-route.reading-contents,
body.detail-refresh.article-view .reading-toc-toggle:has(+.detail-route.reading-contents){display:none!important}
body.detail-refresh.article-view .detail-layout>aside.reading-contents{display:block!important;white-space:normal;max-height:340px!important;overflow-y:auto;overflow-x:hidden}
body.detail-refresh.article-view .detail-layout>aside.reading-contents a{white-space:normal;flex:none;max-width:100%}
body.detail-refresh .reading-prose :is(p,ul,ol){text-wrap:pretty}
body.detail-refresh .reading-prose :is(table,pre){scrollbar-width:thin}
body.detail-refresh .reading-prose :is(img,figure){scroll-margin-top:calc(var(--sticky-header-height,80px) + 20px)}
body.detail-refresh :is(.article-cover,.reading-restored-cover,.detail-cover):has(>img[src$=".png"])>img{object-fit:contain;background:var(--wash,var(--soft,transparent))}
@media(min-width:901px){
 body.detail-refresh.layout-build .detail-header>#detail-image{height:280px;padding:12px;object-fit:cover}
}
@media(max-width:760px){
 body.detail-refresh.article-view .detail-layout>aside.reading-contents{display:none!important;max-height:280px!important}
 body.detail-refresh.article-view .detail-layout>aside.reading-contents.is-expanded{display:block!important}
 body.detail-refresh.layout-harvest .detail-header{display:flex;flex-direction:column;min-height:0;background:#263922}
 body.detail-refresh.layout-harvest .detail-header::after{display:none}
 body.detail-refresh.layout-harvest .detail-header>#detail-image{position:static;inset:auto;order:-1;z-index:auto;width:100%;height:240px;min-height:0;object-fit:cover;align-self:stretch}
 body.detail-refresh.layout-harvest .detail-copy{width:100%;padding:26px 22px 28px}
 body.detail-refresh.layout-harvest main h1{font-size:clamp(30px,8.3vw,38px);max-width:100%}
 body.detail-refresh.layout-harvest #detail-summary{font-size:15px;line-height:1.8}
 body.detail-refresh.layout-ecology .detail-header>#detail-image{order:-1;width:100%;height:240px;object-fit:cover;border-radius:18px;border-width:0}
 body.detail-refresh.layout-dashboard .detail-header{grid-template-columns:minmax(0,1fr);gap:16px;padding:20px}
 body.detail-refresh.layout-dashboard .detail-header>#detail-image{grid-column:1;grid-row:1;width:100%;height:240px;min-height:0;object-fit:cover;border-radius:12px;border-width:0;align-self:start}
 body.detail-refresh.layout-dashboard #detail-kicker{grid-column:1;grid-row:2;justify-self:start;max-width:100%}
 body.detail-refresh.layout-dashboard .detail-header h1{grid-column:1;grid-row:3;margin:0}
 body.detail-refresh.layout-dashboard #detail-summary{grid-column:1;grid-row:4;margin:0}
 body.detail-refresh.layout-dashboard .detail-actions{grid-column:1;grid-row:5;margin-top:0}
 body.detail-refresh.layout-dashboard .photo-credit{grid-column:1;grid-row:6;margin-top:0}
 body.detail-refresh .reading-prose blockquote{padding:16px 18px;margin-inline:0}
 body.detail-refresh .reading-prose :is(ul,ol){padding-left:1.3em}
 body.detail-refresh :is(.article-byline,.detail-meta){display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:11px;line-height:1.7;margin-block:12px 18px}
 body.detail-refresh .manual-heading{padding-block:16px}
 body.detail-refresh .manual-detail-title{padding-block:16px;gap:12px}
 body.detail-refresh .manifesto-top>aside{margin-top:20px;padding-top:0}
 body.detail-refresh .manifesto-top>aside>.overline{display:none}
}
