/* Reader and daily edition: shared light/dark tokens, no decorative motion. */
[hidden]{display:none!important}
.story.is-read .story-index::after{content:' ✓';color:var(--cyan)}
#network-status{scroll-margin-top:calc(var(--header-h) + 20px)}
:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
.catalog-card{padding:28px 0;border-bottom:1px solid var(--line)}
.catalog-card h2{font-size:clamp(25px,3vw,34px);line-height:1.25;margin:14px 0}
.catalog-card h2 a{color:var(--text);text-decoration:none}
.catalog-card p{font-size:19px;line-height:1.7;max-width:65ch;color:var(--muted)}
.catalog-meta,.catalog-actions{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;font-size:16px}
.catalog-meta{color:var(--muted)}.catalog-actions{margin-top:16px}
.catalog-actions a,.reader-copy,.follow-host,.resume-link,.preferences button{min-height:44px;display:inline-flex;align-items:center;font-size:16px;letter-spacing:0;text-transform:none}
.primary-link{font-weight:650}
.catalog-tools{padding:24px 0;border-block:1px solid var(--line);display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.catalog-tools input[type=search]{padding:12px 16px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;font:inherit;width:min(100%,390px)}
.follow-filter{display:flex;gap:10px;align-items:center;font-size:16px}.follow-filter input{width:20px;height:20px;accent-color:var(--cyan)}
.catchup-panel,.preferences{padding:28px 0;border-block:1px solid var(--line)}
.catchup-panel h2,.preferences h2{font-size:28px;letter-spacing:-.025em;line-height:1.25;margin:0 0 14px}
.catchup-item{display:flex;flex-direction:column;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none}
.catchup-item strong{font-size:19px;color:var(--text)}.catchup-item span{font-size:15px;color:var(--muted)}
.preferences{margin-top:32px}.preferences p{font-size:17px;color:var(--muted)}
#topic-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
.preferences button,.follow-host,.reader-copy{border:1px solid var(--line);border-radius:8px;padding:10px 16px;background:var(--surface);color:var(--cyan);cursor:pointer;transition:background .15s}
.preferences button[aria-pressed=true],.follow-host[aria-pressed=true]{background:var(--cyan-soft);border-color:var(--cyan)}
.reader-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;border-block:1px solid var(--line);padding:20px 0;margin-bottom:28px}
.reader-toolbar>div{display:grid;gap:6px;flex:1;min-width:160px}.reader-toolbar label{font-size:14px;color:var(--muted)}
.reader-toolbar progress{width:100%;height:6px;accent-color:var(--cyan)}
.reader-host{font-size:17px;color:var(--muted)}
.chapter-index{width:100%;margin-top:16px}.chapter-index summary{cursor:pointer;color:var(--cyan);font-size:16px;min-height:44px}
.chapter-index nav{display:grid;gap:4px;max-height:55vh;overflow:auto;padding-right:10px}.chapter-index a{font-size:15px;line-height:1.5;display:block}
.recap-story .recap-quickscan{background:var(--cyan-soft);padding:24px!important;border-radius:10px}
.recap-quickscan li{margin:12px 0}.full-recap-section{border-bottom:1px solid var(--line);padding-block:32px!important;scroll-margin-top:calc(var(--header-h) + 24px)}
#key-points{scroll-margin-top:calc(var(--header-h) + 24px)}
.full-recap-section h2{margin-bottom:24px}.full-recap-section p{margin:0 0 20px}
.reader-note{border-left:3px solid var(--line);padding-left:20px}.recap-closing{margin-block:32px}.related-recaps{padding-top:24px;border-top:1px solid var(--line)}
.recap-meta a,.recap-meta button{white-space:normal;overflow-wrap:anywhere}.recap-aside{align-self:start}
@media(max-width:760px){.catalog-tools{display:grid}.catalog-card p{font-size:18px}.catalog-meta{font-size:15px}.reader-toolbar{display:grid;grid-template-columns:1fr}.recap-story .recap-quickscan{padding:20px!important}.recap-article li{font-size:18px;line-height:1.8}.chapter-index nav{max-height:40vh}.recap-aside{display:block!important}.recap-hero,.recap-meta{min-width:0}.edition-head{display:block}.catchup-panel h2,.preferences h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
