[v-cloak] {
    display: none;
}

body {
    padding: 0;
    margin: 0;
    padding-bottom: 20px;
}
.modal_open {
    overflow: hidden;
}

.modal_function_block {
    margin-top: 40px;
}
.mobile_function_block {
    display: none;
}
.modal_function_block_text {
    /*height: 400px;*/
    margin-top: 20px;
}
.modal_function_block_text > ul {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: space-between;
    height: 100%;
}
.modal_function_block_text > ul > li {
    width: 45%;
}
.list_marked {
    list-style: disc;
    margin-left: 20px;
}

.modal_function_block_text li {
    margin-top: 10px;
    margin-bottom: 10px;
}

.saved_data span {
    cursor: pointer;
    color: red;
}
.saved_data {
    position: fixed;
    bottom: 10px;
}

.index_modal {
    --modal_h: 900px;
    --modal_w: 700px;
    width: var(--modal_w);
    height: var(--modal_h);
    position: fixed;
    top: calc(50vh - (var(--modal_h) / 2));
    left: calc(50vw - (var(--modal_w) / 2));
    background-color: #fff;
    border: 1px solid var(--orange);
    overflow: auto;
    /*display: none;*/
}

.index_modal {
    padding: 40px;
    z-index: 100;
}

h1 span {
    font-weight: 400;
}
.seria_main_info_text div {
    margin-bottom: 20px;
}
.modal_top {
    margin-top: 20px;
}

.modal_params {
    display: flex;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 20px;
    color: var(--grey);
}
.modal_param_name {
    width: 100px;
}
.modal_param_value {
    color: var(--orange);
}
.modal_param_value span {
    font-weight: 400;
}
.modal_sort_description {
    font-weight: 400;
    font-size: 20px;
}
.modal_info_text {
    font-weight: 400;
    font-size: 20px;
    padding-top: 20px;
}
.modal_info_text div {
    margin-bottom: 20px;
}

.modal_function_block_header {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 26px;
    color: var(--orange);
}

.modal_hover {
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    background: #000;
    opacity: 0.6;
    z-index: 10;
    /*display: none;*/
}

.seria_line_header_wrapper {
    width: 100%;
    margin-top: 40px;
    background-color: #f60;
    height: 70px;
}
.seria_line_header_wrapper .container {
    height: 100%;
}
.seria_line_header {
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: space-between;
    height: 100%;
    color: var(--white);
}
.seria_line_header .logo {
    width: 220px;
}
.seria_line_header .logo img {
    width: 100%;
    /*border: 1px solid;*/
    margin-top: 5px;
}

.seria_line_header .phones {
    display: flex;
    align-items: center;
}
.seria_line_header a,
.footer_info_contacts a {
    color: inherit;
}

.seria_line_header .phones_icon {
    width: 30px;
}
.seria_line_header .phones_icon svg {
}
.seria_line_header .phones_text .main_phone,
.seria_line_header .phones_text .second_phone {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 16px;
}

.seria_line_header .work_info {
    border-left: 1px solid;
    padding-left: 10px;
    margin-left: 10px;
}

.seria_line_header .work_info {
    font-size: 12px;
    height: 39px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}
.web_info {
    font-size: 12px;
    width: 280px;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding-right: 20px;
}
.web_info_site {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 16px;
    text-decoration: underline;
    text-decoration-skip-ink: none;
}

.line_header_login {
    font-size: 12px;
    height: 39px;
    display: flex;
    align-items: center;
}
.line_header_login_icon {
    border: 2px solid var(--white);
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
}
.line_header_login_icon svg {
    fill: var(--white);
}
.line_header_login_text a {
    font-weight: 600;
    color: var(--white);
    text-decoration: underline;
}
.header_middle_block {
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: center;
}
.header_middle_block .header_action,
.header_middle_block .header_action .header_action_catalog {
    width: fit-content;
    padding-bottom: 0;
}

