/*
 * form container 
 */
.wpforms-field-container .wpforms-field {
    padding: 0;
    margin-bottom: 1.5rem;
}

/* 
 * form control: label
*/
.wpforms-field-container .wpforms-field .wpforms-field-label {
    font-size: 14px;
    font-weight: 500;
    line-height: 2;
    color: #2d2d2d;
    margin-bottom: 0.5rem;
}

/* 
 * form control: textbox
 */
.wpforms-field-container .wpforms-field .wpforms-field-medium,
.form-control,
.input-text,
#user_login,
#user_pass,
.wc-stripe-elements-field {
    -webkit-appearance: none;
    -moz-appearance: none;
    font-size: 14px;
    height: 40px;
    width: 100%;
    max-width: 100%;
}

div.wpforms-container-full input[type=text]:focus,
div.wpforms-container-full input[type=email]:focus,
div.wpforms-container-full select:focus,
div.wpforms-container-full textarea:focus,
.form-control:focus,
.input-text:focus,
#user_login:focus,
#user_pass:focus,
.wc-stripe-elements-field:focus {
    color: #495057;
    background-color: var(--bs-white);
    border-color: #80bdff;
    outline: none;
    box-shadow: none;
}

div.wpforms-container-full input[type=text]:focus:invalid,
div.wpforms-container-full input[type=email]:focus:invalid,
div.wpforms-container-full select:focus:invalid,
div.wpforms-container-full textarea:focus:invalid,
.form-control:focus,
.input-text:focus,
#user_login:focus,
#user_pass:focus,
.wc-stripe-elements-field:focus {
    color: #495057;
    background-color: var(--bs-white);
    border-color: #80bdff;
    outline: none;
    box-shadow: none;
}

/*
 * form control: select, option 
 */

.wpforms-field-container .wpforms-field select,
select,
select.form-control,
select.input-text,
select#user_login,
select#user_pass,
select.wc-stripe-elements-field {
    min-height: inherit;
}

.wpforms-field-container .wpforms-field select:not([size]):not([multiple]),
select.form-control:not([size]):not([multiple]),
select.input-text:not([size]):not([multiple]),
select#user_login:not([size]):not([multiple]),
select#user_pass:not([size]):not([multiple]),
select.wc-stripe-elements-field:not([size]):not([multiple]) {
    height: calc(2.25rem + 2px);
}

/*
 * form control: multi options
 */
.wpforms-field-container ul.wpforms-field-required {
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
    padding: 1rem !important;
    border-radius: 4px;
}

.wpforms-field-container ul.wpforms-field-required li label {
    font-size: 14px;
}

div.wpforms-container-full .wpforms-field.wpforms-field-checkbox ul li input,
div.wpforms-container-full .wpforms-field.wpforms-field-radio ul li input,
div.wpforms-container-full .wpforms-field.wpforms-field-payment-checkbox ul li input,
div.wpforms-container-full .wpforms-field.wpforms-field-payment-multiple ul li input,
div.wpforms-container-full .wpforms-field.wpforms-field-gdpr-checkbox ul li input {
    min-width: 14px;
    /*min-width: var(--wpforms-field-size-checkbox-size);*/
}

div.wpforms-container-full input[type=checkbox]:focus:before,
div.wpforms-container-full input[type=radio]:focus:before {
    box-shadow: none;
}

/*
 * form control: button 
 */
div.wpforms-container-full input[type=submit]:not(:hover):not(:active),
div.wpforms-container-full button[type=submit]:not(:hover):not(:active),
div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active),
.wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active),
.wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active),
.wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) {
    padding: 13px 27px;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 600;
    height: inherit;
    width: 100%;
    background: #7952b3;
    color: var(--bs-white);
}

div.wpforms-container-full input[type=submit]:hover,
div.wpforms-container-full input[type=submit]:active,
div.wpforms-container-full button[type=submit]:hover,
div.wpforms-container-full button[type=submit]:active,
div.wpforms-container-full .wpforms-page-button:hover,
div.wpforms-container-full .wpforms-page-button:active,
.wp-core-ui div.wpforms-container-full input[type=submit]:hover,
.wp-core-ui div.wpforms-container-full input[type=submit]:active,
.wp-core-ui div.wpforms-container-full button[type=submit]:hover,
.wp-core-ui div.wpforms-container-full button[type=submit]:active,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:hover,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:active {
    padding: 13px 27px;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 600;
    height: inherit;
    width: 100%;
    background: #6b47a1;
    color: var(--bs-white);
}

div.wpforms-container-full input[type=submit]:focus:after,
div.wpforms-container-full button[type=submit]:focus:after,
div.wpforms-container-full .wpforms-page-button:focus:after,
.wp-core-ui div.wpforms-container-full input[type=submit]:focus:after,
.wp-core-ui div.wpforms-container-full button[type=submit]:focus:after,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:focus:after {
    border: none;
}

/*
 * form errors
 */
div.wpforms-container-full .wpforms-form .wpforms-field input.wpforms-error:focus,
div.wpforms-container-full .wpforms-form .wpforms-field input.user-invalid:focus,
div.wpforms-container-full .wpforms-form .wpforms-field textarea.wpforms-error:focus,
div.wpforms-container-full .wpforms-form .wpforms-field textarea.user-invalid:focus,
div.wpforms-container-full .wpforms-form .wpforms-field select.wpforms-error:focus,
div.wpforms-container-full .wpforms-form .wpforms-field select.user-invalid:focus {
    background-color: var(--bs-white);
    outline: none;
    box-shadow: none;
}

div.wpforms-container-full .wpforms-form .wpforms-field input.wpforms-error:hover,
div.wpforms-container-full .wpforms-form .wpforms-field input.user-invalid:hover,
div.wpforms-container-full .wpforms-form .wpforms-field textarea.wpforms-error:hover,
div.wpforms-container-full .wpforms-form .wpforms-field textarea.user-invalid:hover,
div.wpforms-container-full .wpforms-form .wpforms-field select.wpforms-error:hover,
div.wpforms-container-full .wpforms-form .wpforms-field select.user-invalid:hover {
    box-shadow: none;
}

/*
 * form notification
 */
div.wpforms-container-full .wpforms-confirmation-container-full,
div[submit-success]>.wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
    background: none;
    border: none;
    box-sizing: border-box;
}

div.wpforms-container-full .wpforms-confirmation-container-full,
div[submit-success]>.wpforms-confirmation-container-full {
    color: #333333;
    margin: 0 auto 24px;
    padding: 25px 15px 15px;
    overflow-wrap: break-word;
}