/* Navigation revision: editorial content and art remain unchanged. */
:root{--header-height:76px}
html{scroll-padding-top:calc(var(--header-height) + 18px)}
.masthead{position:sticky;top:0;height:var(--header-height);z-index:20;box-shadow:0 2px 0 #17182408}
.masthead nav a[aria-current=page]{box-shadow:inset 0 -3px var(--blue);font-weight:750}
.masthead nav button{min-height:44px;padding:10px 14px;background:var(--ink);color:var(--paper)}
.masthead nav{gap:20px}.masthead .brand{font-size:30px}
main:focus{outline:0}.is-reading{padding-bottom:76px}
.marginal{top:calc(var(--header-height) + 25px)}
.filter-summary{display:flex;justify-content:space-between;align-items:center;padding:5px 3.5%;gap:16px;border-bottom:1px solid var(--line);font-size:12px;min-height:50px}
.filter-summary p{margin:0}.filter-summary button{border:0;background:none;text-decoration:underline;min-height:44px;font-size:12px;flex-shrink:0}
.folio-nav{border-top:0;background:var(--paper)}
.thumbs{grid-template-columns:repeat(auto-fit,minmax(135px,1fr))}.thumb b{font-size:14px;line-height:1.3;font-weight:600}.thumb[aria-current=true]{background:#e8e7f7}.thumb span,.thumb b{padding-left:7px;padding-right:7px}
.thumb:hover img{filter:brightness(1.06)}
.index-entry img,.thumb img,.related img{height:auto;aspect-ratio:3/2;object-fit:cover}
.resume{margin:26px 3.5% 0;padding:17px 20px;border:1px solid var(--blue);border-left:6px solid var(--blue);display:flex;align-items:center;gap:16px}
.resume a{flex:1;text-decoration:none}.resume span{display:block;font-size:10px;letter-spacing:1px;color:var(--blue)}.resume b{font:23px/1.3 var(--serif);display:block;margin-top:6px}.resume button{min-width:44px;min-height:44px;background:none;border:0;font-size:24px}
.index-intro{font-size:14px;max-width:490px}.index-entry:hover{background:#eee9dc}.index-entry:focus-visible{outline-offset:-3px}
dialog{overscroll-behavior:contain}body:has(dialog[open]){overflow:hidden}.dialog-top{position:sticky;top:-30px;background:var(--paper);z-index:1;padding:10px 0}.dialog-top button{font-weight:650}.source-story{font:23px/1.3 var(--serif);border-top:1px solid var(--line);padding-top:20px}
#source-content ol{padding-left:24px}#source-content li{padding:15px 0;overflow-wrap:anywhere;font-size:14px}#source-content li p{font-size:13px;line-height:1.75;white-space:pre-line;color:#504c56}
.source-ref{font-size:12px;padding:8px 5px;border-radius:3px;background:#173ce70b}.source-ref:hover{background:var(--yellow)}
.large-text .prose>p{font-size:22px}.large-text .prose h2{font-size:32px}
#reading-dock{position:fixed;bottom:0;left:0;right:0;z-index:25;background:var(--ink);color:var(--paper);padding-bottom:env(safe-area-inset-bottom)}
.read-progress{height:3px;background:#50505b}.read-progress i{display:block;height:100%;background:var(--yellow);width:0}
#reading-dock nav{display:flex;align-items:center;gap:18px;max-width:1250px;margin:auto;padding:9px 4%;min-height:62px}
#reading-dock a,#reading-dock button{font-size:13px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border:0;background:none;color:inherit;text-decoration:none;white-space:nowrap}
#reading-dock .dock-back{gap:8px;padding-left:0}#reading-dock .dock-next{margin-left:auto;background:var(--yellow);color:var(--ink);gap:15px;font-weight:700}
.dock-count{font-size:11px;letter-spacing:1px;color:#ddd6cc}#reading-dock #text-size{font-size:19px;border:1px solid #6d6c77;padding:5px 10px}#text-size span{font-size:12px}#text-size[aria-pressed=true]{outline:2px solid var(--yellow)}
.reading-sequence{padding:35px 4%;max-width:1250px;margin:auto;border-top:1px solid var(--ink)}.reading-sequence>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.reading-sequence a{text-decoration:none;padding:20px;background:#ece6d9}.reading-sequence a:last-child{background:var(--yellow)}.reading-sequence span{font-size:11px;letter-spacing:1px}.reading-sequence h3{font:30px/1.15 var(--serif);margin:14px 0}.reading-sequence a p{font-size:11px;margin:0}
@media(max-width:1000px){.issue-meta{display:none}.masthead nav{gap:18px}}
@media(max-width:700px){
 :root{--header-height:64px}.masthead{padding:0 4%;gap:10px}.masthead .brand{font-size:25px;letter-spacing:-1.6px}.masthead .brand b{font-size:17px}.masthead nav{gap:12px;font-size:11px}.masthead nav>a:not(.nav-cover){display:flex}.masthead nav>.nav-cover{display:none}.masthead nav button{padding:8px 10px;font-size:11px}
 .toolbar{padding:14px 5% 12px}.filters{display:block}.filters .eyebrow{margin-bottom:10px}.filters label{display:flex;gap:12px;align-items:center}.filters select{max-width:none;flex:1;min-width:0}.routes{flex-wrap:nowrap;overflow-x:auto;padding:3px 3px 7px;margin:10px -3px 0;scrollbar-width:thin}.routes button{flex-shrink:0}.filter-summary{padding:3px 5%;font-size:11px;gap:10px}.filter-summary p{line-height:1.5}.filter-summary button{font-size:11px;max-width:115px;text-align:right}
 .folio-nav{padding:4px 5%;position:relative}.folio-nav button{font-size:12px}.folio-nav p{max-width:none;font-size:9px}.spread-copy{padding:25px 6% 30px}.spread-copy h1{font-size:37px}.thumbs{padding-bottom:24px}.thumb{flex-basis:180px}.thumb b{font-size:14px}.thumb span{font-size:10px}
 .reader-top{gap:12px}.reader-top span{max-width:160px;text-align:right;line-height:1.5}.reader-heading h1{font-size:39px}.reader-grid{padding-bottom:35px}.reader-opening{border-top:0}.reader-heading{padding-top:23px}
 #reading-dock nav{gap:5px;padding:6px 4%;min-height:62px}#reading-dock a,#reading-dock button{font-size:11px;padding:8px 10px}#reading-dock .dock-back{gap:5px}#reading-dock .dock-next{gap:7px;padding:8px 12px}.dock-count{display:none}#reading-dock #text-size{font-size:17px;padding:5px 8px}.is-reading{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.large-text .prose>p{font-size:21px}
 .reading-sequence{padding:28px 6%}.reading-sequence>div{grid-template-columns:1fr;gap:12px}.reading-sequence h3{font-size:26px}.reading-sequence a{padding:20px}.resume{margin:20px 5% 0;padding:14px}.resume b{font-size:21px}
 dialog{max-height:88dvh}.dialog-top{top:-20px}.index-entry{grid-template-columns:25px 60px 1fr;gap:10px}.index-entry h3{font-size:19px}.index-entry img{width:60px}.index-entry p{line-height:1.5;font-size:9px}.index-entry{padding:17px 0}#source-dialog h2{font-size:34px}
}
@media(max-width:360px){.masthead .brand{font-size:22px}.masthead nav{gap:8px}.masthead nav button{padding:8px}.brand b{display:none}.dock-back span{display:none}#reading-dock .dock-back{min-width:36px}}
@media print{#reading-dock,.reading-sequence,.resume{display:none!important}.is-reading{padding:0}}
