/* Use the preserved child theme's columns, card borders and checked-image styles. */
.lucky-ninja-legacy-form .nf-form-fields-required {
    display: block;
    margin-bottom: 20px;
}
.lucky-ninja-legacy-form nf-fields-wrap {
    gap: 0;
}
.lucky-ninja-legacy-form .nf-field-container {
    margin-bottom: 20px !important;
}
.lucky-ninja-legacy-form .label-above .nf-field-label {
    margin-bottom: 5px;
}
.lucky-ninja-legacy-form .nf-field-label > label {
    display: block;
    width: 100%;
}
.lucky-ninja-legacy-form .html-container {
    margin-bottom: 0 !important;
}
.lucky-ninja-legacy-form .hr-container {
    margin-bottom: 5px !important;
}
.lucky-ninja-legacy-form .hr-wrap,
.lucky-ninja-legacy-form .hr-wrap .nf-field-element {
    height: 1px;
    line-height: 0;
}
.lucky-ninja-legacy-form .hr-wrap hr {
    margin: 0;
}
.lucky-ninja-legacy-form #nf-field-134-container {
    margin-top: 25px !important;
}
.nf-form-cont .lucky-ninja-legacy-image-list .nf-field-element > ul > li {
    display: block;
    float: left;
    width: 22%;
    padding: 0 !important;
    margin: 0 3% 3% 0 !important;
}
.nf-form-cont .lucky-ninja-legacy-image-list .nf-field-element > ul > li:nth-child(4n+4) {
    margin-right: 0 !important;
}
.nf-form-cont .lucky-ninja-legacy-image-list.col-3-wrap .nf-field-element > ul > li {
    width: 30%;
    margin: 0 5% 5% 0 !important;
}
.nf-form-cont .lucky-ninja-legacy-image-list.col-3-wrap .nf-field-element > ul > li:nth-child(3n+3) {
    margin-right: 0 !important;
}
@media (max-width: 1099px) {
    .nf-form-cont .lucky-ninja-legacy-image-list .nf-field-element > ul > li {
        width: 30%;
        margin: 0 5% 5% 0 !important;
    }
    .nf-form-cont .lucky-ninja-legacy-image-list .nf-field-element > ul > li:nth-child(3n+3) {
        margin-right: 0 !important;
    }
}
@media (max-width: 991px) {
    .nf-form-cont .lucky-ninja-legacy-image-list .nf-field-element > ul > li,
    .nf-form-cont .lucky-ninja-legacy-image-list.col-3-wrap .nf-field-element > ul > li {
        width: 48%;
        margin: 0 4% 4% 0 !important;
    }
    .nf-form-cont .lucky-ninja-legacy-image-list .nf-field-element > ul > li:nth-child(2n+2),
    .nf-form-cont .lucky-ninja-legacy-image-list.col-3-wrap .nf-field-element > ul > li:nth-child(2n+2) {
        margin-right: 0 !important;
    }
}
@media (max-width: 767px) {
    .nf-form-cont .lucky-ninja-legacy-image-list .nf-field-element > ul > li,
    .nf-form-cont .lucky-ninja-legacy-image-list.col-3-wrap .nf-field-element > ul > li {
        width: 100%;
    }
}
.nf-form-cont .lucky-ninja-legacy-image-list .nf-field-element > ul::after {
    content: "";
    display: block;
    clear: both;
}
.nf-form-cont .lucky-ninja-legacy-image-list .nf-field-element > ul > li > label {
    display: block;
    width: 100%;
    box-sizing: border-box;
    margin: 0 !important;
}
/* Retain keyboard access while matching the original visually hidden choices. */
.nf-form-cont .lucky-ninja-legacy-image-list label input[type="radio"] {
    display: block !important;
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
}
.nf-form-cont .lucky-ninja-legacy-image-list label:focus-within {
    outline: 2px solid #2196f3;
    outline-offset: 2px;
}
/* The new country-selector button must inherit the phone field's appearance. */
div.wpforms-container .iti button.iti__selected-country {
    background: transparent !important;
    color: inherit !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
div.wpforms-container .iti button.iti__selected-country:hover {
    background: rgba(0, 0, 0, 0.05) !important;
}
/* Invisible v3 validation keeps its elements and errors, without an empty gap. */
div.wpforms-container .wpforms-recaptcha-container.wpforms-is-recaptcha-type-v3 {
    padding: 0;
    margin: 0;
    min-height: 0;
}

/* The original HTML descriptions used block flow, including margin collapse. */
.lucky-ninja-legacy-form nf-field {
    display: block;
}
.lucky-ninja-legacy-form .html-wrap {
    display: block;
}
.lucky-ninja-legacy-form .html-wrap .nf-field-element {
    width: 100%;
}
/* An empty character-counter slot must not add spacing to an HTML paragraph.
   A populated counter retains the vendor's spacing and remains visible. */
.lucky-ninja-legacy-form .nf-input-limit:empty {
    margin-top: 0;
}

/* A description configured as absent must stay absent visually; the separate
   keyboard-accessible help tooltip and the field's bindings remain intact. */
.lucky-ninja-legacy-form .desc-none .nf-field-description[aria-hidden="true"] {
    display: none;
}
.lucky-ninja-legacy-form .lucky-ninja-legacy-plain-radio .nf-field-element > ul > li {
    margin: 0 !important;
    padding: 0 0 0 10px !important;
}
.lucky-ninja-legacy-form .lucky-ninja-legacy-plain-radio .nf-field-element > ul > li > label {
    display: block;
    margin: 0;
    float: none;
    font-weight: normal;
}
.lucky-ninja-legacy-form .lucky-ninja-legacy-plain-radio label input[type="radio"] {
    display: inline-block;
    float: none;
    margin: 0 5px 0 0;
    vertical-align: baseline;
}
/* Same preserved 25px submit spacing as the corresponding Lomma form. */
#nf-form-19-cont.lucky-ninja-legacy-form #nf-field-36-container {
    margin-top: 25px !important;
}
/* The legacy counter inherited the form's typography and followed directly
   after the textarea. Keep the modern live status and counting unchanged. */
.lucky-ninja-legacy-form .nf-input-limit:not(:empty) {
    font-size: inherit;
    line-height: inherit;
    margin-top: 0;
}

/* Site 71 / existing form 6: preserve the observed legacy responsive geometry.
 * Other forms, phone-country logic, focus/error rules and validation unchanged. */
@media (max-width: 600px) {
    .lucky-site71-classic-forms #wpforms-form-6 .wpforms-field {
        padding-left: 0;
        padding-right: 0;
    }
}
@media (max-width: 544px) {
    .lucky-site71-classic-forms #wpforms-form-6 #wpforms-submit-6 {
        padding: 16px 32px;
    }
}
