/**
 * Aggressive WPForms Fix CSS
 * This file completely overrides any DistroApi styles that might affect WPForms
 * Load this with high priority to ensure WPForms works correctly
 */

/* Force WPForms radio buttons to display correctly */
.wpforms-container input[type="radio"],
.wpforms-container input[type="radio"]:checked,
.wpforms-container input[type="radio"]:focus,
.wpforms-container input[type="radio"]:hover {
    /* Reset all positioning */
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    
    /* Reset all styling */
    opacity: 1 !important;
    visibility: visible !important;
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 5px 0 0 !important;
    padding: 0 !important;
    
    /* Remove custom styling */
    border: none !important;
    background: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    
    /* Force standard appearance */
    appearance: auto !important;
    -webkit-appearance: auto !important;
    -moz-appearance: auto !important;
    
    /* Remove any pseudo-elements */
    content: none !important;
}

/* Force WPForms checkbox styling */
.wpforms-container input[type="checkbox"],
.wpforms-container input[type="checkbox"]:checked,
.wpforms-container input[type="checkbox"]:focus,
.wpforms-container input[type="checkbox"]:hover {
    /* Reset all positioning */
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    
    /* Reset all styling */
    opacity: 1 !important;
    visibility: visible !important;
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 5px 0 0 !important;
    padding: 0 !important;
    
    /* Remove custom styling */
    border: none !important;
    background: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    
    /* Force standard appearance */
    appearance: auto !important;
    -webkit-appearance: auto !important;
    -moz-appearance: auto !important;
    
    /* Remove any pseudo-elements */
    content: none !important;
}

/* Remove ALL pseudo-elements from WPForms radio and checkbox labels */
.wpforms-container input[type="radio"] + label:before,
.wpforms-container input[type="radio"] + label:after,
.wpforms-container input[type="checkbox"] + label:before,
.wpforms-container input[type="checkbox"] + label:after,
.wpforms-container input[type="radio"]:before,
.wpforms-container input[type="radio"]:after,
.wpforms-container input[type="checkbox"]:before,
.wpforms-container input[type="checkbox"]:after {
    display: none !important;
    content: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
}

/* Reset WPForms label positioning - but preserve natural spacing */
.wpforms-container label,
.wpforms-container .wpforms-field-label,
.wpforms-container .wpforms-field-label-inline {
    position: static !important;
    display: inline-block !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
    text-indent: 0 !important;
    vertical-align: middle !important;
}

/* Reset WPForms list items - but preserve natural spacing */
.wpforms-container li,
.wpforms-container ul li {
    position: static !important;
    display: block !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
    text-indent: 0 !important;
    list-style: none !important;
}

/* Reset WPForms field containers - but preserve natural spacing and conditional logic */
.wpforms-container .wpforms-field {
    position: static !important;
    display: block !important;
    /* Don't override margin-bottom to preserve natural spacing */
}

.wpforms-container .wpforms-field-container {
    position: static !important;
    display: block !important;
    /* Don't override margin-bottom to preserve natural spacing */
}

/* Preserve WPForms conditional logic - don't force visibility */
.wpforms-container .wpforms-conditional-hide {
    display: none !important;
}

.wpforms-container .wpforms-conditional-show {
    display: block !important;
}

/* Override any DistroApi specific styles that might affect WPForms */
.wpforms-container .radio-group,
.wpforms-container .checkbox-group {
    display: block !important;
    position: static !important;
}

.wpforms-container .radio-group > div,
.wpforms-container .checkbox-group > div {
    display: block !important;
    position: static !important;
    width: auto !important;
}

/* Ensure WPForms image choices work properly */
.wpforms-container .wpforms-image-choices input[type="radio"],
.wpforms-container .wpforms-image-choices input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Force focus states for accessibility */
.wpforms-container input[type="radio"]:focus,
.wpforms-container input[type="checkbox"]:focus {
    outline: 2px solid #1E73BE !important;
    outline-offset: 2px !important;
}

/* Override any inline styles that might be added by JavaScript - but only for radio/checkbox */
.wpforms-container input[type="radio"][style],
.wpforms-container input[type="checkbox"][style] {
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 5px 0 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
}

/* Ensure WPForms works on all screen sizes */
@media screen and (max-width: 768px) {
    .wpforms-container input[type="radio"],
    .wpforms-container input[type="checkbox"] {
        position: static !important;
        opacity: 1 !important;
        visibility: visible !important;
        display: inline-block !important;
        width: auto !important;
        height: auto !important;
        margin: 0 5px 0 0 !important;
        padding: 0 !important;
    }
}

/* Remove the overly broad selector that was affecting all elements */
/* .wpforms-container * {
    position: static !important;
} */
