/* Shared reading safeguards; loaded after page-specific styles. */
html{scroll-padding-bottom:calc(var(--measured-bottom-bar,0px) + 16px)}
body main :is(section,h2,h3,h4)[id],
body .cancer-guide .article :is(h2,h3,h4)[id],
#understanding-your-stage,
main :is(a,button,input,select,summary,[tabindex]){
 scroll-margin-top:calc(var(--measured-header,var(--header)) + var(--local-contents-offset,0px) + 20px);
 scroll-margin-bottom:16px;
}
.reading>.article,.contact-panel-copy,.medicine-group li{min-width:0}
main :is(h1,h2,h3,h4),.medicine-name,.combination-guide,.cancer-list a{overflow-wrap:anywhere}
.table-scroll{max-width:100%;overscroll-behavior-x:contain}
.table-scroll:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
/* A stronger inside edge preserves the agreed restrained boxed-control design. */
body :is(.search-field,.btn.secondary,.filter,.map-switch button,.service-filter-label select):focus-visible{
 outline:3px solid var(--ink);outline-offset:-3px;
}
body :is(.btn:not(.secondary),.filter[aria-pressed=true]):focus-visible{
 outline:3px solid white;outline-offset:-5px;
}
.alphabet :is(a,span){width:44px;min-width:44px;min-height:44px;height:auto}
@media(max-width:760px){
 .toc.contents-enhanced summary,.guide-topic-nav.contents-enhanced summary{height:auto}
 .toc.contents-enhanced .toc-label,.guide-topic-nav.contents-enhanced .toc-label{white-space:normal}
 .mobile-bar{height:auto;min-height:calc(60px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}
 .mobile-bar a{min-height:60px;padding:8px;line-height:1.3;text-align:center}
 #primary-nav{bottom:var(--measured-bottom-bar,60px)}
 .footer{padding-bottom:calc(var(--measured-bottom-bar,60px) + 30px)}
 .contact-panel-action{max-width:100%;min-width:0}
 .contact-panel-value,.footer-contact span{white-space:normal;overflow-wrap:anywhere}
}
@media(forced-colors:active){
 body :is(.search-field,.btn,.filter,.map-switch button,.service-filter-label select,.table-scroll):focus-visible{outline-color:Highlight}
}

/* Zoom and landscape screens must retain space for the article itself. */
@media(max-width:760px) and (max-height:500px){
 .site-header{position:relative}
 body .reading .toc.contents-enhanced,.reading:has(#other-lines) .toc.contents-enhanced,.guide-topic-nav.contents-enhanced{position:static}
 .mobile-bar{position:static}
}
