/* Gravity Forms — Hesabdari theme */

body .gform_wrapper,
body .gform_wrapper.hesabdari-gform_wrapper,
body .gform_confirmation_wrapper.gform_wrapper {
    margin: 0 !important;
    max-width: none !important;
    font-family: 'IRANSansX', sans-serif;
}

body .gform_wrapper .gform_heading {
    margin-bottom: 1.25rem;
}

body .gform_wrapper .gform_title {
    font-size: 1.125rem;
    font-weight: 800;
    color: #01162b;
    margin: 0 0 0.5rem;
}

body .gform_wrapper .gform_description {
    color: #6b7280;
    font-size: 0.875rem;
    line-height: 1.7;
    margin: 0;
}

body .gform_wrapper .gform_required_legend {
    font-size: 0.75rem;
    color: #9ca3af;
    margin-bottom: 1rem;
}

body .gform_wrapper .gform_fields {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 1.25rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

@media (min-width: 768px) {
    body .gform_wrapper .gform_fields {
        grid-template-columns: repeat(12, minmax(0, 1fr));
    }

    body .gform_wrapper .gfield--width-half,
    body .gform_wrapper .gfield.medium {
        grid-column: span 6;
    }

    body .gform_wrapper .gfield--width-third {
        grid-column: span 4;
    }

    body .gform_wrapper .gfield--width-quarter {
        grid-column: span 3;
    }

    body .gform_wrapper .gfield--width-full,
    body .gform_wrapper .gfield.large,
    body .gform_wrapper .gfield.gfield--type-textarea {
        grid-column: span 12;
    }
}

body .gform_wrapper .gfield {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none;
}

body .gform_wrapper .gfield_label,
body .gform_wrapper legend.gfield_label,
body .gform_wrapper .gform-field-label {
    display: block;
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    color: #01162b !important;
    margin-bottom: 0.5rem !important;
}

body .gform_wrapper .gfield_required,
body .gform_wrapper .gfield_required_text {
    color: #e11d48;
}

body .gform_wrapper .gfield_description,
body .gform_wrapper .gform-field-label--type-sub,
body .gform_wrapper .instruction {
    font-size: 0.75rem;
    color: #9ca3af;
    margin-top: 0.35rem;
}

body .gform_wrapper input[type="text"],
body .gform_wrapper input[type="email"],
body .gform_wrapper input[type="tel"],
body .gform_wrapper input[type="url"],
body .gform_wrapper input[type="number"],
body .gform_wrapper input[type="password"],
body .gform_wrapper input[type="date"],
body .gform_wrapper input[type="time"],
body .gform_wrapper input[type="search"],
body .gform_wrapper select,
body .gform_wrapper textarea,
body .gform_wrapper .ginput_container input.large,
body .gform_wrapper .ginput_container select.large,
body .gform_wrapper .ginput_container textarea {
    width: 100% !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 0.75rem !important;
    padding: 0.75rem 1rem !important;
    font-size: 0.875rem !important;
    line-height: 1.5 !important;
    background: #f9fafb !important;
    color: #01162b !important;
    outline: none !important;
    box-shadow: none !important;
    min-height: auto !important;
    transition: border-color 0.2s ease, background-color 0.2s ease;
    font-family: inherit;
}

body .gform_wrapper input:focus,
body .gform_wrapper select:focus,
body .gform_wrapper textarea:focus {
    border-color: #71e604 !important;
    background: #fff !important;
}

body .gform_wrapper textarea,
body .gform_wrapper .ginput_container textarea {
    min-height: 9rem;
    resize: vertical;
}

body .gform_wrapper .gfield_error input,
body .gform_wrapper .gfield_error select,
body .gform_wrapper .gfield_error textarea {
    border-color: #fca5a5 !important;
    background: #fef2f2 !important;
}

body .gform_wrapper .validation_message,
body .gform_wrapper .gfield_validation_message {
    color: #e11d48 !important;
    font-size: 0.75rem !important;
    margin-top: 0.35rem;
    font-weight: 600;
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
}

body .gform_wrapper .gform_validation_errors {
    background: #fef2f2 !important;
    border: 1px solid #fecaca !important;
    border-radius: 0.75rem !important;
    padding: 1rem !important;
    margin-bottom: 1.25rem !important;
    color: #b91c1c !important;
    font-size: 0.875rem !important;
    box-shadow: none !important;
}

body .gform_wrapper .gform_validation_errors > h2 {
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    margin: 0 0 0.35rem !important;
    color: #b91c1c !important;
}

body .gform_wrapper .gform_confirmation_message,
body .gform_confirmation_wrapper .gform_confirmation_message {
    background: rgba(113, 230, 4, 0.1) !important;
    border: 1px solid rgba(113, 230, 4, 0.25) !important;
    border-radius: 0.75rem !important;
    padding: 1rem !important;
    color: #01162b !important;
    font-size: 0.875rem !important;
    line-height: 1.7 !important;
}

body .gform_wrapper .gform_footer,
body .gform_wrapper .gform_page_footer {
    margin-top: 1.25rem !important;
    padding: 0 !important;
}

body .gform_wrapper .gform_button,
body .gform_wrapper input[type="submit"],
body .gform_wrapper button.gform_button,
body .gform_wrapper .gform-theme-button,
body .gform_wrapper .button.gform_button {
    width: 100% !important;
    background: #71e604 !important;
    color: #01162b !important;
    font-weight: 800 !important;
    font-size: 0.875rem !important;
    padding: 0.875rem 1.5rem !important;
    border: none !important;
    border-radius: 0.75rem !important;
    cursor: pointer;
    transition: background-color 0.2s ease, box-shadow 0.2s ease;
    font-family: inherit;
    box-shadow: none !important;
    line-height: 1.5 !important;
    min-height: auto !important;
}

body .gform_wrapper .gform_button:hover,
body .gform_wrapper input[type="submit"]:hover,
body .gform_wrapper button.gform_button:hover,
body .gform_wrapper .gform-theme-button:hover {
    background: #5fc004 !important;
    box-shadow: 0 10px 15px -3px rgba(113, 230, 4, 0.25) !important;
}

body .gform_wrapper .gform-theme-button--secondary,
body .gform_wrapper .gform_previous_button,
body .gform_wrapper .gform_save_link {
    background: #f3f4f6 !important;
    color: #01162b !important;
}

body .gform_wrapper .gfield_checkbox,
body .gform_wrapper .gfield_radio {
    display: grid;
    gap: 0.5rem;
}

body .gform_wrapper .gchoice {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

body .gform_wrapper .gchoice label {
    font-size: 0.875rem;
    color: #374151;
}

body .gform_wrapper .gfield_consent_label {
    font-size: 0.8125rem;
    color: #4b5563;
    line-height: 1.7;
}

body .gform_wrapper .ginput_container_fileupload input[type="file"] {
    font-size: 0.8125rem;
}

body .gform_wrapper .gform_ajax_spinner {
    margin-right: 0.5rem;
}