.h2_header {
    font-weight: 500;
    color: var(--orange);
    margin-bottom: 10px;
    font-size: 24px;
    width: 100%;
    position: relative;
}
.h2_header:after {
    content: "";
    width: -webkit-fill-available;
    top: 20px;
    position: absolute;
    border-bottom: 1px solid;
    margin-left: 5px;
}
.h3_page {
    font-family: var(--font-family);
    font-weight: 500;
    color: var(--orange);
    margin-bottom: 10px;
    font-size: 24px;
    width: 100%;
}

.seria_page .text_header {
    width: fit-content;
    font-size: 24px;
    padding-right: 20px;
}
.seria_page .text_header h3 {
    margin: 10px 0;
    font-weight: 500;
    font-size: 28px;
}
.seria_page .seria_description {
    font-size: 16px;
    font-weight: 400;
    color: #4b4b4b;
    margin-bottom: 20px;
}
.seria_modal_link {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 12px;
    text-decoration: underline;
    text-decoration-skip-ink: none;
    text-align: center;
    color: var(--orange);
    margin-bottom: 20px;
    cursor: pointer;
}
.result .header_icons {
    width: 100%;
}
.result .standart_icon {
    width: 50px;
    height: 50px;
}

.seria_page .seria_main_info_text {
    width: 620px;
    font-size: 16px;
}
.seria_page .seria_main_info_text .column_field {
    flex-wrap: wrap;
    align-content: space-between;
    display: flex;
    flex-direction: column;
    height: 340px;
}
.seria_page .seria_main_info_text .column_field div {
    width: 47%;
}

.seria_page .seria_main_info {
    margin-top: 20px;
}
/*.seria_info,*/
/*.series_selector{*/
/*    border-bottom: 1px solid;*/
/*}*/

.select_intro {
    padding: 20px;
    font-weight: 500;
    font-size: 24px;
    text-align: center;
    margin-top: 100px;
}

.seria_info_header {
    display: flex;
}
.seria_image_block img{
    max-width: 100%;
}

.series_selector_line {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}
.proffy_checkbox {
    color: var(--light-gray);
    font-size: 14px;
}
.proffy_checkbox input[type="checkbox"] {
    margin: 0 2px;
}

.agreement_input {
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--orange);
    font-size: 1.2em;
}
.agreement_input .lc_checkbox {
    margin-right: 20px;
}
.agreement_input_link {
    text-align: center;
    margin: 10px 0;
}
.agreement_input_link a {
    text-decoration: underline;
    color: var(--light-gray);
    font-style: italic;
}

.mobile_footer_wrapper {
    display: none;
}

.contact_page h1 {
    color: var(--orange);
}
.contact_page_line {
    display: flex;
    margin-bottom: 20px;
    align-items: center;
}
.contact_page_icon {
    margin-right: 20px;
}

.contact_page_line_phones {
    align-items: start;
}
.contact_page_line_phones .contact_page_phone_first a {
    color: var(--orange);
}
.contact_page_line a {
    color: var(--grey);
}

.field_group {
    border: none;
    background-color: #fff;
    padding: 20px;
    margin-bottom: 20px;
}
.field_group_title {
    font-weight: 600;
    font-size: 16px;
    display: flex;
    justify-content: space-between;
    gap: 24px;
}
.btn-reset{
    cursor: pointer;
    padding: 4px 0px;
    font-size: 12px;
    background-color: transparent;
    border: none;
    color: #979797;
}

.list_label_flex {
    display: flex;
    flex-wrap: wrap;
}
.array_input {
    display: block;
    margin-top: 15px;
    width: 50px;
    font-size: 16px;
    cursor: pointer;
}
.array_input.array_input--matched{
    color: var(--orange);
}
.array_input input {
    display: none;
}
.array_input input[type="radio"]:checked {
    display: none;
}
.array_input:has(input:disabled) {
    cursor: default;
    color: #ccc;
}
.array_input:hover,
.array_input:has(input:checked) {
    color: var(--orange);
}
.label_block {
    display: flex;
    font-size: 16px;
    margin-top: 16px;
    align-items: center;
    cursor: pointer;
    font-weight: 400;
}
.label_block:has(input:checked) {
    color: var(--orange);
}
.configurator-group h3 {
    font-weight: 500;
    color: var(--orange);
    margin: 24px 0 10px;
    font-size: 24px;
    grid-column: 1/3;
}
.configurator-group {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 20px;
}

