:root {
    --checkbox: url("data:image/svg+xml,%3Csvg width='11' height='8' viewBox='0 0 11 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.825 5.225L1.65 3.05C1.46667 2.86667 1.23767 2.77933 0.963 2.788C0.687666 2.796 0.458333 2.89167 0.275 3.075C0.0916668 3.25833 0 3.49167 0 3.775C0 4.05833 0.0916668 4.29167 0.275 4.475L3.125 7.325C3.30833 7.50833 3.54167 7.6 3.825 7.6C4.10833 7.6 4.34167 7.50833 4.525 7.325L10.2 1.65C10.3833 1.46667 10.471 1.23733 10.463 0.962C10.4543 0.687333 10.3583 0.458334 10.175 0.275001C9.99167 0.0916672 9.75833 0 9.475 0C9.19167 0 8.95833 0.0916672 8.775 0.275001L3.825 5.225Z' fill='white'/%3E%3C/svg%3E%0A");
    --chevron: url("data:image/svg+xml,%3Csvg width='13' height='8' viewBox='0 0 13 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.84926 7.49357L0.204192 1.84847C-0.0680644 1.57622 -0.0680644 1.13482 0.204192 0.862592L0.8626 0.204185C1.13439 -0.0676068 1.57489 -0.0681295 1.84732 0.203024L6.34222 4.67686L10.8371 0.203024C11.1095 -0.0681291 11.55 -0.0676063 11.8218 0.204186L12.4802 0.862593C12.7525 1.13485 12.7525 1.57625 12.4802 1.84847L6.83514 7.49354C6.56292 7.7658 6.12152 7.7658 5.84926 7.49357Z' fill='%239D9FA6'/%3E%3C/svg%3E%0A");
}

