.pcf-wrap {
    font-family: inherit;
    width: 100%;

}

.pcf-wrap *,
.pcf-wrap *::before,
.pcf-wrap *::after {
    box-sizing: border-box;
}

.pcf-form,
.pcf-btn,
.pcf-control,
.pcf-label,
.pcf-help,
.pcf-status,
.pcf-consent,
.pcf-check-card,
.pcf-segment__label {
    font-family: inherit;
}

.pcf-wrap {
    --pcf-check-icon: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.8335 9L5.8335 12L13.1668 4' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.pcf-form {
    display: flex;
    flex-direction: column;
    gap: 0;
}


.pcf-section {
    margin: 0;
    padding:0;
}

.pcf-section + .pcf-section {
    margin-top: var(--wp--preset--spacing--64-32);
}

.pcf-section-title {
    margin: 0 0 var(--wp--preset--spacing--32-16);
    font-size: var(--wp--preset--font-size--small);
 
}

.pcf-field,
.pcf-fieldset {
    margin: 0 0 var(--wp--preset--spacing--32);
    padding: 0;
    border: 0;
    min-width: 0;
}

.pcf-section > :last-child {
    margin-bottom: 0;
}

.pcf-label {
    display: inline-block;
    margin-bottom: var(--wp--preset--spacing--8);
    font-size: var(--wp--preset--font-size--base);
    font-weight: 700;
}

.pcf-opt {
    color: var(--wp--preset--color--grey);
    font-weight: 400;
}

.pcf-help {
    margin: calc(var(--wp--preset--spacing--8) * -1) 0 var(--wp--preset--spacing--16);
    font-size: var(--wp--preset--font-size--base-small);
    color: var(--wp--preset--color--grey);
}

.pcf-control {
    display: block;
    width: 100%;
    min-height: var(--wp--custom--buttons-height);
    padding: var(--wp--preset--spacing--16);
    border: 1px solid var(--wp--preset--color--black);
    border-radius: var(--wp--custom--buttons-radius);
    background: transparent;
    color: var(--wp--preset--color--black);
    font-size: var(--wp--preset--font-size--base);
    outline: none;
    transition: var(--wp--custom--custom-transition);
}

.pcf-control::placeholder {
    color: var(--wp--preset--color--grey);
}

.pcf-control:focus,
.pcf-control:focus-visible {
    border-color: var(--wp--preset--color--green);
    box-shadow: 0 0 0 3px var(--wp--preset--color--green-light-1);
}

.pcf-control.is-invalid,
.pcf-control:invalid:focus {
    border-color: var(--wp--preset--color--vivid-red);;
    box-shadow: 0 0 0 3px rgba(199, 80, 80, 0.12);
}

.pcf-textarea {
    min-height: 116px;
    resize: vertical;
}

.pcf-choice-list {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--16);
}

.pcf-choice-input,
.pcf-segment__input,
.pcf-consent input {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.pcf-check-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: var(--wp--preset--spacing--16);
    min-height: var(--wp--custom--buttons-height);
    padding: var(--wp--preset--spacing--16);
    border: 1px solid var(--wp--preset--color--black);
    border-radius: var(--wp--custom--buttons-radius);
    background: transparent;
    cursor: pointer;
    transition: var(--wp--custom--custom-transition);
}

.pcf-check-card:hover,
.pcf-segment__label:hover {
    border-color: var(--wp--preset--color--green);
}

.pcf-check-card__indicator {
    position: relative;
    flex: 0 0 var(--wp--preset--spacing--16);;
    width: var(--wp--preset--spacing--16);;
    height: var(--wp--preset--spacing--16);;
    border: 1px solid var(--wp--preset--color--black);
    border-radius: 4px;
    background: var(--wp--preset--color--white);
    transition: var(--wp--custom--custom-transition);
}

.pcf-check-card__indicator::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--pcf-check-icon);
    background-repeat: no-repeat;
    background-position: center;
    background-size: var(--wp--preset--spacing--16) var(--wp--preset--spacing--16);
    opacity: 0;
    transform: scale(0.8);
    transition: var(--wp--custom--custom-transition);
}

