/* Shared reading controls. Each publication owns its layout in its own stylesheet. */
@font-face{font-family:'Editorial Serif';src:url('./EditorialSerif.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
.brand-descriptor{display:block;color:var(--muted);font-size:11px;font-weight:500;letter-spacing:0;margin-top:2px}
.brand-name{display:block;line-height:1.3}
.header-inner{gap:24px}.main-nav a{white-space:nowrap}
.preview-bar{font-size:12px;background:#edf0ed;color:#49554f;border-bottom:1px solid #dbe1dc;padding:6px 16px}
.preview-bar a{margin-left:8px;font-weight:600}
.reading-progress{position:fixed;top:0;left:0;right:0;z-index:80;display:block;width:100%;height:3px;border:0;appearance:none;background:transparent;pointer-events:none;color:var(--accent)}
.reading-progress::-webkit-progress-bar{background:transparent}.reading-progress::-webkit-progress-value{background:var(--accent)}.reading-progress::-moz-progress-bar{background:var(--accent)}
.article-header .meta{font-size:13px}.article-header .lead{line-height:1.75}
.article-header .review-note{padding:12px 16px;background:transparent;border-width:1px 0;font-size:13px}
.article-header .byline{font-size:14px}
.toc{top:28px}.toc a{min-height:44px;display:flex;align-items:center;text-decoration:none;border-left:2px solid transparent;padding:8px 12px;line-height:1.5}
.toc-disclosure>summary{font-size:15px;font-weight:700;min-height:48px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none}.toc-disclosure>summary::-webkit-details-marker{display:none}.toc-disclosure>summary:after{content:'+';font-weight:400;font-size:22px}.toc-disclosure[open]>summary:after{content:'−'}.toc-disclosure>nav{padding-top:12px}
.toc ol{list-style:none;padding:0;display:grid;gap:4px}.toc li{margin:0}
.toc a[aria-current=location]{color:var(--accent);border-left-color:var(--accent);background:var(--soft);font-weight:650}
.toc button{min-height:48px;display:flex;align-items:center;padding:8px 12px;border:1px solid var(--line);justify-content:center;font-size:14px}
.reading-toolbar{display:flex;gap:8px;align-items:center;padding:16px 0 0;border-top:1px solid var(--line);flex-wrap:wrap;margin-top:8px}
.reading-toolbar button{min-width:48px;min-height:48px;background:var(--surface);border:1px solid var(--line);padding:8px 12px;border-radius:3px;font-size:14px}
.reading-toolbar [aria-pressed=true]{border-color:var(--accent);background:var(--soft);color:var(--accent)}
.reading-toolbar>span{font-size:12px;color:var(--muted);margin-right:4px}
.article-prose{line-height:1.9}body[data-page=article] .prose.article-prose{font-size:var(--reading-size,18px)}.article-prose p{max-width:70ch}
.article-prose>section{scroll-margin-top:28px}.article-prose section>h2{line-height:1.45}
.article-prose .source-list{font-size:15px}.article-prose .source-list a{display:inline-block;padding:6px 0}
.article-prose .summary{border-left:0;border-top:2px solid var(--accent)}
.article-prose .summary>span{font-size:13px;letter-spacing:.03em;font-weight:700;color:var(--accent)}
.article-prose .summary p{font-size:17px;line-height:1.8}
.article-prose .revision{padding-top:24px;border-top:1px solid var(--line)}
.article-prose .revision h2{margin:0;font-size:18px}.article-prose .revision p{font-size:14px;color:var(--muted)}
.article-prose .related-list>a{display:block;padding:16px 0;border-bottom:1px solid var(--line);min-height:48px}
.table-scroll:focus-visible{outline-offset:3px}
.card-body h3{line-height:1.45}.meta span+span:before{content:'·';margin-right:12px;color:var(--muted)}
.filter-row button,.search-form button{min-height:48px}
.site-footer .brand-descriptor{display:none}.footer-bottom{font-size:12px}
@media(max-width:1000px) and (min-width:761px){.header-inner{flex-wrap:wrap;padding-top:16px;gap:4px}.main-nav{margin-left:auto;padding-bottom:8px}.brand-descriptor{font-size:10px}}
@media(max-width:760px){.brand-descriptor{display:none}.brand-name{font-size:19px}.header-inner{gap:12px}.main-nav.is-open{display:flex}.preview-bar{font-size:11px;padding:6px 12px}.preview-bar a{white-space:nowrap}.article-header h1{font-size:32px}.reading-toolbar{margin-top:0}.toc{padding:20px}.article-prose .summary{padding:24px}.article-prose{line-height:1.9}.article-prose .summary p{font-size:16px}}
@media print{.reading-progress,.reading-toolbar,.brand-descriptor{display:none!important}.article-prose{font-size:11pt!important}.article-prose .summary{background:none}}