.configurator-group .col-two {
    grid-column: 1/3;
}

.permissible_range {
    margin-top: 16px;
    color: var(--light-gray);
}
.input_range {
    padding: 5px;
    width: 100px;
    border-radius: 5px;
    border: 1px solid var(--light-gray);
}
.label_block:has(input[type="number"]) {
    gap: 8px;
    color: var(--light-gray);
}
.label_block:has(input[disabled]){
    color: #ccc;
}
.label_block_box {
    margin-top: 16px;
}
.seria_result_header {
    background-color: #fff;
    padding: 12px 4px;
    margin-bottom: 20px;
}
.seria_annotation {
    text-align: center;
    margin-bottom: 20px;
}
.seria_result_actions{
    margin-bottom: 16px;
}
.seria_result__start_message{
    text-align: center;
}

.btn.gray_btn {
    font-weight: 600;
    font-size: 16px;
    color: var(--grey);
    background-color: #f5f5f5;
    border: none;
}
#vue-price-block,
#vue-article-block {
    text-align: center;
}

.title-price-value {
    font-weight: 500;
    font-size: 24px;
    color: var(--orange);
}
.price-value {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 36px;
    text-align: center;
    color: var(--orange);
}
.result_model_box {
    margin-top: 20px;
}

#vue-characteristics-content {
    margin-top: 48px;
    font-size: 16px;
    color: var(--grey);
}
#vue-characteristics-content > div {
    margin-bottom: 20px;
}
#vue-characteristics-content div span {
    display: block;
}
#vue-characteristics-content div span:last-child {
    font-weight: 700;
}
.accessory-item,
.accessory-card {
    display: grid;
    grid-template-columns: 96px 1fr;
    gap: 28px;
    background-color: #fff;
    padding: 20px;
}
.accessory-item{
    border-bottom: 1px solid #ccc;
    cursor: pointer;
    margin-bottom: 5px;
    transition: all 0.3s;
}
.accessory-item:hover{
    box-shadow: 5px 5px 5px #ccc;
}
.accessory-item:last-child{
    border: none;
}
.accessory-card:has(.accessory-card-warning){
    border: 1px red solid;
}
.accessory-item img,
.accessory-card img {
    max-width: 100%;
}
.accessory-card-article{
    font-size: 18px;
    font-weight: 700;
    color: var(--orange);
}

.accessory-card-actions{
    margin-top: 16px;
}
.accessory-edit-btn,
.accessory-remove-btn{
    background: transparent;
    border: none;
    text-decoration: underline;
    color: #4e4e4e;
    cursor: pointer;
}

.accessory-add-btn{
    width: 100%;
    padding: 32px;
    border: #4b4b4b 2px dashed;
    background: transparent;
    font-weight: 700;
    color: #4b4b4b;
    cursor: pointer;
}

