:root{--preferred-text-scale:1}
.layout,.nav-sheet{--base-text-scale:1.15;--text-scale:calc(var(--base-text-scale) * var(--preferred-text-scale,1))}
.text-size-controls{display:flex;align-items:center;gap:2px;flex-shrink:0;padding:2px;border:1px solid var(--line);border-radius:4px}
.text-size-controls button{display:flex;align-items:center;justify-content:center;gap:1px;min-width:31px;min-height:29px;padding:3px 5px;border-radius:2px;font-size:12px;line-height:1;color:var(--muted)}
.text-size-controls button:last-of-type{font-size:14px}
.text-size-controls .text-size-value{min-width:53px;padding-inline:5px;font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap}
.text-size-controls button:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}
.text-size-controls button:hover:not(:disabled){color:var(--blue);background:var(--hover)}
.text-size-controls button:disabled{opacity:.35;cursor:default}
.text-size-controls span[aria-hidden]{font-size:11px}
.main-search input{height:auto;min-height:38px}
@media(max-width:920px){.text-size-controls{margin-left:auto;padding:0;gap:0}.text-size-controls button{min-width:36px;min-height:40px}.topbar .theme{margin-left:0}.topbar{gap:12px}}
@media(max-width:360px){.topbar{gap:7px}.text-size-controls button{min-width:32px}}
@media print{.text-size-controls{display:none}}
.reader-open .reader-title{font-size:calc(28px * var(--text-scale,1));line-height:1.35}
.reader-open .reader-source{font-size:calc(12px * var(--text-scale,1))}
.reader-open .reader-body{max-width:none;margin-inline:0}
.reader-open .precise-body p,.reader-open .precise-body li{max-width:100ch}
.progressive-reader>.reading-step:first-child h2{font-size:calc(14px * var(--text-scale,1))}
.progressive-reader>p.reader-lead{font-size:calc(17px * var(--text-scale,1));line-height:1.8;max-width:95ch}
.source-menu{border-top:1px solid var(--line)}
.source-menu>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;cursor:pointer;list-style:none;font-size:calc(11px * var(--text-scale,1));color:var(--muted)}
.source-menu>summary::-webkit-details-marker{display:none}
.source-menu>summary:after{content:'+'}
.source-menu[open]>summary:after{content:'−'}
.source-menu .channel-nav{padding-bottom:8px!important}
.source-menu-link{display:block;width:100%;text-align:left;font-size:calc(10px * var(--text-scale,1));padding:10px 9px;color:var(--muted)}
@media(max-width:920px){.reader-open .reader-title{font-size:calc(25px * var(--text-scale,1))}.progressive-reader>p.reader-lead{font-size:calc(16px * var(--text-scale,1))}}
.channel-nav .channel-trigger{font-size:calc(13px * var(--text-scale,1));min-height:42px}
.channel-panel .sidebar-section>summary{font-size:calc(11px * var(--text-scale,1))}
.article-meta .article-publisher{font-size:calc(11px * var(--text-scale,1));font-weight:650;color:var(--text);line-height:1.5}
.article-meta{flex-wrap:wrap}
.article-bottom:empty{display:none}
.reader-primary-actions{margin:0 0 22px;padding:0}
.reader-primary-actions a{display:inline-flex;align-items:center;min-height:36px;padding:8px 12px;font-size:calc(11px * var(--text-scale,1));line-height:1.5;border:1px solid var(--line);border-radius:4px;color:var(--blue)}
.reader-primary-actions a:hover{background:var(--hover);border-color:var(--blue)}
.funding-state-bar{display:flex;flex-wrap:wrap;gap:6px;padding:0 24px 10px}
.funding-state-bar button{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:7px 10px;border:1px solid var(--line);border-radius:4px;font-size:calc(10px * var(--text-scale,1));line-height:1.5;color:var(--muted)}
.funding-state-bar button:hover{background:var(--hover);color:var(--text)}
.funding-state-bar button.active{background:var(--bluefill);border-color:var(--blue);color:var(--blue)}
.funding-state-bar small{font-size:calc(9px * var(--text-scale,1));font-variant-numeric:tabular-nums;opacity:.8}
.funding-state-bar button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.channel-panel .funding-sidebar-states{grid-template-columns:1fr}
.channel-panel .funding-sidebar-states button{min-width:0}
.channel-panel .funding-sidebar-states small{flex-shrink:0}
#funding-state-help{margin:0;padding:0 24px 14px;font-size:calc(10px * var(--text-scale,1));line-height:1.65;color:var(--muted)}
@media(max-width:920px){.funding-state-bar{padding-inline:20px}.funding-state-bar button{min-height:44px;flex-grow:1;justify-content:center}#funding-state-help{padding-inline:20px}}

/* Larger labels with tighter spacing, preserving the A−/A+ preference. */
.topnav>button,.nav-more>summary{font-size:15px}
.channel-nav .channel-trigger{font-size:calc(14px * var(--text-scale,1));padding-block:8px;min-height:40px}
.channel-panel .sidebar-section>summary{font-size:calc(12px * var(--text-scale,1));padding-block:9px}
.channel-panel .source-tree>summary,.channel-panel .source-choice,.channel-panel .source-children .source-choice{font-size:calc(12px * var(--text-scale,1));line-height:1.45;padding-block:6px}
.channel-panel .source-choice small,.channel-panel .source-tree>summary small{font-size:calc(10px * var(--text-scale,1))}
.channel-panel .sidebar-fields{gap:9px;padding-bottom:10px}
.channel-panel .sidebar-fields label>span,.channel-panel .sidebar-fields .check-field{font-size:calc(11px * var(--text-scale,1))}
.channel-panel .source-search,.channel-panel select,.channel-panel input{font-size:calc(12px * var(--text-scale,1))}
.channel-panel .funding-sidebar-states{gap:1px;padding-bottom:7px}
.channel-panel .funding-sidebar-states button{font-size:calc(12px * var(--text-scale,1));line-height:1.4;padding:5px 7px;min-height:29px}
.channel-panel .funding-sidebar-states small{font-size:calc(10px * var(--text-scale,1))}
.funding-state-bar{gap:5px;padding-bottom:8px}
.funding-state-bar button{font-size:calc(12px * var(--text-scale,1));line-height:1.35;padding:6px 9px;min-height:32px;gap:6px}
.funding-state-bar small{font-size:calc(10px * var(--text-scale,1))}
#funding-state-help{padding-bottom:10px}
@media(min-width:921px){
 .main-search{padding-bottom:11px}
 .workspace-head.compact,.feed-head{padding-top:18px;padding-bottom:12px}
}
@media(max-width:920px){
 .channel-panel .source-search,.channel-panel .sidebar-fields input,.channel-panel .sidebar-fields select{font-size:calc(16px * var(--text-scale,1))}
 .channel-panel .funding-sidebar-states button{min-height:40px}
 .funding-state-bar button{min-height:44px}
}
