/* ==========================================================================
   Layout Login — _LayoutLoginApp.cshtml + _LayoutLogin.cshtml
   --------------------------------------------------------------------------
   Tokens da app-tokens.css; nessun hex hardcoded.
   - .auth-body-surface  -> _LayoutLoginApp (sfondo bianco)
   - .auth-body-muted    -> _LayoutLogin    (sfondo --ce-bg + footer)
   ========================================================================== */

html, body { height: 100%; margin: 0; padding: 0; }

body.auth-body-surface,
body.auth-body-muted {
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    min-height: 100vh;
}

body.auth-body-surface { background-color: var(--ce-surface); }
body.auth-body-muted   { background-color: var(--ce-bg); }

.auth-shell {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 24px 16px;
}

/* _LayoutLogin riserva spazio in basso per il footer fisso */
body.auth-body-muted .auth-shell { padding-bottom: 80px; }

.auth-card {
    background-color: var(--ce-surface);
    border-radius: 1rem;
    box-shadow: var(--ce-shadow-md);
    padding: 2.5rem;
    width: 100%;
    max-width: 460px;
}

#loader {
    display: none;
    position: fixed;
    inset: 0;
    background: var(--ce-bg-overlay);
    z-index: 9999;
}

#loader .text-center {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.auth-separator { display: flex; align-items: center; }

.auth-separator::before,
.auth-separator::after {
    content: "";
    flex: 1;
    border-bottom: 1px solid var(--ce-border-strong);
}

.auth-separator span {
    padding: 0 1rem;
    color: var(--ce-text-muted);
    font-size: 0.875rem;
}

/* Footer auth (presente solo in _LayoutLogin) */
.auth-footer {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 12px 16px;
    text-align: center;
    font-size: 0.8rem;
    color: var(--ce-text-muted);
    background: var(--ce-bg-overlay-soft);
    backdrop-filter: blur(6px);
    border-top: 1px solid var(--ce-border);
}

@media (display-mode: standalone) {
    .auth-footer { display: none; }
}

/* Sfondo per-cassa: URL iniettato dal plugin via --ce-auth-bg, classe auth-has-bg
   aggiunta da Login.cshtml quando ICassaEdilePlugin.msUrlSfondoLogin e' valorizzato. */
body.auth-body-muted.auth-has-bg {
    background-image: var(--ce-auth-bg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

/* Overlay translucido per garantire leggibilita' della card sopra qualsiasi immagine. */
body.auth-body-muted.auth-has-bg::before {
    content: "";
    position: fixed;
    inset: 0;
    background-color: rgba(255, 255, 255, 0.55);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    z-index: 0;
    pointer-events: none;
}

body.auth-body-muted.auth-has-bg .auth-shell { position: relative; z-index: 1; }
