﻿/*
    Custom Styles for EPiForms, loaded via DigitalDesignFormContainerBlock.
    Separate styles and un-bundled due to limitations with SPA and DDS 
    shared functionality.
*/

/*#region Error-Styling*/
.ValidationFail > .vf-input,
.ValidationFail > .vf-input:hover,
.ValidationFail > .vf-input:focus,
.ValidationFail > .vf-input.vf-input--data {
    border-color: rgb(249, 59, 24);
}

.ValidationFail > .vf-custom-form-label,
.ValidationFail > .vf-input:focus ~ label,
.ValidationFail > .vf-input--data ~ label {
    color: rgb(249, 59, 24) !important;
}

.mdformconnect {
    display: none;
}

.dynamics-error-message {
    color: rgb(249, 59, 24);
}

/*#endregion */
/*#region DDB-Overrides*/
.vf-form {
    background-color: inherit;
}

@media (max-width: 768px) {
    .vf-form {
        min-height: 0px;
    }

    img.FormCaptcha__Image.w-75.h-auto {
        width: 100% !important;
    }
}

.vf-input-container .vf-input.vf-input--data ~ label,
.vf-input-container .vf-input:focus ~ label {
    background-color: #fff;
}

.vf-input-container .vf-input {
    min-width: 0;
    padding: 16px 16px;
}

.vf-input-container .vf-input.vf-input--data ~ label {
    top: -8px;
}

label.Form__Element__Caption.vf-custom-form-label.vf-label-background--inherit {
    background-color: inherit;
}

/*#endregion */

/*#region custom-radio element*/
.vf-dds-radio-button {
    display: block;
    position: relative;
    padding-left: 35px;
    margin: 18px 0 0;
    cursor: pointer;
    font-size: 20px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.vf-dds-radio-button .vf-custom-form-label {
    margin-bottom: 0;
}

.vf-dds-radio-button input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.vf-dds-radio-button__checkmark {
    position: absolute;
    top: 3px;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #fff;
    border: 1px solid #a4a9ac;
    border-radius: 50%;
}

.vf-dds-radio-button:hover input ~ .vf-dds-radio-button__checkmark {
    background-color: #f2f2f2;
}

.vf-dds-radio-button input:checked ~ .vf-dds-radio-button__checkmark {
    background-color: #2071b5;
    border: none;
}

.vf-dds-radio-button__checkmark:after {
    content: '';
    position: absolute;
    display: none;
}

.vf-dds-radio-button input:checked ~ .vf-dds-radio-button__checkmark:after {
    display: block;
}

.vf-dds-radio-button .vf-dds-radio-button__checkmark:after {
    top: 8px;
    left: 8px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #fff;
}
/*#endregion */

/*#region custom-chekbox element*/
.vf-checkbox-list {
    line-height: 28px;
}

.vf-checkbox-list-item {
    margin: 18px 0 0;
    position: relative;
    padding-left: 40px;
}

.vf-custom-form-label {
    font-size: 20px;
    font-weight: 400;
    line-height: 28px;
}

.vf-checkbox-list .vf-checkbox-list-item input {
    position: absolute;
    top: 3px;
    left: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #fff;
    border-radius: 4px 4px 4px 4px;
    border: 1px solid #a4a9ac;
    height: 28px;
    width: 28px;
    line-height: 1;
    vertical-align: middle;
    margin-right: 10px;
    cursor: pointer;
}

.vf-checkbox-list .vf-checkbox-list-item input:before {
    content: '';
    position: absolute;
    transition: -webkit-transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
    border-bottom: 3px solid #d8d8d8;
    border-right: 3px solid #d8d8d8;
    height: 16px;
    width: 8px;
    margin: auto;
    left: 9px;
    top: 3px;
    -webkit-transform: rotate(45deg) scale(0);
    transform: rotate(45deg) scale(0);
}

.vf-checkbox-list .vf-checkbox-list-item input:checked:before {
    -webkit-transform: rotate(45deg) scale(1);
    transform: rotate(45deg) scale(1);
    border-bottom: 3px solid #4e4b48;
    border-right: 3px solid #4e4b48;
}

.vf-checkbox-list .vf-checkbox-list-item input:hover:before {
    -webkit-transform: rotate(45deg) scale(1);
    transform: rotate(45deg) scale(1);
}

.vf-checkbox-list .vf-checkbox-list-item input:disabled {
    background: #f1f1f1;
}

.vf-checkbox-list .vf-checkbox-list-item input:disabled:before {
    -webkit-transform: rotate(45deg) scale(0);
    transform: rotate(45deg) scale(0);
}

.vf-checkbox-list .vf-checkbox-list-item input:disabled.pre-selected:before {
    -webkit-transform: rotate(45deg) scale(1);
    transform: rotate(45deg) scale(1);
    border-bottom: 3px solid #d8d8d8;
    border-right: 3px solid #d8d8d8;
}

.vf-checkbox-list .vf-checkbox-list-item .vf-checkbox-option {
    display: inline-block;
    margin-bottom: 0;
    opacity: 1;
    transition: opacity 0.15s ease-in-out;
    vertical-align: middle;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}
/*#endregion */

.Form__Status__Message.Form__Warning__Message {
    color: rgb(249 59 24 / 1) !important;
}