.pcf-check-card__text {
 
    color: var(--wp--preset--color--black);
}


.pcf-choice-input:focus-visible + .pcf-check-card__indicator,
.pcf-consent input:focus-visible + .pcf-consent__box,
.pcf-segment__input:focus-visible + .pcf-segment__label {
    border-width: 1px;
    border-color: var(--wp--preset--color--green);
    box-shadow: 0 0 0 3px var(--wp--preset--color--green-light-1);
    font-weight: 700;
}

.pcf-choice-input:checked ~ .pcf-check-card__indicator,
.pcf-check-card.is-checked .pcf-check-card__indicator,
.pcf-check-card:has(.pcf-choice-input:checked) .pcf-check-card__indicator {
    border: 1px solid var(--wp--preset--color--green);
    background: var(--wp--preset--color--green-light-1);
}

.pcf-choice-input:checked ~ .pcf-check-card__indicator::after,
.pcf-check-card.is-checked .pcf-check-card__indicator::after,
.pcf-check-card:has(.pcf-choice-input:checked) .pcf-check-card__indicator::after {
    opacity: 1;
    transform: scale(1);
}

.pcf-check-card.is-checked,
.pcf-check-card:has(.pcf-choice-input:checked) {
    border: 1px solid var(--wp--preset--color--green);
    background: var(--wp--preset--color--green-light-1);
}

.pcf-check-card.is-invalid {
    border-color: var(--wp--preset--color--vivid-red);
}

.pcf-segmented {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pcf-segment {
    position: relative;
}

.pcf-segment__label {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: var(--wp--custom--buttons-height);
    padding: var(--wp--preset--spacing--16);
    margin-left: -1px;
    border: 1px solid var(--wp--preset--color--black);
    background: var(--wp--preset--color--white);
    text-align: center;

   
    cursor: pointer;
    transition: var(--wp--custom--custom-transition);
}

.pcf-segment:first-child .pcf-segment__label {
    margin-left: 0;
    border-radius: var(--wp--custom--buttons-radius) 0 0 var(--wp--custom--buttons-radius);
}

.pcf-segment:last-child .pcf-segment__label {
    border-radius: 0 var(--wp--custom--buttons-radius) var(--wp--custom--buttons-radius) 0;
}

.pcf-segment__input:checked + .pcf-segment__label {
    position: relative;
    z-index: 1;
    border: 1px solid var(--wp--preset--color--green);
    background: var(--wp--preset--color--green-light-1);
  /*   font-weight: 700; */
}

.pcf-check-card:has(.pcf-choice-input:checked) .pcf-check-card__text {
   /* font-weight: 700; */
}

.pcf-consent {
    position: relative;
    display: grid;
    grid-template-columns: var(--wp--preset--spacing--16) 1fr;
    align-items: start;
    gap: var(--wp--preset--spacing--16);
    cursor: pointer;
    color: var(--wp--preset--color--black);
}

.pcf-consent__box {
    position: relative;
    width: var(--wp--preset--spacing--16) ;
    height: var(--wp--preset--spacing--16);
    margin-top: 3px;
    border: 1px solid var(--wp--preset--color--black);
    border-radius: 4px;
    background: var(--wp--preset--color--white);
    transition: var(--wp--custom--custom-transition);
}

.pcf-consent__box::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--pcf-check-icon);
    background-repeat: no-repeat;
    background-position: center;
    background-size: var(--wp--preset--spacing--16) var(--wp--preset--spacing--16);
    opacity: 0;
    transform: scale(0.8);
    transition: var(--wp--custom--custom-transition);
}

.pcf-consent input:checked + .pcf-consent__box {
    border: 1px solid var(--wp--preset--color--green);
    background: var(--wp--preset--color--green-light-1);
}

.pcf-consent input:checked + .pcf-consent__box::after {
    opacity: 1;
    transform: scale(1);
}

