/* TorrentHaven — Dark Blue Login */

html,
body {
    min-height: 100%;
    background: #071426 !important;
}

body {
    color: #f8fafc !important;
    background:
        radial-gradient(ellipse at 15% 35%, rgba(18, 65, 135, .38), transparent 45%),
        radial-gradient(ellipse at 85% 75%, rgba(10, 48, 110, .32), transparent 45%),
        #071426 !important;
}

main {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    box-sizing: border-box;
}

/* Main black card */
.auth-form {
    width: 100%;
    max-width: 575px;
    background: #111315 !important;
    color: #f8fafc !important;
    border: 1px solid #2563eb !important;
    border-radius: 30px !important;
    overflow: hidden;
    box-shadow: 0 0 65px rgba(37, 99, 235, .18) !important;
}

/* Form spacing */
.auth-form__form {
    padding: 44px 46px 36px !important;
    background: transparent !important;
}

/* Logo */
.auth-form__branding {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 28px;
}

.auth-form__brand-logo {
    display: block;
    max-width: 100%;
    width: 410px;
    height: auto;
    object-fit: contain;
}

/* Welcome text */
.auth-form__welcome {
    text-align: center;
    margin-bottom: 34px;
}

.auth-form__welcome h1 {
    color: #f8fafc !important;
    font-size: 36px;
    font-weight: 800;
    margin: 0 0 8px;
}

.auth-form__welcome p {
    color: #aab6c9 !important;
    font-size: 18px;
    margin: 0;
}

/* Labels */
.auth-form__label {
    color: #f8fafc !important;
    font-weight: 700;
}

/* Input fields */
.auth-form__text-input {
    background: #202a38 !important;
    color: #f8fafc !important;
    border: 1px solid #3b82f6 !important;
    border-radius: 14px !important;
    box-shadow: none !important;
}

.auth-form__text-input:focus {
    background: #253244 !important;
    color: #ffffff !important;
    border-color: #60a5fa !important;
    outline: none;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, .18) !important;
}

.auth-form__text-input::placeholder {
    color: #94a3b8 !important;
}

/* Remember me */
.auth-form__checkbox-input {
    accent-color: #3b82f6;
}

/* Login button */
.auth-form__primary-button {
    background: linear-gradient(135deg, #1688f5, #1248e8) !important;
    color: #ffffff !important;
    border: 1px solid #38bdf8 !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 28px rgba(0, 102, 255, .22) !important;
    font-weight: 800;
    letter-spacing: .06em;
}

.auth-form__primary-button:hover {
    background: linear-gradient(135deg, #299bff, #2563eb) !important;
}

/* Footer */
.auth-form__footer {
    background: #111315 !important;
    border-top: 1px solid #303846 !important;
    color: #f8fafc !important;
}

.auth-form__footer-item,
.auth-form__footer a {
    color: #60a5fa !important;
    font-weight: 700;
}

.auth-form__footer-item:hover,
.auth-form__footer a:hover {
    color: #93c5fd !important;
}

/* Messages */
.auth-form__important-infos,
.auth-form__errors {
    color: #f8fafc !important;
}

/* Mobile */
@media (max-width: 600px) {
    main {
        padding: 20px 12px;
    }

    .auth-form {
        border-radius: 22px !important;
    }

    .auth-form__form {
        padding: 30px 24px !important;
    }

    .auth-form__welcome h1 {
        font-size: 29px;
    }

    .auth-form__welcome p {
        font-size: 15px;
    }
}

/* Extra TorrentHaven auth-page consistency */

.auth-form p,
.auth-form span,
.auth-form strong,
.auth-form small,
.auth-form li {
    color: #e5e7eb;
}

.auth-form a {
    color: #60a5fa;
}

.auth-form a:hover {
    color: #93c5fd;
}

.auth-form__secondary-button,
.auth-form button {
    border-radius: 14px;
}

.auth-form__important-info {
    background: #182235 !important;
    color: #f8fafc !important;
    border: 1px solid #334155 !important;
}

.auth-form__error,
.auth-form__errors {
    color: #fca5a5 !important;
}

.auth-form textarea,
.auth-form select {
    background: #202a38 !important;
    color: #f8fafc !important;
    border: 1px solid #3b82f6 !important;
    border-radius: 14px !important;
}
