/* Form */
.wpcz .wpcz-form {
    font-size: 1em;
    font-size: clamp(0.9375em, 1vw, 1em);
    line-height: 1.15;
}

.wpcz .wpcz-form-title {
    display: flex;
    margin-block-start: 2em;
    margin-block-end: 0.75em;
    margin-inline: 0;
    padding: 0;
    font-size: 1.5625em;
    font-weight: 600;
    color: var(--wpcz-title-color);
    text-transform: uppercase;
}

.wpcz .wpcz-form-fieldset {
    padding-block: 1.5em;
    padding-inline: 0;
    background-color: var(--wpcz-form-box-bg-color);
}

.wpcz .wpcz-form-body {
    color: var(--wpcz-text-color);
}

.wpcz .wpcz-form-row {
    margin-block-start: 1.5em;
}

.wpcz-form-body > .wpcz-form-row:first-child {
    margin-block-start: 0;
}

@media (min-width: 48em) {
    .wpcz .wpcz-tab__content-item {
        padding-inline: 2.5em;
    }

    .wpcz .wpcz-form-title {
        font-size: 1.625em;
    }
}

.wpcz .wpcz-form-control-box {
    position: relative;
}

.wpcz .wpcz-form-control-box--btn-group {
    display: grid;
    grid-template-columns: auto;
    grid-gap: 1em;
    gap: 1em;
}

.wpcz .wpcz-form-row--btn-set {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 1em;
    gap: 1em;
}

.wpcz .wpcz-form-row--btn-set .wpcz-btn {
    inline-size: 100%;
}

@media (min-width: 24em) {
    .wpcz .wpcz-form-row--btn-set-xxs .wpcz-btn {
        inline-size: auto;
    }

    .wpcz .wpcz-form-control-box--btn-group-xxs {
        grid-template-columns: auto max-content;
    }
}

@media (min-width: 32em) {
    .wpcz .wpcz-form-row--btn-set-xs .wpcz-btn {
        inline-size: auto;
    }

    .wpcz .wpcz-form-control-box--btn-group-xs {
        grid-template-columns: auto max-content;
    }
}

@media (min-width: 48em) {
    .wpcz .wpcz-form-row--btn-set-sm .wpcz-btn {
        inline-size: auto;
    }

    .wpcz .wpcz-form-control-box--btn-group-sm {
        grid-template-columns: auto max-content;
    }
}

@media (min-width: 64em) {
    .wpcz .wpcz-form-row--btn-set-md .wpcz-btn {
        inline-size: auto;
    }

    .wpcz .wpcz-form-control-box--btn-group-md {
        grid-template-columns: auto max-content;
    }
}

@media (min-width: 72em) {
    .wpcz .wpcz-form-row--btn-set-lg .wpcz-btn {
        inline-size: auto;
    }

    .wpcz .wpcz-form-control-box--btn-group-lg {
        grid-template-columns: auto max-content;
    }
}

@media (min-width: 80em) {
    .wpcz .wpcz-form-row--btn-set-xl .wpcz-btn {
        inline-size: auto;
    }

    .wpcz .wpcz-form-control-box--btn-group-xl {
        grid-template-columns: auto max-content;
    }
}

@media (min-width: 92em) {
    .wpcz .wpcz-form-row--btn-set-xxl .wpcz-btn {
        inline-size: auto;
    }

    .wpcz .wpcz-form-control-box--btn-group-xxl {
        grid-template-columns: auto max-content;
    }
}

/* Form Legend */
.wpcz .wpcz-form-legend {
    margin-block-start: 0;
    margin-block-end: 1.25em;
    padding-block-end: 0.375em;
    border-block-end: 1px solid var(--wpcz-legend-border-color);
    color: var(--wpcz-legend-color);
    font-size: 1.1875em;
    letter-spacing: 0.025em;
    word-break: break-word;
    overflow-wrap: break-word;
}

@media (min-width: 48em) {
    .wpcz .wpcz-form-legend {
        font-size: 1.3125em;
    }
}

/* Form Label */
.wpcz .wpcz-form-label {
    display: block;
    inline-size: max-content;
    max-inline-size: 100%;
    margin-block-end: 0.375em;
    word-break: break-word;
    overflow-wrap: break-word;
    font-size: 0.6875em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1.25;
    color: var(--wpcz-label-color);
}

.wpcz .wpcz-error .wpcz-form-label {
    color: var(--wpcz-error-color);
}

@media (min-width: 48em) {
    .wpcz .wpcz-form-label {
        font-size: 0.75em;
    }
}

/* Tooltip */
.wpcz-tooltip-container {
    position: absolute;
    display: block;
}

.wpcz-tooltip__btn {
    position: relative;
    cursor: pointer;
}

.wpcz-tooltip-container + .wpcz-form-label {
    padding-inline-start: 1.75em;
}

.wpcz-tooltip {
    display: none;
    opacity: 0;
    position: absolute;
    z-index: 1;
    inset-inline-start: 0;
    inset-block-end: calc(100% + 1em);
    margin: 0;
    padding: 2em 1em 1em 1em;
    border-radius: var(--wpcz-radius);
    border: 0;
    min-inline-size: 24em;
    font-size: 0.875em;
    line-height: 1.5;
    background-color: var(--wpcz-tooltip-bg-color);
    color: var(--wpcz-tooltip-color);
    transition: display 0s linear 0.25s, opacity 0.15s ease;
    transition-behavior: allow-discrete;
}

.wpcz-tooltip:after {
    display: block;
    content: '';
    position: absolute;
    margin-block-start: -1px;
    inset-block-start: 100%;
    inset-inline-start: 1.75em;
    transform: translateX(-50%);
    inline-size: 1em;
    block-size: 0.5em;
    z-index: 0;
    background-color: var(--wpcz-tooltip-bg-color);
    clip-path: polygon(50% 100%, 0 0, 100% 0);
}

.wpcz-tooltip > *:last-child {
    margin-block-end: 0;
}

.wpcz-tooltip__btn:has([type="checkbox"]:checked) + .wpcz-tooltip {
    display: block;
    opacity: 1;
    transition-duration: 0.25s;

    @starting-style {
        opacity: 0;
    }
}

.wpcz-tooltip__btn-icon {
    display: block;
    inline-size: 1em;
    block-size: 1em;
}

.wpcz-tooltip__btn-icon--close {
    position: absolute;
    inset-block-start: 0.75em;
    inset-inline-end: 0.75em;
    cursor: pointer;
}

.wpcz-tooltip__btn-icon--information {
    margin-block-start: -0.0625em;
}

.wpcz-checkable + .wpcz-tooltip-container {
    position: relative;
}

.wpcz-checkable + .wpcz-tooltip-container .wpcz-tooltip {
    margin-left: -1.125em;
}

.wpcz-checkable + .wpcz-tooltip-container .wpcz-tooltip__btn-icon--information {
    margin-block-start: 0;
}

.wpcz-tooltip__content {
    max-block-size: 6em;
    overflow-y: auto;
}

.wpcz-tooltip__content > *:first-child {
    margin-block-start: 0;
}

.wpcz-tooltip__content > *:last-child {
    margin-block-end: 0;
}

.wpcz-tooltip__content dt {
    font-weight: 700;
}

.wpcz-tooltip__content dt,
.wpcz-tooltip__content dd {
    margin-inline-start: 0;
}