/* Shared geometry for the public site and account entry headers. */
:root { --site-header-height: 4.75rem; --site-logo-width: 8.8rem; --site-header-gutter: 3rem; }
.public-header-inner,
.auth-shell .auth-topbar {
    width: min(calc(100% - var(--site-header-gutter)), 75rem);
    min-height: var(--site-header-height);
    max-width: none;
    margin-inline: auto;
    padding: 0;
    gap: 1rem;
}
.public-header-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
}
.public-header-actions { justify-self: end; }
.site-brand {
    display: inline-flex;
    align-items: center;
    justify-self: start;
    flex: none;
    min-height: 44px;
    border-radius: var(--radius-control);
    text-decoration: none;
}
.site-brand img { display: block; width: var(--site-logo-width); height: auto; }
.site-brand .site-brand-dark,
:root[data-theme="dark"] .site-brand .site-brand-light { display: none; }
:root[data-theme="dark"] .site-brand .site-brand-dark { display: block; }
@media (min-width: 901px) {
    html { scrollbar-gutter: stable; }
}
@media (max-width: 900px) {
    .public-header-inner { display: flex; justify-content: space-between; }
}
@media (max-width: 680px) {
    :root { --site-header-height: 4.25rem; --site-logo-width: 7.2rem; --site-header-gutter: 2rem; }
    .public-header-inner, .auth-shell .auth-topbar { gap: .5rem; }
}
@media (max-width: 370px) {
    :root { --site-logo-width: 6.4rem; }
    .public-header-actions { gap: .125rem; }
    .public-login svg { display: none; }
}
