/* Shop entrance palette. Personal themes remain inside the signed-in apps. */
:root[data-zg-login][data-zg-theme] body.zg-auth-page {
    --primary: var(--zg-accent);
    --primary-600: var(--zg-accent);
    --primary-700: var(--zg-accent-strong);
    --ring: var(--zg-border-strong);
    --text: var(--zg-text);
    --muted: var(--zg-muted);
    color: var(--zg-text) !important;
    background: linear-gradient(145deg, var(--zg-page-bg-alt), var(--zg-page-bg) 60%) !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page :is(.card, .login-container) {
    background: var(--zg-surface) !important;
    border-color: var(--zg-border) !important;
    box-shadow: var(--zg-shadow) !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page .art {
    background: linear-gradient(160deg, var(--zg-accent-soft), var(--zg-surface)) !important;
    border-color: var(--zg-border) !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page :is(.club, .pill, .role-btn, .page-foot a, .link, .register-link a, .login-link, .admin-link a) {
    color: var(--zg-accent) !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page :is(.title, .label, .form-group label, .remember) {
    color: var(--zg-text) !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page :is(.art-foot, .page-foot) {
    color: var(--zg-muted) !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page :is(.illustration, .login-banner) {
    background: var(--zg-surface-soft) !important;
    border-color: var(--zg-border) !important;
    box-shadow: var(--zg-shadow-soft) !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page :is(.pill, .role-toggle) {
    background: var(--zg-surface-soft) !important;
    border-color: var(--zg-border) !important;
    box-shadow: none !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page :is(.role-float, .role-btn[aria-pressed="true"]) {
    background: var(--zg-surface) !important;
    color: var(--zg-accent-strong) !important;
    border-color: var(--zg-border-strong) !important;
    outline-color: var(--zg-border-strong) !important;
    box-shadow: var(--zg-shadow-soft) !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page :is(input[type="text"], input[type="password"]) {
    color: var(--zg-text) !important;
    background: var(--zg-surface) !important;
    border-color: var(--zg-border) !important;
    box-shadow: none !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page :is(input[type="text"], input[type="password"]):focus {
    border-color: var(--zg-accent) !important;
    box-shadow: 0 0 0 3px var(--zg-accent-soft) !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page input[type="checkbox"] {
    accent-color: var(--zg-accent) !important;
    box-shadow: none !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page :is(.submit, .btn-login) {
    color: var(--zg-on-accent) !important;
    background: var(--zg-accent) !important;
    border-color: var(--zg-accent) !important;
    box-shadow: var(--zg-shadow-soft) !important;
}
:root[data-zg-login][data-zg-theme] body.zg-auth-page :is(.submit, .btn-login):hover {
    background: var(--zg-accent-strong) !important;
}
