/* Native article reader, scoped to article content and the existing Penfield tokens. */
.penfield-native-article .reading-layout{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,3fr);gap:clamp(32px,5vw,72px);align-items:start;--penfield-reader-offset:24px}
.penfield-native-article .reading-sidebar{position:sticky;top:var(--penfield-reader-offset);max-height:calc(100svh - var(--penfield-reader-offset) - 24px);overflow:auto;min-width:0;padding:0 16px 8px 0}
.penfield-native-article .reading-main{width:100%;max-width:68ch;min-width:0}
.reader-outline{border:0;margin:0 0 28px;font:var(--penfield-size-meta)/1.65 var(--penfield-font-ui)}
.reader-outline summary{color:var(--penfield-navy);font-weight:500;margin-bottom:16px;cursor:pointer}
.reader-outline nav{position:static;display:block;width:auto;height:auto;border:0;background:transparent;padding:0}
.reader-outline ol{list-style:none;margin:0;padding:0}
.reader-outline li{margin:0 0 10px}
.reader-outline a{position:relative;display:block;padding-left:15px;color:var(--penfield-navy);opacity:.72;text-decoration:none;overflow-wrap:anywhere}
.reader-outline .reader-outline-level-3 a{margin-left:14px}
.reader-outline a[aria-current="location"]{opacity:1;font-weight:500}
.reader-outline a[aria-current="location"]::before{content:'';position:absolute;top:.6em;left:0;width:5px;height:5px;background:var(--penfield-olive);border-radius:50%}
.reader-outline a:hover,.reader-outline a:focus-visible{opacity:1}
.reader-font-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font:var(--penfield-size-meta)/1.5 var(--penfield-font-ui)}
.reader-font-controls>span:first-child{flex-basis:100%;margin-bottom:2px;color:var(--penfield-secondary)}
.reader-font-controls button{min-height:40px;min-width:40px;border:1px solid var(--penfield-line);padding:7px 10px;background:transparent;color:var(--penfield-navy);font:inherit;cursor:pointer}
.reader-font-controls button:disabled{opacity:.5;cursor:default}
.reader-font-controls button[hidden]{display:none}
.reader-outline a:focus-visible,.reader-font-controls button:focus-visible{outline:2px solid var(--penfield-olive);outline-offset:3px}
.penfield-native-article .article-body,.penfield-native-article .article-body :is(p,li,blockquote,td,th){font-size:var(--penfield-reader-font-size,var(--penfield-size-body))}
.penfield-native-article .article-body :is(h2,h3,[data-reader-heading]){scroll-margin-top:calc(var(--penfield-reader-offset) + 16px);text-wrap:wrap}
.penfield-native-article .article-body h2{font-size:calc(var(--penfield-reader-font-size,var(--penfield-size-body)) * 1.5)}
.penfield-native-article .article-body h3{font-size:calc(var(--penfield-reader-font-size,var(--penfield-size-body)) * 1.2)}
.penfield-native-article .article-body table{max-width:100%}
@media(min-width:901px){.reader-outline>summary{list-style:none;pointer-events:none}.reader-outline>summary::-webkit-details-marker{display:none}}
@media(max-width:900px){
 .penfield-native-article .reading-layout{display:block}
 .penfield-native-article .reading-sidebar{position:static;max-height:none;overflow:visible;padding:0 0 24px;border-bottom:1px solid var(--penfield-line);margin-bottom:32px}
 .reader-outline{margin-bottom:16px}.reader-outline summary{margin-bottom:0;padding:12px 0}.reader-outline[open] summary{margin-bottom:16px}
 .reader-font-controls>span:first-child{flex-basis:auto;margin:0 8px 0 0}
}
.penfield-native-article .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

@media(min-width:901px){
 .reader-font-controls{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:4px}
 .reader-font-controls>span:first-child{grid-column:1/-1}
 .reader-font-controls button{min-width:0;padding-inline:4px;white-space:nowrap}
 .reader-font-controls button[data-reader-size="reset"]{font-size:12px}
}
