/* Authentication Pages Specific Styles */

/* Login/Registration Form */
.form-signin {
    width: 100%;
    max-width: 420px;
    padding: 15px;
    margin: auto;
}

.form-signin .nav-tabs .nav-link {
    font-weight: 500;
}

.form-signin .form-control {
    position: relative;
    box-sizing: border-box;
    height: auto;
    padding: 10px;
    font-size: 16px;
}

.form-signin .form-control:focus {
    z-index: 2;
}

.form-signin input[type="text"],
.form-signin input[type="email"],
.form-signin input[type="password"] {
    margin-bottom: 10px;
    border-radius: 0.375rem;
}

.form-signin .btn {
    margin-top: 10px;
}

.form-signin .tab-content {
    padding: 20px 0;
}

.password-toggle {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    z-index: 10;
}

.password-container {
    position: relative;
}

/* Submit button loading state */
.form-signin .btn .spinner-border {
    margin-left: 8px;
    width: 1rem;
    height: 1rem;
    border-width: 0.15em;
}

.form-signin .btn:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

/* Auth Header */
.auth-header {
    background: linear-gradient(135deg, #0D6EFD, #B22234);
    color: white;
    padding: 2rem 0;
    margin-bottom: 2rem;
}

.auth-header h1 {
    font-weight: 700;
}

.auth-header p {
    opacity: 0.9;
}

/* Responsive adjustments */
@media (max-width: 575.98px) {
    .form-signin {
        padding: 15px;
        max-width: 100%;
    }
    
    .auth-header {
        padding: 1.5rem 0;
        margin-bottom: 1.5rem;
    }
    
    .auth-header h1 {
        font-size: 1.75rem;
    }
}