/* ========================================
   FORM SIZE IMPROVEMENTS
   Making forms smaller and more compact
   ======================================== */

/* ========== LOGIN/REGISTER FORMS ========== */
.card {
    max-width: 450px !important;
    margin: 0.5rem auto 2rem auto !important;
}

.card-body {
    padding: 2rem 2rem !important;
}

.card-header {
    padding: 1.5rem 2rem !important;
}

/* ========== FORM INPUTS ========== */
.form-control {
    padding: 0.75rem 1rem !important;
    font-size: 0.95rem !important;
    height: auto !important;
}

.form-group {
    margin-bottom: 1.2rem !important;
}

.form-label {
    font-size: 0.9rem !important;
    margin-bottom: 0.5rem !important;
}

/* ========== BUTTONS IN FORMS ========== */
.card .btn {
    padding: 0.75rem 2rem !important;
    font-size: 0.95rem !important;
}

.card .btn-lg {
    padding: 0.85rem 2.5rem !important;
    font-size: 1rem !important;
}

/* ========== FORM TITLES ========== */
.card-title {
    font-size: 1.5rem !important;
    margin-bottom: 0.5rem !important;
}

.card h1 {
    font-size: 2rem !important;
}

.card h2 {
    font-size: 1.5rem !important;
}

.card h3 {
    font-size: 1.3rem !important;
}

/* ========== FORM SPACING ========== */
.card .text-center {
    margin-bottom: 1rem !important;
}

.card .mb-3 {
    margin-bottom: 1rem !important;
}

.card .mb-4 {
    margin-bottom: 1.5rem !important;
}

.card .mt-3 {
    margin-top: 1rem !important;
}

.card .mt-4 {
    margin-top: 1.5rem !important;
}

/* ========== SPECIFIC LOGIN FORM ========== */
.login-container .card,
.register-container .card {
    max-width: 420px !important;
}

/* ========== FORM ICONS ========== */
.input-group-text {
    padding: 0.75rem 1rem !important;
    font-size: 0.9rem !important;
}

/* ========== ALERT MESSAGES ========== */
.card .alert {
    padding: 0.75rem 1rem !important;
    font-size: 0.9rem !important;
    margin-bottom: 1rem !important;
}

/* ========== FORM FOOTER ========== */
.card-footer {
    padding: 1rem 2rem !important;
    font-size: 0.9rem !important;
}

/* ========== TEXTAREA ========== */
textarea.form-control {
    min-height: 100px !important;
    padding: 0.75rem 1rem !important;
}

/* ========== SELECT DROPDOWN ========== */
select.form-control {
    padding: 0.75rem 1rem !important;
    font-size: 0.95rem !important;
}

/* ========== CHECKBOX & RADIO ========== */
.form-check {
    padding-left: 1.5rem !important;
    margin-bottom: 0.75rem !important;
}

.form-check-input {
    margin-top: 0.25rem !important;
}

.form-check-label {
    font-size: 0.9rem !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 576px) {
    .card {
        max-width: 100% !important;
        margin: 1rem !important;
    }
    
    .card-body {
        padding: 1.5rem 1.5rem !important;
    }
    
    .card-header {
        padding: 1.2rem 1.5rem !important;
    }
    
    .form-control {
        padding: 0.7rem 0.9rem !important;
        font-size: 0.9rem !important;
    }
    
    .card .btn {
        padding: 0.7rem 1.5rem !important;
        font-size: 0.9rem !important;
    }
}

/* ========== COMPACT MODE (EXTRA SMALL) ========== */
.form-compact .card {
    max-width: 380px !important;
}

.form-compact .card-body {
    padding: 1.5rem !important;
}

.form-compact .form-control {
    padding: 0.65rem 0.9rem !important;
    font-size: 0.9rem !important;
}

.form-compact .btn {
    padding: 0.65rem 1.8rem !important;
    font-size: 0.9rem !important;
}

/* ========== WELCOME SECTION ========== */
.text-center h1 {
    font-size: 2.5rem !important;
    margin-bottom: 1rem !important;
}

.text-center p {
    font-size: 1rem !important;
    margin-bottom: 2rem !important;
}

/* ========== LOGO IN FORMS ========== */
.card img {
    max-width: 80px !important;
    margin-bottom: 1rem !important;
}

/* ========== FORM VALIDATION ========== */
.invalid-feedback {
    font-size: 0.85rem !important;
}

.valid-feedback {
    font-size: 0.85rem !important;
}

/* ========== HELP TEXT ========== */
.form-text {
    font-size: 0.85rem !important;
}

/* ========== PASSWORD TOGGLE ========== */
.password-toggle {
    cursor: pointer;
    padding: 0.75rem 1rem !important;
}

/* ========== FORM LINKS ========== */
.card a {
    font-size: 0.9rem !important;
}

/* ========== DIVIDER ========== */
.card hr {
    margin: 1.5rem 0 !important;
}

/* ========== SOCIAL LOGIN BUTTONS ========== */
.card .btn-social {
    padding: 0.65rem 1.5rem !important;
    font-size: 0.9rem !important;
}