#elementor-popup-modal-214 {
    .dialog-message {
        max-height: 90vh !important;
    }
    .dialog-widget-content {
        background: none;
        .bookmaker_form_wrapper {
            /* Steps */
            .step_1, .step_2, .step_3 {
                position: relative;
                background-image: unset !important;
                &::before,
                &::after {
                    content: '';
                    position: absolute;
                    border-radius: 100%;
                    width: 100%;
                    height: 100%;
                    left: 0;
                    top: 0;
                    transition: all 0.5s;
                }
                &::before {
                    background-image: radial-gradient(at center center, #9D9FA63D 0%, #999999 100%);
                    opacity: 1;
                }
                &::after {
                    background-image: radial-gradient(at center center, rgba(191, 234, 68, 0.06) 0%, rgba(191, 234, 68, 0.24) 100%);
                    box-shadow: inset 2.36px 2.36px 4px 0 rgba(191, 234, 68, 0.17);
                    border: 1px solid rgba(191, 234, 68, 0.16);
                    opacity: 0;
                }
            }
            /* Steps Text */
            .step_1_text,
            .step_2_text,
            .step_3_text {
                width: 100%;
                height: 100%;
                position: absolute;
                top: 0;
                left: 0;
                &::before,
                &::after {
                    position: absolute;
                    border-radius: 100%;
                    width: 100%;
                    height: 100%;
                    transition: all 0.5s;
                    font-family: "Inter Custom",sans-serif;
                    font-size: 28px;
                    font-weight: 700;
                    line-height: 120%;
                    width: fit-content;
                    height: 65%;
                    text-align: center;
                    vertical-align: middle;
                    left: 50%;
                    top: 50%;
                    transform: translate(-50%, -50%);
                }
                &::before {
                    color: rgba(157, 159, 166, 1);
                    opacity: 1;
                }
                &::after {
                    background: linear-gradient(90deg, rgba(191, 234, 68, 1), rgba(244, 255, 163, 1));
                    -webkit-background-clip: text;
                    -webkit-text-fill-color: transparent;
                    background-clip: text;
                    opacity: 0;
                }
            } 
            .step_1_text {
                &::before, 
                &::after {
                    content: '1';
                }
            }
            .step_2_text {
                &::before, 
                &::after {
                    content: '2';
                }
            }
            .step_3_text {
                &::before, 
                &::after {
                    content: '3';
                }
            }
            /* Steps' Dividers */
            .divider_1, .divider_2 {
                position: relative;
                &::before {
                    content: '';
                    position: absolute;
                    width: 100%;
                    max-width: 0;
                    background: rgba(166, 205, 54, 1);
                    transition: all 0.5s;
                }
            }

            /* Active State */
            &.bookmaker_step_1, &.bookmaker_step_2, &.bookmaker_step_3 {
                .step_1, 
                .step_1_text {
                    &::before {
                        transition: all 0.5s;
                        opacity: 0;
                    }
                    &::after {
                        transition: all 0.5s;
                        opacity: 1;
                    }
                }
            }
            
            &.bookmaker_step_2, &.bookmaker_step_3 {
                .step_2, 
                .step_2_text {
                    &::before {
                        transition: all 0.5s;
                        opacity: 0;
                    }
                    &::after {
                        transition: all 0.5s;
                        opacity: 1;
                    }
                }
                .divider_1::before {
                    max-width: 100%;
                    transition: all 0.5s;
                }
            }

            &.bookmaker_step_3 {
                .step_3, 
                .step_3_text {
                    &::before {
                        transition: all 0.5s;
                        opacity: 0;
                    }
                    &::after {
                        transition: all 0.5s;
                        opacity: 1;
                    }
                }
                .divider_2::before {
                    max-width: 100%;
                    transition: all 0.5s;
                }
            }

            /* Form Styling */
            .bookmaker_form_inner {
                overflow: hidden;
                transition: all 0.75s;
                form {
                    .elementor-field-label:after {
                        display: none;
                    }
                    .elementor-field-type-step {
                        position: absolute;
                        top: 0;
                        left: 0;
                        width: 100%;
                        transition: all 0.35s;
                        opacity: 1;
                        display: flex !important;
                        pointer-events: all;
                        &.elementor-hidden {
                            pointer-events: none;
                            transition: all 0.35s;
                            opacity: 0;
                        }
                        .starting_description {
                            h2 {
                                font-family: "Inter Custom",sans-serif;
                                font-weight: 600;
                                font-size: 20px;
                                line-height: 150%;
                                color: rgba(166, 205, 54, 1);
                                text-transform: uppercase;
                                margin-bottom: 1px;
                            }
                            p {
                                font-family: "Inter Custom",sans-serif;
                                font-weight: 500;
                                font-size: 14px;
                                line-height: 20px;
                                letter-spacing: 0.1px;
                                margin-bottom: 9px;
                            }
                        }
                        input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
                            padding: 14px 10px;
                        }
                        /* Chrome, Safari, Edge */
                        input[type="number"]::-webkit-inner-spin-button,
                        input[type="number"]::-webkit-outer-spin-button {
                            -webkit-appearance: none;
                            margin: 0;
                        }

                        /* Firefox */
                        input[type="number"] {
                            -moz-appearance: textfield;
                        }
                        .elementor-field-type-radio {
                            display: flex;
                            flex-direction: row;
                            flex-wrap: nowrap;
                            justify-content: space-between;
                            & > label {
                                padding-bottom: 0;
                            }
                            .elementor-field-subgroup {
                                flex-basis: unset;
                                .elementor-field-option {
                                    padding: 0;
                                    &:not(:last-child){
                                        padding-right: 8px;
                                    }
                                    input {
                                        display: none;
                                        &:checked + label:after{
                                            opacity: 1;
                                            transition: opacity 0.25s;
                                        }
                                    }
                                    label {
                                        cursor: pointer;
                                        position: relative;
                                        padding-left: 26px;
                                        font-size: 16px;
                                        &::before {
                                            content: "";
                                            position: absolute;
                                            top: 0;
                                            left: 0;
                                            width: 20px;
                                            height: 20px;
                                            background: rgba(49, 56, 58, 0.6);
                                            border-radius: 4px;
                                        }
                                        &::after {
                                            content: "";
                                            position: absolute;
                                            background-image: var(--checkbox);
                                            background-size: 10.46px 7px;
                                            left: 4.77px;
                                            width: 10.46px;
                                            height: 7px;
                                            top: 50%;
                                            transform: translateY(-50%);
                                            transition: opacity 0.25s;
                                            opacity: 0;
                                        }
                                    }
                                }
                            }
                        }
                        .elementor-field-type-upload {
                            label {
                                padding-bottom: 52px;
                                position: relative;
                                .file_input {
                                    h2 {
                                        font-family: "Inter Custom",sans-serif;
                                        font-weight: 500;
                                        font-size: 16px;
                                        line-height: 150%;
                                        color: white;
                                        margin-top: 0;
                                        margin-bottom: 2px;
                                    }
                                    p {
                                        font-family: "Inter Custom",sans-serif;
                                        font-weight: 500;
                                        font-size: 16px;
                                        line-height: 150%;
                                        color: rgba(157, 159, 166, 1);
                                        margin-bottom: 0;
                                    }
                                }
                                &::before {
                                    content: 'ПРИКАЧИ СНИМКИ';
                                    position: absolute;
                                    left: 0;
                                    bottom: 0;
                                    background-color: rgba(37, 37, 37, 1);
                                    width: 203px;
                                    height: 43px;
                                    display: flex;
                                    align-items: center;
                                    justify-content: center;
                                    font-family: "Inter Custom",sans-serif;
                                    font-weight: 700;
                                    font-size: 14px;
                                    line-height: 100%;
                                    color: white;
                                    border: 1px solid rgba(166, 205, 54, 0.93);
                                    border-radius: 5px;
                                }
                                &::after {
                                    content: attr(data-text, "");
                                    display: block;
                                    position: absolute;
                                    bottom: 0;
                                    left: 215px;
                                    font-family: "Inter Custom",sans-serif;
                                    font-weight: 500;
                                    font-size: 16px;
                                    line-height: 150%;
                                    color: white;
                                    padding: 0;
                                }
                            }
                            input[type="file"] {
                                width: 100px;
                                opacity: 0;
                                position: absolute;
                                bottom: 0;
                                left: 100px;
                            }
                        }
                        .custom_accordion {
                            .custom_accordion_trigger {
                                font-family: "Inter Custom",sans-serif;
                                font-weight: 700;
                                font-size: 14px;
                                line-height: 105%;
                                letter-spacing: 0;
                                color: white;
                                background-color: rgba(36, 41, 43, 1);
                                width: 100%;
                                padding: 8.5px 11px 8.5px 13px;
                                border-radius: 4px;
                                position: relative;
                                transition: all 0.25s;
                                cursor: pointer;
                                margin-bottom: 0px;
                                &::before {
                                    content: '';
                                    position: absolute;
                                    top: 50%;
                                    right: 11px;
                                    transform: translateY(-50%);
                                    background-image: var(--chevron);
                                    width: 12.68px;
                                    height: 7.7px;
                                    transition: all 0.25s;
                                }
                            }
                            .custom_accordion_content {
                                background-color: rgba(49, 56, 58, 1);
                                overflow: hidden;
                                color: white;
                                height: auto;
                                max-height: 0;
                                transition: all 0.25s;
                                padding: 0px 16.5px;
                                margin-bottom: 2px;
                                * {
                                    font-family: "Inter Custom",sans-serif;
                                    font-weight: 500;
                                    font-size: 12px;
                                    line-height: 105%;
                                    margin: 0;
                                }
                                ol {
                                    list-style-type: none;
                                    padding: 0;
                                }
                                ul {
                                    padding-left: 3ch;
                                    list-style: disc;
                                }
                            }
                            &.active {
                                .custom_accordion_trigger {
                                    border-bottom-right-radius: 0;
                                    border-bottom-left-radius: 0;
                                    &::before {
                                        transform: translateY(-50%) rotate(180deg);
                                        transition: all 0.25s;
                                    }
                                }
                                .custom_accordion_content {
                                    padding: 10px 16.5px;
                                    max-height: 1000px;
                                    transition: all 0.25s;
                                }
                            }
                        }
                        .elementor-field-type-acceptance {
                            .elementor-field-option {
                                input[type="checkbox"] {
                                    display: none;
                                    &:checked + label:after {
                                    opacity: 1;
                                    transition: opacity 0.25s;
                                    }
                                }
                                label {
                                    font-family: "Inter Custom",sans-serif;
                                    font-weight: 600;
                                    font-size: 16px;
                                    line-height: 150%;
                                    cursor: pointer;
                                    position: relative;
                                    padding-left: 26px;
                                    &::before {
                                        content: "";
                                        position: absolute;
                                        top: 0;
                                        left: 0;
                                        width: 20px;
                                        height: 20px;
                                        background: rgba(49, 56, 58, 0.6);
                                        border-radius: 4px;
                                    }
                                    &::after {
                                        content: "";
                                        position: absolute;
                                        display: block;
                                        background-image: var(--checkbox);
                                        background-size: 10.46px 7px;
                                        left: 4.77px;
                                        width: 10.46px;
                                        height: 7px;
                                        top: 7px;
                                        /* transform: translateY(-50%); */
                                        transition: opacity 0.25s;
                                        opacity: 0;
                                    }
                                }
                            }
                        }
                        .e-form__buttons {
                            display: flex;
                            flex-wrap: nowrap;
                            gap: 6px;
                            padding-right: 5px;
                            padding-top: 5px;
                            button[data-direction="next"], 
                            button[type="submit"] {
                                background: linear-gradient(180deg, #A6CD36EE 0%, #728E1F 100%);
                            }
                        }
                    }
                    .elementor-field-group-field_registered_company_name,
                    .elementor-field-group-field_registered_company_vat,
                    .elementor-field-group-field_property_images,
                    .elementor-field-group-field_property_description {
                        height: auto;
                        max-height: 150px;
                        transition: all 0.3s;
                        overflow: hidden;
                        &.inactive {
                            max-height: 0px;
                            transition: all 0.3s;
                        }
                    }
                }
                .bookmaker_error,
                .bookmaker_thank_you {
                    opacity: 0;
                    top: 0;
                    left: 0;
                    position: absolute;
                    width: 100%;
                    transition: all 0.25s;
                    pointer-events: none;
                }
                &.bookmaker_form_error .bookmaker_error,
                &.bookmaker_form_submitted .bookmaker_thank_you {
                    pointer-events: all;
                    transition: all 0.25s;
                    opacity: 1;
                } 
                /* Fix later for error messaging */
                .elementor-message {
                    display: none;
                }
            }
            .bookmakers_form_close {
                cursor: pointer;
            }
        }
    }
}

@media(max-width: 1024px){
    #elementor-popup-modal-214 {
        .dialog-widget-content {
            .bookmaker_form_wrapper {
                .bookmaker_form_inner {
                    form {
                        .elementor-field-type-step {
                            .starting_description {
                                h2 {
                                    font-weight: 700;
                                    font-size: 24px;
                                    line-height: 120%;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
