/* Accountants shell primitives; the Xreference auth theme is retained locally. */
.xa-skip-link { position: absolute; top: .75rem; left: -9999px; z-index: 9999; padding: .7rem 1rem; color: #fff; background: #0b4f9c; border-radius: .35rem; }
.xa-skip-link:focus { left: .75rem; }
.xa-brand { display: inline-flex; align-items: center; gap: .9rem; }
.xa-brand-context { padding-left: .9rem; color: #17365f; border-left: 1px solid rgba(23, 54, 95, .24); font-size: .88rem; font-weight: 800; letter-spacing: .08em; line-height: 1; text-transform: uppercase; }
.xa-footer-brand { flex-wrap: wrap; gap: .85rem; margin-bottom: 1.25rem; }
.xa-footer-brand img { margin: 0; }
.xa-footer-brand span { padding-left: .85rem; color: #9ec3ec; border-left: 1px solid rgba(158, 195, 236, .35); font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ps-auth-page [hidden] { display: none !important; }
.xa-auth-action-link { display: block; text-align: center; text-decoration: none; }
.xa-auth-action-link:hover, .xa-auth-action-link:focus { color: #fff; text-decoration: none; }
.ps-auth-page :focus-visible { outline: 3px solid #2d96ff; outline-offset: 3px; }
@media (max-width: 991.98px) { .xa-brand-context { font-size: .76rem; } }
@media (max-width: 575.98px) {
    .xa-brand { gap: .55rem; }
    .xa-brand-context { padding-left: .55rem; font-size: .68rem; letter-spacing: .04em; }
    .xa-footer-brand { align-items: flex-start; flex-direction: column; }
    .xa-footer-brand span { padding: 0; border-left: 0; }
}
