/* Shared public shell; opts in only through the ms-theme root. */
.ms-public-links,.ms-public-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; }
.ms-header a:not(.ms-button):not(.ms-wordmark),.ms-public-footer a:not(.ms-wordmark) { color:var(--ms-ink); text-underline-offset:5px; }
.ms-header a:not(.ms-button):not(.ms-wordmark) { text-decoration:none; font-size:.875rem; }
.ms-header a[aria-current],.ms-header a:not(.ms-wordmark):hover { text-decoration:underline; }
.ms-header .ms-nav { gap:24px; }
.ms-public-footer { margin-top:80px; border-top:1px solid var(--ms-line); padding:40px 0 24px; }
.ms-footer-top { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:24px; margin-bottom:28px; }
.ms-footer-top nav { display:flex; flex-wrap:wrap; gap:20px; }
.ms-footer-top nav a { display:inline-flex; align-items:center; min-height:44px; }
.ms-footer-bottom { margin-top:24px!important; padding-top:24px; border-top:1px solid var(--ms-line); font-size:.875rem; }
@media(max-width:950px) { .ms-public-links { order:3; flex-basis:100%; justify-content:center; gap:16px 24px; } }
@media(max-width:650px) {
 .ms-header .ms-nav { gap:12px; }
 .ms-public-actions { gap:12px; }
 .ms-header .ms-wordmark { font-size:25px; }
 .ms-header .ms-wordmark svg { width:20px; }
 .ms-public-links { justify-content:flex-start; }
 .ms-public-footer { margin-top:56px; }
}
@media(max-width:380px) { .ms-public-actions { flex-basis:100%; justify-content:space-between; } }
