/* Base */
.wpcz,
.wpcz *,
.wpcz *:before,
.wpcz *:after {
    box-sizing: border-box;
}

.wpcz {
    position: relative;
    font-size: 16px;
    line-height: 1.15;
    font-family: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', 'Liberation Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
    color: var(--wpcz-text-color);
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-text-size-adjust: 100%;
}

.wpcz ::selection {
    background-color: var(--wpcz-selection-bg-color);
    color: var(--wpcz-selection-text-color);
}

.wpcz a {
    color: var(--wpcz-link-color);
    text-decoration: underline;
}

.wpcz a:hover,
.wpcz a:focus {
    color: var(--wpcz-link-color-hover-and-focus);
    text-decoration: none;
}

.wpcz a:active {
    color: var(--wpcz-link-color-active);
    text-decoration: none;
}

.wpcz img {
    border-style: none;
}

.wpcz fieldset {
    margin: 0;
    padding: 0;
    min-inline-size: 0;
    border: 0;
}

.wpcz legend {
    float: left;
    inline-size: 100%;
    margin-block-end: 0;
    padding: 0;
    line-height: inherit;
}

.wpcz legend + * {
    clear: both;
}

.wpcz button,
.wpcz input,
.wpcz select,
.wpcz textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}

.wpcz button,
.wpcz input {
    overflow: visible;
}

.wpcz button,
.wpcz select {
    text-transform: none;
}

.wpcz button,
.wpcz [type='button'],
.wpcz [type='reset'],
.wpcz [type='submit'] {
    -webkit-appearance: button;
}

.wpcz ::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

.wpcz button:-moz-focusring,
.wpcz [type='button']:-moz-focusring,
.wpcz [type='submit']:-moz-focusring {
    outline: none;
}

.wpcz textarea {
    overflow: auto;
    resize: vertical;
}

.wpcz [type='checkbox'],
.wpcz [type='radio'] {
    box-sizing: border-box;
    padding: 0;
}

.wpcz input[type='number']::-webkit-inner-spin-button,
.wpcz input[type='number']::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.wpcz input[type='number'] {
    -moz-appearance: textfield;
}

.wpcz ::-webkit-input-placeholder {
    color: var(--wpcz-placeholder-text-color);
}

.wpcz :-moz-placeholder {
    color: var(--wpcz-placeholder-text-color);
    opacity: 1;
}

.wpcz ::-moz-placeholder {
    color: var(--wpcz-placeholder-text-color);
    opacity: 1;
}

.wpcz ::-ms-input-placeholder {
    color: var(--wpcz-placeholder-text-color);
}

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

.wpcz input:-webkit-autofill,
.wpcz input:-webkit-autofill:hover,
.wpcz input:-webkit-autofill:focus,
.wpcz input:-webkit-autofill:active,
.wpcz textarea:-webkit-autofill,
.wpcz textarea:-webkit-autofill:hover,
.wpcz textarea:-webkit-autofill:focus,
.wpcz textarea:-webkit-autofill:active,
.wpcz select:-webkit-autofill,
.wpcz select:-webkit-autofill:hover,
.wpcz select:-webkit-autofill:focus,
.wpcz select:-webkit-autofill:active {
    -webkit-box-shadow: inset 0 0 0 999px var(--wpcz-form-control-bg-color) !important;
    -webkit-text-fill-color: var(--wpcz-form-control-color) !important;
}

.wpcz ::-webkit-scrollbar {
    inline-size: 0.5em;
    block-size: 0.5em;
}

.wpcz ::-webkit-scrollbar-track {
    background: var(--wpcz-track-bg-color);
}

.wpcz ::-webkit-scrollbar-thumb {
    background: var(--wpcz-thumb-bg-color);
    border-radius: var(--wpcz-radius);
    transition: background 0.15s ease;
}

.wpcz ::-webkit-scrollbar-thumb:hover {
    background: var(--wpcz-thumb-bg-color-hover);
}

.wpcz ::-webkit-scrollbar-thumb:active {
    background: var(--wpcz-thumb-bg-color-active);
}
