/* AUTH */
.auth-page{
    min-height:100vh;
    background:#020617;
    overflow-x:hidden;
}
.auth-wrapper{
    position:relative;
    z-index:1;
}
.auth-background{
    position:fixed;
    inset:0;
    z-index:0;
    background-image:
        linear-gradient(135deg, rgba(2,6,23,.82) 0%, rgba(15,23,42,.72) 45%, rgba(6,78,59,.58) 100%),
        var(--auth-hero-image);
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
}
.auth-background::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(2,6,23,.22) 0%, rgba(2,6,23,.1) 100%);
    backdrop-filter:blur(1.5px);
}
.auth-card{
    background:rgba(255,255,255,.92);
    backdrop-filter: blur(12px);
    border:1px solid rgba(255,255,255,.58);
    box-shadow:var(--shadow);
}
html[data-theme="dark"] .auth-card{
    background:rgba(15,23,42,.84);
    border-color:rgba(148,163,184,.14);
}
.auth-logo{
    width:76px;height:76px;margin:0 auto;border-radius:24px;
    display:grid;place-items:center;
    background:linear-gradient(135deg, rgba(15,118,110,.16), rgba(34,197,94,.18));
}
.auth-logo-image{width:60px;height:60px;object-fit:contain}
.auth-logo-emoji{font-size:2rem}
.password-toggle{
    position:absolute; right:.5rem; top:50%; transform:translateY(-50%);
    background:transparent;border:none;padding:.35rem .55rem; color:var(--muted-text)
}
.password-field-wrap{position:relative}
.password-eye,.password-eye::before,.password-eye::after{display:block}
.password-eye{
    position:relative;
    width:1.2rem;height:.75rem;
    border:2px solid currentColor;
    border-radius:999px;
}
.password-eye::before{
    content:"";
    position:absolute; inset:50% auto auto 50%;
    width:.34rem;height:.34rem;border-radius:50%;
    background:currentColor;transform:translate(-50%,-50%);
}
.password-toggle.is-visible .password-eye::after{
    content:"";
    position:absolute; left:50%; top:50%;
    width:1.3rem;height:2px;background:currentColor;transform:translate(-50%,-50%) rotate(-28deg);
}
.auth-submit-btn{
    border-radius:1rem;
    padding:.9rem 1rem;
    font-weight:700;
    box-shadow:0 .65rem 1.25rem rgba(15,118,110,.18);
}

.datix-auth-logo{max-width:220px;width:100%;height:auto;object-fit:contain;display:inline-block}
.datix-auth-logo--small{max-width:180px}
.auth-divider{position:relative;text-align:center;margin:1.35rem 0 1rem}
.auth-divider::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(100,116,139,.25)}
.auth-divider span{position:relative;display:inline-block;padding:0 .85rem;background:rgba(255,255,255,.92);color:var(--muted-text);font-size:.9rem}
html[data-theme="dark"] .auth-divider span{background:rgba(15,23,42,.84)}
.auth-superadmin-link{border-radius:1rem;padding:.9rem 1rem;font-weight:700}
.auth-superadmin-link i{margin-right:.45rem}
.auth-card--superadmin{border-top:4px solid rgba(15,23,42,.88)}
.auth-submit-btn--superadmin{box-shadow:0 .65rem 1.25rem rgba(15,23,42,.24)}
.datix-lock-badge{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;margin:0 auto;background:linear-gradient(135deg, rgba(15,23,42,.12), rgba(51,122,183,.22));color:#0f172a;font-size:1.35rem}
html[data-theme="dark"] .datix-lock-badge{color:#e2e8f0;background:linear-gradient(135deg, rgba(148,163,184,.14), rgba(51,122,183,.28))}
.auth-back-link{text-decoration:none;font-weight:600}
