/* Local icon fonts and existing SVGs share stable, accessible control sizing. */
.fa { font-family: FontAwesome; font-style: normal; font-weight: normal; line-height: 1; text-rendering: auto; -webkit-font-smoothing: antialiased; }
.c-member-link, .c-nav-more > button, .c-drawer nav > a, .c-nav-more-menu section > a { display: inline-flex; align-items: center; gap: 9px; }
.c-member-link > .fa, .c-drawer nav > a > .fa, .c-nav-more-menu section > a > .fa { width: 18px; flex: 0 0 18px; text-align: center; font-size: 16px; }
.c-drawer nav > a > .fa, .c-nav-more-menu section > a > .fa { color: var(--color-text-muted); }
.c-drawer nav > a:has(> .fa) { display: grid; grid-template-columns: 18px minmax(0, 1fr) auto; justify-content: normal; }
.c-nav-list a > .fa { margin-inline-end: 7px; }
.c-header .c-icon-btn { flex-shrink: 0; }
@media (max-width: 600px) {
  .c-member-link > span { display: none; }
  .c-member-link { width: 34px; height: 38px; flex: 0 0 34px; justify-content: center; }
  .c-header-actions { gap: 6px; }
  .c-header .c-logo { min-width: 0; }
}
.c-icon-btn > .fa, .c-breaking-controls button > .fa, .c-gallery-navbtn > .fa { display: inline-block; width: 20px; font-size: 18px; text-align: center; }
.c-breaking-controls button { display: inline-flex; align-items: center; justify-content: center; }
.c-breaking-controls button > .fa { color: inherit; font-size: 14px; }
.home-slider-controls .c-icon-btn > .fa { font-size: 15px; }
.c-footer h3 { display: flex; align-items: center; gap: 8px; }
.c-footer h3 > .fa { font-size: 15px; color: inherit; }
.c-footer-social > a { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; flex: 0 0 36px; border: 1px solid var(--color-border); border-radius: 6px; }
.c-footer-social > a > svg { display: block; width: 18px; height: 18px; flex: 0 0 18px; fill: currentColor; }
.portal-article-share button[data-native-share] { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; }
.portal-article-share button[data-native-share] > .fa { width: 16px; font-size: 16px; text-align: center; flex: 0 0 16px; }
.c-icon-btn, .c-footer-social > a, .portal-article-share > a, .portal-article-share > button { transition: color 150ms ease, background-color 150ms ease, border-color 150ms ease; }
:is(.c-icon-btn, .c-footer-social > a, .portal-article-share > a, .portal-article-share > button):focus-visible { outline: 2px solid var(--color-brand); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .c-icon-btn, .c-footer-social > a, .portal-article-share > a, .portal-article-share > button { transition: none; } }
