/* Small, scoped repairs from the mobile audit; preserve existing component geometry. */
.top-supporter-heading{display:flex;flex-direction:row!important;align-items:center!important;justify-content:space-between;gap:12px!important}
.supporter-ticker-toggle{flex:0 0 auto;min-height:44px;padding:7px 10px;border:1px solid #ffffff55;border-radius:7px;background:transparent;color:#fff;font:600 .68rem var(--display);cursor:pointer}
.supporter-ticker-toggle:focus-visible,.team-ticker-toggle:focus-visible{outline:2px solid #3ff04a;outline-offset:3px}
.supporter-marquee:focus-within .supporter-track,.team-ticker-window:focus-within .team-ticker-track{animation-play-state:paused}
.is-motion-idle,.is-motion-idle *{animation-play-state:paused!important}
/* A full-width legend extended past the padded donation dialog on narrow screens. */
dialog fieldset{min-inline-size:0;max-width:100%}
dialog .donation-frequency legend,dialog .donation-currency legend{width:auto!important;max-width:100%}
dialog .donation-close,dialog .donation-back{min-width:44px;min-height:44px}
@media(hover:hover) and (pointer:fine){.supporter-marquee:hover .supporter-track{animation-play-state:paused}}
@media(max-width:850px){
 .topbar .nav{gap:3px 4px}
 .topbar .language-button{min-width:32px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
 .topbar a.header-social-icon{min-width:28px;min-height:44px}
 .topbar .nav-toggle{min-width:44px;min-height:44px}
 .topbar .nav-donate{min-height:44px}
 .team-ticker-toggle{min-height:44px}
 .hero-research-link,.btn-text{min-height:44px;display:inline-flex;align-items:center}
 .route-detail-close{min-width:44px;min-height:44px}
 .footer-contact-value[href]{display:inline-flex;align-items:center;min-height:44px}
}
@media(max-width:380px){
 .topbar .language-button{min-width:28px;padding-inline:2px}
 .topbar .nav-tools{gap:3px}
 .topbar .language-social-stack{gap:2px}
 .topbar .language-switch{gap:1px}
 .topbar .nav-toggle{min-width:36px}
 .top-supporter-heading{gap:8px!important}
 .top-supporter-label{font-size:.65rem}
 .supporter-ticker-toggle{max-width:105px;font-size:.62rem}
}
@media(max-width:350px){
 .topbar .nav{gap:3px 4px}
 .topbar .language-button{min-width:26px;padding-inline:1px}
 .topbar .nav-donate-label{font-size:.58rem;letter-spacing:0}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation:none!important;scroll-behavior:auto!important}
 .supporter-marquee,.team-ticker-window{overflow-x:auto;mask-image:none}
 .supporter-track[aria-hidden="true"],.team-ticker-group[aria-hidden="true"]{display:none}
 .supporter-track a[aria-hidden="true"]{display:none}
}
