.gform-theme--api,
.gform-theme--framework {
    --gf-ctrl-date-picker-cell-content-color: var(--wp--preset--color--contrast) !important;
    --gf-ctrl-date-picker-header-icons-color: var(--wp--preset--color--contrast) !important;
    --gf-ctrl-date-picker-header-icons-color-hover: var(--wp--preset--color--primary) !important;
}

.gform_wrapper.gform-theme {
    --gf-color-danger: #f00;
    --gf-ctrl-btn-bg-color-hover-primary: var(--wp--preset--color--accent);
    --gf-ctrl-btn-border-color-hover-primary: var(--wp--preset--color--accent);
    --gf-ctrl-btn-bg-color-hover-ctrl: var(--wp--preset--color--accent);
    --gf-ctrl-btn-color-hover-ctrl: var(--wp--preset--color--contrast);
    --gf-ctrl-btn-shadow: none;
    --gf-ctrl-shadow: none;
    --gf-ctrl-btn-color-hover-primary: var(--wp--preset--color--contrast);
    --gf-ctrl-btn-bg-color-hover-secondary: var(--gf-color-in-ctrl-primary);
    --gf-ctrl-btn-color-hover-secondary: var(--gf-color-in-ctrl-primary-contrast);
    --gf-ctrl-desc-color-error: #f00;
    --gf-ctrl-outline-width-focus: 2px;
    --gf-ctrl-file-btn-color: var(--gf-ctrl-btn-color-ctrl);
    --gf-ctrl-file-btn-bg-color: var(--gf-color-in-ctrl-primary);
    --gf-ctrl-file-btn-bg-color-hover: var(--wp--preset--color--accent) !important;
    --gf-ctrl-file-btn-color-hover:var(--wp--preset--color--contrast);
    --gf-field-pg-prog-bar-bg-color-blue: var(--gf-color-in-ctrl-primary);
    --gf-form-gap-x: 1.5rem;
    --gf-form-gap-y: 1.5rem;
    --gf-field-gap-x: 1.5rem;
    --gf-field-gap-y: 1.5rem;
    --gf-ctrl-font-family: var(--wp--preset--font-family--body);
    --gf-ctrl-font-size: var(--wp--preset--font-size--small);
    --gf-ctrl-font-weight: 400;
    --gf-field-section-border-color: var(--gf-color-in-ctrl-primary);
    --gf-ctrl-select-dropdown-option-bg-color-hover: var(--wp--preset--color--accent);
}

.gform_wrapper.gform-theme .ginput_container input:not([type="checkbox"],[type="radio"],[type="submit"]),
.gform_wrapper.gform-theme .ginput_container select,
.gform_wrapper.gform-theme .ginput_container textarea  {
    border-top: none;
    border-left: none;
    border-right: none;
}

.gform_wrapper.gform-theme .ginput_container select:not([multiple]) {
    border: none;
    border-radius: 50vw;
    background-color: #eee;
}
.gform_wrapper.gform-theme .ginput_container select option {
    color: var(--wp--preset--color--contrast);
}

.gform_wrapper.gform-theme .ginput_container .gchoice input {
    border-color: #d1d1d1;
    --gf-ctrl-radio-check-size: var(--gf-ctrl-radio-check-size-xl);
}

.gform_wrapper.gform-theme .ginput_container .gchoice input:checked {
    border-color:  var(--gf-ctrl-choice-check-color);
}

.gform_wrapper.gform-theme .ginput_container .gfield_checkbox .gfield-choice-input {
    border-radius: 50vw;
}

.gform_wrapper.gform-theme .ginput_container .gfield_checkbox .gfield-choice-input:checked {
    background-color: var(--gf-color-in-ctrl-primary);
    &::before {
        color: var(--gf-color-in-ctrl-primary-contrast);
    }
}

.gform_wrapper.gform-theme .gf-flex-choices .ginput_container > div {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row !important;
    gap: var(--gf-field-gap-x);
}

.gform_wrapper.gform-theme .gf-submit-button {
    background-color: transparent !important;
    color: var(--gf-ctrl-label-color-primary) !important;
    border: none !important;
    padding: 0.15em 0.5em 0.15em 0.15em !important;
    gap: 1.125rem !important;
    border-radius: 50vw !important;
    transition: padding 0.25s ease;
}

.gform_wrapper.gform-theme .gf-submit-button .gf-submit-button-arrow {
    background-color: var(--gf-local-bg-color);
    color: var(--gf-local-color);
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 50vw;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.gform_wrapper.gform-theme .gf-submit-button:hover .gf-submit-button-arrow {
    transform: rotate(-45deg);
}

.gform_wrapper.gform-theme .gf-submit-button .gf-submit-button-arrow > svg {
    stroke: currentColor;
    width: 1.5em;
    height: 1.5em;
}

.gform_wrapper.gform-theme .gform_footer:has(.gform-loader) .gf-submit-button .gf-submit-button-arrow:before {
    content: "";
    width: 1em;
    height: 1em;
    display: inline-block;
    border: 2px solid currentColor;
    border-bottom-color: transparent;
    border-radius: 50vw;
    animation: gf-submit-button-spinner 1s linear infinite;
}

.gform_wrapper.gform-theme .gform_footer:has(.gform-loader) .gf-submit-button .gf-submit-button-arrow > svg {
    display: none;
}

.gform_wrapper.gform-theme .gform_footer .gform-loader {
    visibility: hidden;
}

.ui-widget.ui-datepicker {
    --gf-ctrl-date-picker-bg-color: var(--wp--preset--color--base);
}

.gform-theme--framework.ui-datepicker select.ui-datepicker-month,
.gform-theme--framework.ui-datepicker select.ui-datepicker-year {
    --gf-icon-ctrl-select: url(../icon/chevron.svg);

    border-color: var(--wp--preset--color--contrast);
    color: var(--wp--preset--color--contrast);
}

.gform-theme--framework.gform-theme-datepicker.ui-datepicker .ui-datepicker-month,
.gform-theme--framework.gform-theme-datepicker.ui-datepicker .ui-datepicker-year {
    background-image: var(--gf-icon-ctrl-select);
}

/* multiselect dropdown */
.gform-theme--framework .gfield:where(.gfield--type-multiselect, .gfield--input-type-multiselect) .chosen-container {
    background-color: #eee !important;
    border: 0 !important;
    border-radius: 50vw !important;
}
.gform-theme--framework .gfield:where(.gfield--type-multiselect, .gfield--input-type-multiselect) .chosen-container .chosen-drop,
.gform-theme--framework .gfield:where(.gfield--type-select, .gfield--input-type-select) .chosen-container .chosen-drop {
    background-color: var(--wp--preset--color--base) !important;
}

@keyframes gf-submit-button-spinner {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg)
    }
}