/* Login page — Vue auth-1/sign-in parity. Standalone (not loaded via base.html). */

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

html,
body {
    min-height: 100%;
    margin: 0;
    font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    background: #f6f7fb;
}

.auth-box {
    position: relative;
    min-height: 100vh;
    padding: 50px;
}

.auth-brand {
    margin-bottom: 2rem;
}

.upbot-brand-mark {
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #1ab394;
    line-height: 1.2;
}

.fw-bold {
    font-weight: 700 !important;
}

.fw-semibold {
    font-weight: 600 !important;
}

.w-lg-75 {
    width: 100%;
}

@media (min-width: 992px) {
    .w-lg-75 {
        width: 75%;
    }
}

.login-card {
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 0 35px 0 rgba(154, 161, 171, 0.15);
    background: #fff;
}

.rounded-4 {
    border-radius: 1rem !important;
}

.login-card .alert {
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    line-height: 1.4;
    margin-bottom: 1rem;
}

.login-card .alert:empty,
.login-card .alert.is-hidden,
.login-card .alert[hidden],
.login-pane[hidden] {
    display: none !important;
}

.login-d-grid {
    display: grid;
}

.login-card .form-control:focus {
    border-color: #1ab394;
    box-shadow: 0 0 0 0.2rem rgba(26, 179, 148, 0.25);
}

.login-card .form-control:disabled {
    background-color: #eef2f7;
    opacity: 1;
}

.login-card .form-check-input {
    margin-top: 0.2rem;
}

.login-card .form-check-input:checked {
    background-color: #1ab394;
    border-color: #1ab394;
}

.login-card .btn-primary {
    color: #fff;
    background-color: #1ab394;
    border-color: #1ab394;
}

.login-card .btn-primary:hover,
.login-card .btn-primary:focus {
    color: #fff;
    background-color: #18a689;
    border-color: #18a689;
}

.login-card .btn-primary:disabled {
    color: #fff;
    background-color: #1ab394;
    border-color: #1ab394;
    opacity: 0.65;
}

.login-card .btn-success {
    color: #fff;
    background-color: #0acf97;
    border-color: #0acf97;
}

.login-card .btn-success:hover,
.login-card .btn-success:focus {
    color: #fff;
    background-color: #09b384;
    border-color: #09b384;
}

.login-card .btn-success.disabled,
.login-card .btn-success:disabled {
    color: #fff;
    background-color: #0acf97;
    border-color: #0acf97;
    opacity: 0.65;
    pointer-events: none;
}

.login-card .nav-tabs .nav-link {
    color: #6c757d;
    font-weight: 600;
    cursor: pointer;
}

.login-card .nav-tabs .nav-link:hover {
    color: #1ab394;
}

.login-card .nav-tabs .nav-link.active {
    color: #1ab394;
    border-color: #dee2e6 #dee2e6 #fff;
}

.login-card .form-label .text-danger {
    font-weight: 700;
}

@media (min-width: 1400px) {
    .login-auth-col {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
}

@media (max-width: 767.98px) {
    .auth-box {
        padding: 24px 16px;
    }

    .w-lg-75 {
        width: 100%;
    }
}