.accessory-popup-overlay{
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: #00000036;
    display: none;
    z-index: 10;
}
.accessory-popup-overlay.accessory-popup-visible {
    display: block;
}
.accessory-card-warning{
    color: red;
}
.accessory-popup{
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #fff;
    padding: 20px;
    width: 480px;
}
.accessory-item-article{
    color: var(--orange);
    font-weight: 700;
    font-size: 18px;
}
.accessory-slots-list{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.accessory-popup-close{
    background-color: transparent;
    border: none;
    cursor: pointer;
}
.accessory-popup-header{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.index_modal{
    position: fixed;
    z-index: 100000;
}
.filters_actions {
    margin-top: 16px;
}
.mobile-only{
    display: none;
}
.categories-ul{
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 20px;
}
.categories-ul img{
    max-width: 100%;
}
.category-item{
    padding: 20px;
    background-color: #fff;
    border-radius: 20px;
}
.result-desktop.fixed-block {
    position: fixed;
    max-width: 300px;
    top: 8px;
}
.result:has(.fix-down){
    display: flex;
    height: 100%;
    align-items: end;
}
.result-desktop.fix-down{
    position: static;
}



@media (min-width: 900px) {
    .cart-notification{
        display: none;
    }
}
@media (max-width: 900px) {
    .categories-ul{
        grid-template-columns: 1fr 1fr;
    }
    .mobile-only{
        display: block;
    }
    .seria_result_actions{
        margin-bottom: 0;
    }
    .accessory-popup{
        width: 400px;
    }
    .col-one{
        grid-column: 1/3;
    }
    .accessory-slot-item{
        padding: 0 20px;
    }
    .right_block,
    .result-desktop,
    .seria_result_header{
        display: none;
    }
    .right_block:has(.mobile-only.show){
        display: block;
    }
    .right_block.fixed .mobile-only.show{
        box-shadow: 0 3px 10px 3px #00000030;
    }
    .mobile-only.show{
        position: fixed;
        top: 8px;
        width: 95vw;
        transition: all .3s;
        border-radius: 20px;
        background-color: #fff;
    }
    .container:has(.mobile-only.show) .h2_header {
        margin-top: 240px;
        transition: all 0.8s;
    }
    .mobile_seria_info_block_action{
        border-radius: 20px;
    }
    .characteristics-mobile-item{
        display: grid;
        grid-template-columns: 1fr 1fr;
        font-size: 12px;
        gap:16px;
        margin-bottom: 12px;
    }
    .characteristics-mobile-item .characteristics-mobile-item-param{
        font-weight: 700;
    }
    #vue-add-to-cart-btn-mobile,
    .seria_hint_text,
    #vue-price-value-mobile,
    .mobile_result_block_img,
    #vue-add-to-cart-btn-mobile,
    .seria_result_actions,
    .mobile_result_block_text{
        transition: all 0.3s;
    }
    .mobile-only.show.scroll-up{
        transition: none;
    }
    .mobile-only.scroll-down{
        transition: none;
    }
    .right_block.fixed .mobile-only.scroll-down{
        width: 80vw;
        left: 50%;
        transform: translate(-50%);
    }
    .right_block.fixed .scroll-down .seria_hint_text {
        padding: 0;
        opacity: 0;
        border-color: #00000000;
        width: 0px;
        height: 0px;
        transition: all 0.3s;
    }
    .right_block.fixed .scroll-down #vue-price-value-mobile{
        font-size: 14px;
        transition: all 0.3s;
    }
    .right_block.fixed .scroll-down .mobile_result_block_img {
        width: 80px;
        transition: all 0.3s;
    }
    .right_block.fixed .scroll-down #vue-add-to-cart-btn-mobile{
        margin-top: 8px;
        font-size: 14px;
        height: 28px;
        transition: all 0.3s;
    }
    .right_block.fixed .scroll-down .seria_result_actions{
        margin-bottom: 0px;
        transition: all 0.3s;
        height: 0;
        overflow: hidden;
    }
    .right_block.fixed .scroll-down .mobile_seria_info_block_action{
        display: none;
    }
    .right_block:not(.fixed) .mobile-only.show {
        border-bottom: 2px solid #ccc;
    }
    .right_block:not(.fixed) .mobile-only.show:has(.result_data_wrapper[style="display: none;"]) {
        border-bottom: none;
    }
    .cart-notification{
        position: fixed;
        top: 8px;
        left: 50%;
        transform: translate(-50%);
        background-color: #fff;
        box-shadow: 0 3px 10px 3px #cccccc80;
        width: 80vw;
        max-width: 480px;
        border-radius: 20px;
        overflow: hidden;
    }
    .cart-notification-text{
        padding: 8px;
        text-align: center;
    }
    .cart-notification-bar{
        background: rgb(236, 91, 34);
        height: 2px;
    }
}
@media (max-width: 512px) {
    .categories-ul{
        grid-template-columns: 1fr;
    }
}
