/* ==========================================================
   SOLVEN E.I.R.L. - LOGIN INTERNO
   Personalizacion visual. La autenticacion sigue siendo
   la nativa de Frappe Framework.
   ========================================================== */

.for-login {
    min-height: 100vh !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 35px 20px !important;
    background:
        linear-gradient(
            90deg,
            rgba(6, 13, 22, 0.82) 0%,
            rgba(6, 13, 22, 0.52) 30%,
            rgba(6, 13, 22, 0.30) 50%,
            rgba(6, 13, 22, 0.52) 70%,
            rgba(6, 13, 22, 0.82) 100%
        ),
        url("/assets/solven_app/images/fondo.png") center center / cover no-repeat !important;
}

body:has(.for-login),
body:has(.for-login) .page-container,
body:has(.for-login) .page-content-wrapper {
    background: #101820 !important;
    margin: 0 !important;
}

body:has(.for-login) header,
body:has(.for-login) footer,
body:has(.for-login) .navbar,
body:has(.for-login) .web-footer {
    display: none !important;
}

.for-login .login-content.page-card {
    width: 100% !important;
    max-width: 540px !important;
    padding: 36px 42px 32px !important;
    background: rgba(250, 252, 255, 0.97) !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255,255,255,.80) !important;
    box-shadow: 0 30px 75px rgba(0,0,0,.48), 0 5px 15px rgba(0,0,0,.18) !important;
    backdrop-filter: blur(8px);
}

.for-login .page-card-head {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}

.for-login .app-logo {
    display: block !important;
    width: 280px !important;
    max-width: 85% !important;
    height: auto !important;
    max-height: 155px !important;
    object-fit: contain !important;
    margin: 0 auto 12px !important;
}

.for-login .page-card-head-text h4 {
    font-size: 24px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    color: #172333 !important;
    text-align: center !important;
    margin-top: 8px !important;
}

.for-login .page-card-subtitle {
    font-size: 15px !important;
    line-height: 1.4 !important;
    color: #6e7b8d !important;
    text-align: center !important;
    margin-bottom: 18px !important;
}

.for-login .page-card-head-text::after {
    content: "";
    display: block;
    width: 52px;
    height: 3px;
    margin: 14px auto 6px;
    border-radius: 3px;
    background: #0875c9;
}

.for-login .form-control {
    height: 51px !important;
    background: white !important;
    border: 1px solid #cbd4df !important;
    border-radius: 7px !important;
    font-size: 15px !important;
}
.for-login .form-control:focus {
    border-color: #0875c9 !important;
    box-shadow: 0 0 0 3px rgba(8,117,201,.13) !important;
}

.for-login .page-card-actions button.btn-login[type="submit"] {
    height: 52px !important;
    border: none !important;
    border-radius: 7px !important;
    background: linear-gradient(135deg,#0879d6,#07549a) !important;
    color: white !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    box-shadow: 0 7px 17px rgba(4,86,158,.26) !important;
}
.for-login .page-card-actions button.btn-login[type="submit"]:hover {
    background: linear-gradient(135deg,#0a88ee,#0963b3) !important;
}

.for-login a[href="#forgot"] {
    font-size: 14px !important;
}

.for-login .btn-login-with-email-link {
    display: none !important;
}

@media (max-width: 650px) {
    .for-login { padding: 20px 15px !important; }
    .for-login .login-content.page-card { padding: 28px 22px !important; }
    .for-login .app-logo { width: 220px !important; }
}
