/**
 * Don Bosco login — white background, logo blues, centered fields
 */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap');

body.dbn-login-soft {
    font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
    min-height: 100vh;
    margin: 0;
    background: #ffffff !important;
}

body.dbn-login-soft .login-register {
    background: #ffffff !important;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

body.dbn-login-soft .dbn-login-wrap {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
    text-align: center;
}

body.dbn-login-soft .dbn-login-logo {
    width: 80px;
    height: 80px;
    margin: 0 auto 20px;
    background: #fff;
    border-radius: 50%;
    padding: 8px;
    box-shadow: 0 2px 12px rgba(0, 50, 150, 0.12);
    border: 2px solid #e8eef7;
}

body.dbn-login-soft .dbn-login-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

body.dbn-login-soft .dbn-login-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 20px rgba(0, 50, 150, 0.06) !important;
    padding: 32px 28px !important;
    text-align: center;
}

body.dbn-login-soft .dbn-login-title {
    color: #003296 !important;
    font-weight: 700 !important;
    font-size: 1.2rem !important;
    margin-bottom: 6px !important;
}

body.dbn-login-soft .dbn-login-subtitle {
    color: #64748b !important;
    font-size: 13px !important;
    margin-bottom: 24px !important;
}

body.dbn-login-soft #login-form,
body.dbn-login-soft #forgot-form-panel form {
    text-align: center !important;
    max-width: 300px;
    margin: 0 auto;
}

body.dbn-login-soft .form-group {
    margin-bottom: 14px;
    text-align: center;
}

body.dbn-login-soft .form-control {
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    padding: 12px 16px !important;
    background: #f8fafc !important;
    font-size: 15px !important;
    text-align: center !important;
    max-width: 300px;
    margin: 0 auto;
    display: block;
    width: 100%;
    box-sizing: border-box;
}

body.dbn-login-soft .form-control:focus {
    border-color: #538cc6 !important;
    box-shadow: 0 0 0 2px rgba(83, 140, 198, 0.2) !important;
    background: #fff !important;
}

body.dbn-login-soft .form-control::placeholder {
    text-align: center;
    color: #94a3b8;
}

body.dbn-login-soft .btn-info,
body.dbn-login-soft button[type="submit"] {
    max-width: 300px;
    margin: 8px auto 0;
    display: block;
    width: 100%;
    border-radius: 8px !important;
    border: none !important;
    background: #003296 !important;
    color: #fff !important;
    font-weight: 600 !important;
    padding: 12px 24px !important;
    font-size: 15px !important;
    box-shadow: none !important;
}

body.dbn-login-soft .btn-info:hover,
body.dbn-login-soft button[type="submit"]:hover {
    background: #1a4fad !important;
    transform: none !important;
}

body.dbn-login-soft .alert {
    border-radius: 8px !important;
    text-align: center;
    font-size: 13px;
    max-width: 300px;
    margin: 0 auto 12px;
}

body.dbn-login-soft .dbn-login-links {
    color: #64748b !important;
    font-size: 13px !important;
    margin-top: 16px;
}

body.dbn-login-soft .dbn-login-links a {
    color: #003296 !important;
    font-weight: 600 !important;
}

body.dbn-login-soft .preloader {
    background: #fff !important;
}

body.dbn-login-soft .container.containers,
body.dbn-login-soft .white-box.containers {
    width: 100% !important;
    height: auto !important;
    position: static !important;
    transform: none !important;
    padding: 0 !important;
    box-shadow: none !important;
    border: none !important;
    background: transparent !important;
}

body.dbn-login-soft .form--user__icon {
    display: none !important;
}

#forgot-form-panel { display: none; }
#forgot-form-panel.show { display: block !important; }
#login-form-panel.hide { display: none !important; }
#login-alerts .close { display: none !important; }