.pcf-consent__text {
    font-size: var(--wp--preset--font-size--base-small);
    color: var(--wp--preset--color--black);
}

.pcf-consent__text a {
    color: inherit;
}

.pcf-error {
    display: none;
    margin: var(--wp--preset--spacing--8) 0 0;
    font-size: var(--wp--preset--font-size--base-small);
    color: var(--wp--preset--color--vivid-red);
}

.pcf-status {
    display: none;
    margin-top:  var(--wp--preset--spacing--16);
    padding:  var(--wp--preset--spacing--16);
    border-radius: var(--wp--custom--buttons-radius);
    border: 1px solid var(--wp--preset--color--black);
    background: var(--wp--preset--color--white);
   font-size: var(--wp--preset--font-size--base-small);

}

.pcf-status.is-ok {
    display: block;
    border-color: var(--wp--preset--color--green);
    background: var(--wp--preset--color--green-light-1);
}

.pcf-status.is-err {
    display: block;
    border-color: var(--wp--preset--color--vivid-red);;
    background: rgba(199, 80, 80, 0.08);
}

.pcf-actions {
    margin-top: var(--wp--preset--spacing--24);
}
.pcf-required {
    color: var(--wp--preset--color--vivid-red);;
}
.pcf-btn {
    display: inline-flex;
    align-items: center;
    gap: var(--wp--preset--spacing--16);
    min-height: var(--wp--custom--buttons-height);
    padding: 0 var(--wp--preset--spacing--16);
    border: 0;
    border-radius: var(--wp--custom--buttons-radius);
    background: var(--wp--preset--color--green);
    color: var(--wp--preset--color--black);
   font-size: var(--wp--preset--font-size--base);
    font-weight: 700;

    cursor: pointer;
    transition: var(--wp--custom--custom-transition);
}

.pcf-btn:hover {
    opacity: .7;
}

.pcf-btn:active {
    transform: scale(0.99);
}

.pcf-btn[disabled] {
    opacity: .7;
    cursor: not-allowed;
}

.pcf-btn__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--wp--preset--spacing--24);
    height: var(--wp--preset--spacing--24);
    line-height: 0;
}

.pcf-btn__icon svg {
    display: block;
    width: var(--wp--preset--spacing--24);
    height: var(--wp--preset--spacing--24);
}


.pcf-field--checkbox {
    margin-top: var(--wp--preset--spacing--32);
    margin-bottom: 0;
}

@supports not selector(:has(*)) {
    .pcf-choice-input:checked + .pcf-check-card__indicator {
        border: 1px solid var(--wp--preset--color--green);
        background: var(--wp--preset--color--green-light-1);
    }

    .pcf-choice-input:checked + .pcf-check-card__indicator::after {
        opacity: 1;
        transform: scale(1);
    }
}

@media (max-width: 782px) {
    .pcf-section + .pcf-section {
        margin-top: var(--wp--preset--spacing--64-32);
    }

    .pcf-title {
        margin-bottom: var(--wp--preset--spacing--24);
    }

    .pcf-section-title {
        margin-bottom: var(--wp--preset--spacing--24);
        font-size:  var(--wp--preset--font-size--medium);
    }

    .pcf-segmented {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--wp--preset--spacing--16);
    }

    .pcf-segment__label,
    .pcf-segment:first-child .pcf-segment__label,
    .pcf-segment:last-child .pcf-segment__label {
        margin-left: 0;
        border-radius: var(--wp--custom--buttons-radius);
    }
}

@media (max-width: 520px) {
    .pcf-wrap {
        max-width: 100%;
    }


 

    .pcf-segmented {
        grid-template-columns: 1fr;
    }

    .pcf-btn {
        width: 100%;
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pcf-control,
    .pcf-check-card,
    .pcf-segment__label,
    .pcf-consent__box,
    .pcf-btn,
    .pcf-check-card__indicator,
    .pcf-check-card__indicator::after,
    .pcf-consent__box::after {
        transition: none;
    }
}
