.public-site-footer {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    min-height: 50px;
    padding: 14px 0;
    border-top: 1px solid #d5e0e6;
    background: #fff;
    box-shadow: 0 -3px 12px rgba(16, 59, 76, .1);
    color: #506572;
    font: 700 13px/1.6 Arial, sans-serif;
}
.public-footer-content { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 24px; }
.public-site-footer span { margin: 0; }
@media (max-width: 600px) {
    .public-footer-content { justify-content: center; text-align: center; }
}
/* The native mobile auth shell has page padding; extend the background to its edges. */
.mobile-auth-page .public-site-footer { width: calc(100% + 28px); margin: 24px -14px 0; }
