﻿html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 10px;
    font-family: 'Inter', sans-serif;
}

.bodyR {
    background: #F8FAFC /*2e4147*/ /*8587ab*/ /*#293557 */; /*#365952 - это идеально зеленый подобранный*/
}

.bodyRWhite {
    background: #ffff /*2e4147*/ /*8587ab*/ /*#293557 */; /*#365952 - это идеально зеленый подобранный*/
}

.testR {
    margin-inline: auto;
    margin-block-start: 15vh;
    transform: translateY(-200%);
}

input[type=file]::file-selector-button {
    border: 2px solid #6c757d; /*#6c5ce7*/
    padding: .2em .4em;
    border-radius: .2em;
    background-color: #6c757d; /*#a29bfe*/
    transition: 1s;
    color: white;
}

    input[type=file]::file-selector-button:hover {
        background-color: #7b7f8c; /*#81ecec*/
        border: 2px solid #00cec9;
    }

/* Оформление панели */
#side-checkbox {
    display: none;
}

/* Широкая панель */
.side-panel {
    position: relative;
    z-index: 999999;
    top: 0;
    left: -5000px;
    background: #013220;
    transition: all 0.5s;
    width: 90%;
    height: 100vh;
    box-shadow: 10px 0 20px rgba(0,0,0,0.4);
    color: #FFF;
    padding: 40px 20px;
    overflow-y: scroll;
}

/* Узкая панель */
.side-panelShort {
    position: fixed;
    z-index: 999999;
    top: 0;
    left: -360px;
    background: #013220;
    transition: all 0.5s;
    width: 320px;
    height: 100%;
    box-shadow: 10px 0 20px rgba(0,0,0,0.4);
    color: #FFF;
    padding: 40px 20px;
    overflow-y: scroll;
}

.side-title {
    font-size: 20px;
    padding-bottom: 10px;
    margin-bottom: 20px;
    border-bottom: 2px solid #BFE2FF;
}
/* Оформление кнопки на странице */
.side-button-1-wr {
    text-align: left; /* Контейнер для кнопки, чтобы было удобнее ее разместить */
}

.side-button-2-wr {
    text-align: center; /* Контейнер для кнопки, чтобы было удобнее ее разместить */
}

.side-button-1 {
    display: inline-block;
}

    .side-button-1 .side-b {
        margin: 0px;
        text-decoration: none;
        position: relative;
        font-size: 18px;
        line-height: 15px;
        padding: 12px 18px;
        color: #FFF;
        font-weight: bold;
        text-transform: uppercase;
        font-family: 'Roboto', Тahoma, sans-serif;
        background: #4e9c60; /*337AB7*/
        cursor: pointer;
        border: 2px solid #BFE2FF;
    }

        .side-button-1 .side-b:hover,
        .side-button-1 .side-b:active,
        .side-button-1 .side-b:focus {
            color: #FFF;
        }

        .side-button-1 .side-b:after,
        .side-button-1 .side-b:before {
            position: absolute;
            height: 4px;
            left: 50%;
            bottom: -6px;
            content: "";
            transition: all 280ms ease-in-out;
            width: 0;
        }

    .side-button-1 .side-open:after,
    .side-button-1 .side-open:before {
        background: green;
    }

    .side-button-1 .side-close:after,
    .side-button-1 .side-close:before {
        background: red;
    }

    .side-button-1 .side-b:before {
        top: -6px;
    }

    .side-button-1 .side-b:hover:after,
    .side-button-1 .side-b:hover:before {
        width: 100%;
        left: 0;
    }
    /* Переключатели кнопки 1 */
    .side-button-1 .side-close {
        display: none;
    }

#side-checkbox:checked + .side-panel + .side-button-1-wr .side-button-1 .side-open {
    display: none;
}

#side-checkbox:checked + .side-panel + .side-button-1-wr .side-button-1 .side-close {
    display: block;
}

#side-checkbox:checked + .side-panel {
    left: 0;
}


#side-checkbox2:checked + .side-panelShort + .side-button-1-wr .side-button-1 .side-open {
    display: none;
}

#side-checkbox2:checked + .side-panelShort + .side-button-1-wr .side-button-1 .side-close {
    display: block;
}

#side-checkbox2:checked + .side-panelShort {
    left: 0;
}

/* Оформление кнопки на панеле */
.side-button-2 {
    font-size: 30px;
    border-radius: 20px;
    position: absolute;
    z-index: 1;
    top: 8px;
    right: 8px;
    cursor: pointer;
    transform: rotate(45deg);
    color: #BFE2FF;
    transition: all 280ms ease-in-out;
}

    .side-button-2:hover {
        transform: rotate(45deg) scale(1.1);
        color: #FFF;
    }


.scroll {
    height: 1500px; /* Высота блока */
    overflow-y: scroll; /* Включаем вертикальную прокрутку */
}


.scroll-table-body {
    height: 300px;
    overflow-x: auto;
    margin-top: 0px;
    margin-bottom: 20px;
    border-bottom: 1px solid #eee;
}

.scroll-table table {
    width: 100%;
    table-layout: fixed;
    border: none;
}

.scroll-table thead th {
    font-weight: bold;
    text-align: left;
    border: none;
    padding: 10px 15px;
    background: #badbad;
    font-size: 14px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
}

.scroll-table tbody td {
    text-align: left;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    padding: 10px 15px;
    font-size: 14px;
    vertical-align: top;
}

.scroll-table tbody tr:nth-child(even) {
    background: #f3f3f3;
}

/* Стили для скролла */
::-webkit-scrollbar {
    width: 6px;
}

::-webkit-scrollbar-track {
    box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
}

::-webkit-scrollbar-thumb {
    box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
}

/*для чекбоксов*/
.block {
    /*display: inline-block;*/
    /*padding: 10px;
    border: 1px solid #999;*/
}

.tooltip-toggle {
    border: none;
    background-color: #83b3d3;
    padding: 0;
    margin: 0;
    display: block;
}

.tooltip-icon {
    width: 1px;
    height: 9px;
    color: #83b3d3;
    display: block;
}

.tooltip-toggle:hover .tooltip-icon {
    color: #68a2ca;
}

.tooltip-text {
    font-family: "PT Sans", sans-serif;
    background-color: #333333;
    color: #FFFFFF;
    font-size: 16px;
    line-height: 20px;
    font-weight: 400;
    text-transform: none;
    padding: 20px 18px 18px 22px;
    border-radius: 10px;
    display: block;
    width: 256px;
}

.tooltip {
    position: absolute;
    margin-top: 24px;
    margin-left: 22px;
    width: 25px;
    height: 25px;
}

.tooltip-text {
    font-family: "PT Sans", sans-serif;
    /*/ Шрифт текста /*/ background-color: #333333;
    /*/ Цвет фона /*/ color: #FFFFFF;
    /*/ Цвет текста /*/ font-size: 16px;
    /*/ Размер текста /*/ line-height: 20px;
    /*/ Высота строки /*/ font-weight: 400;
    /*/ Жирность текста /*/ text-transform: none;
    /*/ Преобразование текста /*/ padding: 20px 18px 18px 22px;
    /*/ Отступы внутри элемента /*/ border-radius: 10px;
    /*/ Скругление углов /*/ width: 256px;
    /*/ Ширина элемента /*/ position: absolute;
    /*/ Позиционирование элемента /*/ bottom: 100%;
    /*/ Расположение элемента относительно нижнего края /*/ left: 50%;
    /*/ Расположение элемента относительно левого края /*/ z-index: 1;
    /*/ Настройка наложения элемента /*/ transform: translateX(-50%);
    /*/ Сдвиг элемента по горизонтали /*/ display: none;
    /*/ Скрываем элемент по умолчанию /*/
}

.tooltip-toggle:hover + .tooltip-text,
.tooltip-toggle:focus + .tooltip-text {
    display: block;
}

[data-tooltip] {
    position: relative; /* Относительное позиционирование */
}

    [data-tooltip]::after {
        content: attr(data-tooltip); /* Выводим текст */
        position: absolute; /* Абсолютное позиционирование */
        width: 100px; /* Ширина подсказки */
        left: 0; /*100% если хотим чтобы подсказка была справа*/
        top: 0; /* Положение подсказки */

        opacity: 0; /* Подсказка невидима */
        transition: 1s; /* Время появления подсказки */
        white-space: pre-wrap; /*Перенос строки*/
        font-family: "PT Sans", sans-serif; /*/ Шрифт текста /*/
        background-color: #333333; /*/ Цвет фона /*/
        color: #FFFFFF; /*/ Цвет текста /*/
        font-size: 16px;
        line-height: 20px; /*/ Размер текста /*/
        font-weight: 400; /*/ Высота строки /*/
        text-transform: none; /*/ Жирность текста /*/
        padding: 20px 18px 18px 22px; /*/ Преобразование текста /*/
        border-radius: 10px; /*/ Отступы внутри элемента /*/
        width: 256px; /*/ Скругление углов /*/
        display: block;
        box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); /* Параметры тени */
        pointer-events: none; /* Подсказка */
    }

    [data-tooltip]:hover::after {
        opacity: 1; /* Показываем подсказку */
        top: 2em; /* Положение подсказки */
        pointer-events: none;
        z-index: 99999999;
    }

/*[data-tooltip]:before {
        position: absolute;
        margin-top: 22px;
        margin-left: 22px;
        width: 160px;
        background-color: #000;
        color: #fff;
        content: attr(data-tooltip) '\A' attr(data-tooltip);
        white-space: pre-wrap;
    }*/
p {
    margin: 0;
    text-indent: 3ch;
}

    p.pilcrow {
        text-indent: 0;
        display: inline;
    }

        p.pilcrow + p.pilcrow::before {
            content: " ¶ ";
        }

.lines {
    border-bottom: 17px double black;
    border-top: 6px solid black;
    content: "";
    height: 5px;
    width: 30px;
}

/* Style buttons */
.btnMenu {
    background-color: DodgerBlue; /* Blue background */
    border: none; /* Remove borders */
    color: white; /* White text */
    padding: 12px 16px; /* Some padding */
    font-size: 16px; /* Set a font size */
    cursor: pointer; /* Mouse pointer on hover */
}

/* Darker background on mouse-over */
/*.btn:hover {
        background-color: RoyalBlue;
    }*/

.modal {
    display: none;
    /* position: fixed;*/
    position: center;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 255, 0.1);
}

.modal2 {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 255, 0.1);
}

.modal-content2 {
    background-color: #f3f3f3;
    /* some rules */
}

.close2 {
    /* some rules */
}

.modal-content {
    /* some rules */
}

.close {
    /* some rules */
}


/* Style The Dropdown Button */
.dropbtn {
    background-color: #4CAF50;
    color: white;
    padding: 16px;
    font-size: 16px;
    border: none;
    cursor: pointer;
}

/* The container <div> - needed to position the dropdown content */
.dropdown {
    position: relative;
    display: inline-block;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
}

    /* Links inside the dropdown */
    .dropdown-content a {
        color: black;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
    }

        /* Change color of dropdown links on hover */
        .dropdown-content a:hover {
            background-color: #f1f1f1
        }

/* Show the dropdown menu on hover */
.dropdown:hover .dropdown-content {
    display: block;
}

/* Change the background color of the dropdown button when the dropdown content is shown */
.dropdown:hover .dropbtn {
    background-color: #3e8e41;
}

.knowledge-base-button {
    position: fixed;
    z-index: 999;
    top: 110px;
    left: 0;
    background: #4e9c60; /*#f06420*/
    width: auto;
    padding: 5px 10px;
    height: auto;
    -webkit-border-radius: 5px 0 5px 5px;
    -moz-border-radius: 5px 0 5px 5px;
    border-radius: 0 0 5px 5px;
    -moz-transform: rotate(-90deg) translate(-50%, 50%);
    -ms-transform: rotate(-90deg) translate(-50%, 50%);
    -webkit-transform: rotate(-90deg) translate(-50%, 50%);
    -o-transform: rotate(-90deg) translate(-50%, 50%);
    transform: rotate(-90deg) translate(-50%, 50%);
    transform-origin: 0 50%;
}

    .knowledge-base-button .rotate {
        display: inline-block;
        color: #fff;
        font-size: 18px;
        letter-spacing: 2px;
        line-height: 2;
    }

    .knowledge-base-button img {
        margin: 2px;
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: all 400ms;
        -moz-transition: all 400ms;
        -o-transition: all 400ms;
        transition: all 400ms;
    }

    .knowledge-base-button:hover img {
        -moz-transform: rotate(90deg);
        -webkit-transform: rotate(90deg);
        -o-transform: rotate(90deg);
    }
/*шапка (адаптивный заголовок) для Лэйаута*/
.headerR {
    /*overflow: hidden;*/
    background-color: white; /*#e6e6eb*/
    padding: 5px;
    height: 55px;
}

    .headerR a {
        float: left;
        color: white;
        text-align: center;
        /*padding: 12px;*/
        text-decoration: none;
        /*font-size: 18px;*/
        line-height: 25px;
        border-radius: 4px;
    }

        .headerR a.logo {
            font-size: 25px;
            font-weight: bold;
        }

        .headerR a:hover {
            background-color: silver; /*#b5def7*/
            color: white;
        }

        .headerR a.active {
            background-color: dodgerblue;
            color: white;
        }

.headerR-right {
    float: right;
}

.headerR-left {
    float: left;
}

@media screen and (max-width: 200px) {
    .headerR a {
        float: none;
        display: block;
        text-align: left;
    }

    .headerR-right {
        float: none;
    }
}
/*конец шапки*/


/* CSS оформление кнопки*/
.button-29 {
    align-items: center;
    appearance: none;
    background-image: radial-gradient(100% 100% at 100% 0, #5adaff 0, #5468ff 100%);
    border: 0;
    border-radius: 6px;
    box-shadow: rgba(45, 35, 66, .4) 0 2px 4px,rgba(45, 35, 66, .3) 0 7px 13px -3px,rgba(58, 65, 111, .5) 0 -3px 0 inset;
    box-sizing: border-box;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-family: "JetBrains Mono",monospace;
    height: 48px;
    justify-content: center;
    line-height: 1;
    list-style: none;
    overflow: hidden;
    padding-left: 16px;
    padding-right: 16px;
    position: relative;
    text-align: left;
    text-decoration: none;
    transition: box-shadow .15s,transform .15s;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    white-space: nowrap;
    will-change: box-shadow,transform;
    font-size: 19px;
}

    .button-29:focus {
        box-shadow: #3c4fe0 0 0 0 1.5px inset, rgba(45, 35, 66, .4) 0 2px 4px, rgba(45, 35, 66, .3) 0 7px 13px -3px, #3c4fe0 0 -3px 0 inset;
    }

    .button-29:hover {
        box-shadow: rgba(45, 35, 66, .4) 0 4px 8px, rgba(45, 35, 66, .3) 0 7px 13px -3px, #3c4fe0 0 -3px 0 inset;
        transform: translateY(-2px);
    }

    .button-29:active {
        box-shadow: #3c4fe0 0 3px 7px inset;
        transform: translateY(2px);
    }
/*конец оформления кнопки 1*/

/* CSS оформление кнопки 2*/
.button-24 {
    align-items: center;
    appearance: none;
    background-image: radial-gradient(100% 100% at 100% 0, #82ffc7 0, #2fa841 100%);
    border: 0;
    border-radius: 6px;
    box-shadow: rgba(45, 35, 66, .4) 0 2px 4px,rgba(45, 35, 66, .3) 0 7px 13px -3px,rgba(58, 65, 111, .5) 0 -3px 0 inset;
    box-sizing: border-box;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-family: "JetBrains Mono",monospace;
    height: 48px;
    justify-content: center;
    line-height: 1;
    list-style: none;
    overflow: hidden;
    padding-left: 16px;
    padding-right: 16px;
    position: relative;
    text-align: left;
    text-decoration: none;
    transition: box-shadow .15s,transform .15s;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    white-space: nowrap;
    will-change: box-shadow,transform;
    font-size: 18px;
}

    .button-24:focus {
        box-shadow: #184d39 0 0 0 1.5px inset, rgba(45, 35, 66, .4) 0 2px 4px, rgba(45, 35, 66, .3) 0 7px 13px -3px, #184d39 0 -3px 0 inset;
    }

    .button-24:hover {
        box-shadow: rgba(45, 35, 66, .4) 0 4px 8px, rgba(45, 35, 66, .3) 0 7px 13px -3px, #184d39 0 -3px 0 inset;
        transform: translateY(-2px);
    }

    .button-24:active {
        box-shadow: #3c4fe0 0 3px 7px inset;
        transform: translateY(2px);
    }
/*конец зеленой 2-й кнопки.*/
/*Начало 3-й кнопки, которая будет красной*/
.button-3 {
    align-items: center;
    appearance: none;
    background-image: radial-gradient(100% 100% at 100% 0, #ed5f98 0, #9c222c 100%);
    border: 0;
    border-radius: 6px;
    box-shadow: rgba(69, 17, 51, .4) 0 2px 4px,rgba(69, 17, 51, .3) 0 7px 13px -3px,rgba(84, 29, 64, .5) 0 -3px 0 inset;
    box-sizing: border-box;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-family: "JetBrains Mono",monospace;
    height: 48px;
    justify-content: center;
    line-height: 1;
    list-style: none;
    overflow: hidden;
    padding-left: 16px;
    padding-right: 16px;
    position: relative;
    text-align: left;
    text-decoration: none;
    transition: box-shadow .15s,transform .15s;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    white-space: nowrap;
    will-change: box-shadow,transform;
    font-size: 18px;
}

    .button-3:focus {
        box-shadow: #3c4fe0 0 0 0 1.5px inset, rgba(69, 17, 51, .4) 0 2px 4px, rgba(69, 17, 51, .3) 0 7px 13px -3px, #5e183f 0 -3px 0 inset;
    }

    .button-3:hover {
        box-shadow: rgba(45, 35, 66, .4) 0 4px 8px, rgba(45, 35, 66, .3) 0 7px 13px -3px, #5e183f 0 -3px 0 inset;
        transform: translateY(-2px);
    }

    .button-3:active {
        box-shadow: #5e183f 0 3px 7px inset;
        transform: translateY(2px);
    }

.container {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
}

.text-white {
    color: white;
}
/*Стилизация Выпадающего меню без бутстрапа*/
.select-css {
    display: block;
    font-size: 16px;
    font-family: sans-serif;
    font-weight: 700;
    color: #444;
    line-height: 1.3;
    padding: .6em 1.4em .5em .8em;
    width: 80%;
    max-width: 80%;
    box-sizing: border-box;
    margin: 0;
    border: 1px solid #aaa;
    box-shadow: 0 1px 0 1px rgba(0,0,0,.04);
    border-radius: .5em;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: #fff;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%);
    background-repeat: no-repeat, repeat;
    background-position: right .7em top 60%, 0 0;
    background-size: .65em auto, 100%;
}

    .select-css::-ms-expand {
        display: none;
    }

    .select-css:hover {
        border-color: #888;
    }

    .select-css:focus {
        border-color: #aaa;
        box-shadow: 0 0 1px 3px rgba(59, 153, 252, .7);
        box-shadow: 0 0 0 3px -moz-mac-focusring;
        color: #222;
        outline: none;
    }

    .select-css option {
        font-weight: normal;
    }

*[dir="rtl"] .select-css, :root:lang(ar) .select-css, :root:lang(iw) .select-css {
    background-position: .7em top 50%;
    padding: .6em .8em .5em 1.4em;
}

/*Preloader Area CSS
=================================================*/
.preloader {
    position: fixed;
    left: 0;
    width: 0;
    height: 100%;
    width: 100%;
    text-align: center;
    z-index: 9999999;
    -webkit-transition: .9s;
    transition: .9s;
}

    .preloader .loader {
        position: absolute;
        width: 80px;
        height: 80px;
        border-radius: 50%;
        display: inline-block;
        left: 0;
        right: 0;
        margin: 0 auto;
        top: 45%;
        -webkit-transform: translateY(-45%);
        transform: translateY(-45%);
        -webkit-transition: 0.5s;
        transition: 0.5s;
    }

        .preloader .loader .loader-outter {
            position: absolute;
            border: 4px solid #ffffff;
            border-left-color: transparent;
            border-bottom: 0;
            width: 100%;
            height: 100%;
            border-radius: 50%;
            -webkit-animation: loader-outter 1s cubic-bezier(0.42, 0.61, 0.58, 0.41) infinite;
            animation: loader-outter 1s cubic-bezier(0.42, 0.61, 0.58, 0.41) infinite;
        }

        .preloader .loader .loader-inner {
            position: absolute;
            border: 4px solid #ffffff;
            border-radius: 50%;
            width: 60px;
            height: 60px;
            left: calc(40% - 21px);
            top: calc(40% - 21px);
            border-right: 0;
            border-top-color: transparent;
            -webkit-animation: loader-inner 1s cubic-bezier(0.42, 0.61, 0.58, 0.41) infinite;
            animation: loader-inner 1s cubic-bezier(0.42, 0.61, 0.58, 0.41) infinite;
        }

        .preloader .loader .indicator {
            position: absolute;
            right: 0;
            left: 0;
            top: 50%;
            -webkit-transform: translateY(-50%) scale(1.5);
            transform: translateY(-50%) scale(1.5);
        }

            .preloader .loader .indicator svg polyline {
                fill: none;
                stroke-width: 2;
                stroke-linecap: round;
                stroke-linejoin: round;
            }

                .preloader .loader .indicator svg polyline#back {
                    stroke: #ffffff;
                }

                .preloader .loader .indicator svg polyline#front {
                    stroke: #1A76D1;
                    stroke-dasharray: 12, 36;
                    stroke-dashoffset: 48;
                    -webkit-animation: dash 1s linear infinite;
                    animation: dash 1s linear infinite;
                }

    .preloader::before, .preloader::after {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 60%;
        z-index: -1;
        background: /*#365952*/ #ffd29c;
        -webkit-transition: .9s;
        transition: .9s;
    }

    .preloader::after {
        left: auto;
        right: 0;
    }

    .preloader.preloader-deactivate {
        visibility: hidden;
    }

        .preloader.preloader-deactivate::after, .preloader.preloader-deactivate::before {
            width: 0;
        }

        .preloader.preloader-deactivate .loader {
            opacity: 0;
            visibility: hidden;
        }

@-webkit-keyframes loader-outter {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes loader-outter {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-webkit-keyframes loader-inner {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(-360deg);
        transform: rotate(-360deg);
    }
}

@keyframes loader-inner {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(-360deg);
        transform: rotate(-360deg);
    }
}

@-webkit-keyframes dash {
    62.5% {
        opacity: 0;
    }

    to {
        stroke-dashoffset: 0;
    }
}

@keyframes dash {
    62.5% {
        opacity: 0;
    }

    to {
        stroke-dashoffset: 0;
    }
}
/* Overlay */
.overlay {
    position: relative;
}

    .overlay:before {
        position: absolute;
        content: "";
        left: 0;
        top: 0;
        height: 100%;
        width: 100%;
        background: #3e453f /*#7ead72*/;
        opacity: 0.8;
    }



/* CSS оформление кнопки 5*/
.button-5 {
    align-items: center;
    appearance: none;
    background-image: radial-gradient(100% 100% at 100% 0, #e6fced 0, #ebedf5 100%);
    border: 0;
    border-radius: 15px;
    box-shadow: rgba(45, 35, 66, .4) 0 2px 4px,rgba(45, 35, 66, .3) 0 7px 13px -3px,rgba(58, 65, 111, .5) 0 -3px 0 inset;
    box-sizing: border-box;
    color: black;
    cursor: pointer;
    display: inline-flex;
    font-family: "JetBrains Mono",monospace;
    height: 100px;
    justify-content: left;
    line-height: 1;
    list-style: none;
    overflow: hidden;
    padding-left: 5px;
    padding-right: 5px;
    position: relative;
    text-align: left;
    text-decoration: none;
    transition: box-shadow .15s,transform .15s;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    white-space: pre-wrap; /*вот это перенос содержимого на новую строку*/
    will-change: box-shadow,transform;
    font-size: 17px;
}

    .button-5:focus {
        box-shadow: #3c4fe0 0 0 0 1.5px inset, rgba(45, 35, 66, .4) 0 2px 4px, rgba(45, 35, 66, .3) 0 7px 13px -3px, #3c4fe0 0 -3px 0 inset;
    }

    .button-5:hover {
        box-shadow: rgba(45, 35, 66, .4) 0 4px 8px, rgba(45, 35, 66, .3) 0 7px 13px -3px, #3c4fe0 0 -3px 0 inset;
        transform: translateY(-2px);
    }

    .button-5:active {
        box-shadow: #3c4fe0 0 3px 7px inset;
        transform: translateY(2px);
    }
/*конец оформления кнопки 1*/
.element-to-raise {
    margin-bottom: 50px; /* Значение по умолчанию */
}

@media (max-width: 370px) {
    .element-to-hide0 {
        display: none; /* Или visibility: hidden; */
    }
}

@media (max-width: 468px) {
    .element-to-hide1 {
        display: none; /* Или visibility: hidden; */
    }

    .element-to-raise {
        margin-bottom: 20px; /* Уменьшаем отступ, чтобы поднять элемент */
    }
}

@media (max-width: 580px) {
    .element-to-hide2 {
        display: none; /* Или visibility: hidden; */
    }

    .element-to-raise {
        margin-bottom: 20px; /* Уменьшаем отступ, чтобы поднять элемент */
    }
}

@media (max-width: 950px) {
    .element-to-hide3 {
        display: none; /* Или visibility: hidden; */
    }

    .resizeWindow {
        height: 80vh;
    }
}

@media (min-width: 951px) {
    .resizeWindow {
        height: 60vh;
    }
}

@media (max-width: 1150px) {
    .element-to-hide4 {
        display: none; /* Или visibility: hidden; */
    }
}

@media (max-width: 1420px) {
    .element-to-hide5 {
        display: none; /* Или visibility: hidden; */
    }
}

.my-div {
    display: none;
}

@media (max-width: 1420px) {
    .my-div {
        display: block; /* Или flex, grid, в зависимости от нужного вывода */
        /* Другие стили, например, ширина, отступы */
        width: 100%;
        margin-bottom: -115px;
    }
}
/*для подсказок (сдвигаются кнопки при наведении на другую кнопку)*/
.trigger-button:hover + .target-button {
    margin-top: 100px;
    transition: margin-top 1.5s ease-in-out; /* Сдвигает кнопку на 100px вниз */
}

.trigger-button80:hover + .target-button80 {
    margin-top: 80px;
    transition: margin-top 1.5s ease-in-out; /* Сдвигает кнопку на 100px вниз */
}

.trigger-button150:hover + .target-button150 {
    margin-top: 150px;
    transition: margin-top 1.5s ease-in-out; /* Сдвигает кнопку на 100px вниз */
}
/*.trigger-button:hover + .target-button + .target-button {
        margin-left: 40px;*/ /* Сдвигает вторую кнопку */
/*}*/

/*.page-item {
    background-color: #f0f0f0;*/ /* Светло-серый фон */
/*border: 1px solid #ccc;*/ /* Серая рамка */
/*margin: 5px;*/ /* Отступы между элементами */
/*}
.page-link {
    display: inline-block;*/ /* Позволяет задавать padding и margin */
/*padding: 10px 15px;*/ /* Внутренние отступы */
/*text-decoration: none;*/ /* Убирает подчеркивание */
/*color: #333;*/ /* Цвет текста */
/*font-family: 'Arial', sans-serif;*/ /* Шрифт */
/*border-radius: 5px;*/ /* Скругленные углы */
/*transition: background-color 0.3s ease, color 0.3s ease;*/ /* Плавный переход при наведении */
/*}
    .page-link:hover {
        background-color: #007bff;*/ /* Синий фон */
/*color: #fff;*/ /* Белый цвет текста */
/*}
.page-item.active .page-link {
    background-color: #0056b3;*/ /* Более темный синий для активной ссылки */
/*color: #fff;
}*/

.round-button {
    width: 25px; /* Маленькая ширина */
    height: 22px; /* Маленькая высота */
    border-radius: 50%; /* Сделать элемент круглым */
    background-color: red; /* Цвет фона */
    color: white; /* Цвет текста */
    border: none; /* Убрать стандартную рамку */
    cursor: pointer; /* Указать, что это кнопка */
}

/* Для кнопки имитировать ссылку */
button.styled-link {
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    color: #007bff; /* цвет, как у ссылок */
    cursor: pointer;
    text-decoration: underline; /* или другой стиль по дизайну */
    font: inherit; /* наследовать шрифт */
}

    button.styled-link:focus {
        outline: none;
    }

button.styled-button {
    background-color: #f0f0f0; /* светло-серый фон */
    border: none; /* убираем границы */
    border-radius: 4px; /* скругление углов (по желанию, можно убрать) */
    padding: 4px 10px; /* чуть уменьшены внутренние отступы */
    cursor: pointer;
    text-transform: capitalize; /* первая буква заглавная */
    color: #333; /* тёмно-серый текст */
    font-size: 14px; /* чуть меньше, уменьшил на 2 px от предыдущего 16 -->
                                /* Меньше на 2px, чтобы сделать кнопку чуть меньшей */
    transition: background-color 0.3s ease, color 0.3s ease, text-decoration 0.3s ease;
}

    /* При наведении меняется фон и цвет текста, подчеркивание */
    button.styled-button:hover,
    button.styled-button:focus {
        background-color: #007bff; /* синий фон */
        color: #fff; /* белый текст */
        text-decoration: underline; /* подчеркивание */
        outline: none;
    }

    /* Для доступности - контур при фокусе */
    button.styled-button:focus-visible {
        outline: 2px solid #0056b3;
    }


.animated-link {
    position: relative; /* Для позиционирования псевдоэлемента */
    text-decoration: none; /* Убираем стандартное подчеркивание */
}

    .animated-link::after {
        content: ''; /* Обязательно для псевдоэлементов */
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0; /* Изначально нулевая ширина */
        height: 1px; /* Высота линии */
        background: #000; /* Цвет линии */
        transition: width 0.3s ease-out; /* Анимация плавного появления */
    }

    .animated-link:hover::after {
        width: 100%; /* Растягиваем линию на 100% при наведении */
    }

/* CSS оформление кнопки 10*/
.button-10 {
    /*align-items: center;*/
    appearance: none;
    background-image: radial-gradient(100% 100% at 100% 0, #e6fced 0, #ebedf5 100%);
    border: 0; /*чуть больше кнопку делает*/
    border-radius: 15px; /*округление краев кнопки*/
    box-shadow: rgba(45, 35, 66, .4) 0 2px 4px,rgba(45, 35, 66, .3) 0 7px 13px -3px,rgba(58, 65, 111, .5) 0 -3px 0 inset;
    box-sizing: border-box; /*непонятно что делает*/
    color: black;
    cursor: pointer;
    /*display: inline-flex;*/
    font-family: "JetBrains Mono",monospace;
    height: 400px;
    vertical-align: top;
    justify-content: left;
    line-height: 1;
    list-style: none;
    overflow: hidden;
    padding-left: 5px;
    padding-right: 5px;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: box-shadow .15s,transform .15s;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    /*white-space: pre-wrap; */ /*вот это перенос содержимого на новую строку*/
    will-change: box-shadow,transform;
    font-size: 17px;
}

    .button-10:focus {
        box-shadow: #3c4fe0 0 0 0 1.5px inset, rgba(45, 35, 66, .4) 0 2px 4px, rgba(45, 35, 66, .3) 0 7px 13px -3px, #3c4fe0 0 -3px 0 inset;
    }

    .button-10:hover {
        box-shadow: rgba(45, 35, 66, .4) 0 4px 8px, rgba(45, 35, 66, .3) 0 7px 13px -3px, #3c4fe0 0 -3px 0 inset;
        transform: translateY(-2px);
    }

    .button-10:active {
        box-shadow: #3c4fe0 0 3px 7px inset;
        transform: translateY(2px);
    }

.responsive-table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; /* для плавной прокрутки на мобильных */
    width: calc(100% + 0px); /* таблица занимает всю доступную ширину контейнера */
    max-width: none; /* убираем любые ограничения по ширине */
    table-layout: auto; /* таблица подстраивается под содержимое */
    overflow-wrap: break-word; /* перенос слов, чтобы текст не вылазил за границы */
    word-wrap: break-word; /* поддержка для старых браузеров */
    min-width: calc(100% + 0px);
}

/*.responsive-table table {
        width: 100%;*/ /* занимает всю ширину контейнера */
/*max-width: none;*/ /* убираем ограничения */
/*table-layout: auto;*/ /* автоматическая ширина колонок, по содержимому */
/*word-wrap: break-word;*/ /* переносит длинные слова */
/*}*/
/*td, th {
    word-break: break-word;  перенос слов внутри таблицы 
    font-size: 14px;
}*/



table {
    width: calc(100% + 0px);
    max-width: 100%;
    table-layout: auto;
}

.ResponsiveContainer {
    width: 100%;
    overflow-x: auto;
}

    .ResponsiveContainer table {
        min-width: 500px; /* задайте минимальную ширину, если нужно */
        width: 100%;
    }




@media (max-width: 768px) {
    table tbody {
        font-size: 12px;
        width: calc(100% + 25px);
    }

    .table-wrapper {
        margin-left: -20px; /* расширение влево на 10px */
        margin-right: -5px; /* или по необходимости */
    }

    .responsive-table {
        width: calc(100% + 35px);
        /*таблица занимает всю доступную ширину контейнера*/
    }

    tbody {
        word-break: break-word; /*перенос слов внутри таблицы */
    }

    table {
        width: calc(100% + 25px); /*расширяет контейнер чуть вправо */
        overflow-x: auto; /*скролл при необходимости */
    }

    .responsive-table table {
        font-size: 12px; /* уменьшаем шрифт */
    }

    .responsive-table td {
        padding-left: 10px; /* добавляем отступ слева */
        padding-right: 10px; /* добавляем отступ справа */
    }
}
/* Если таблица внутри .responsive-table */
.responsive-table table {
    width: 100%;
    /* или чуть больше, например */
    min-width: 340px;
}

/*.responsive-table td {
    padding: 0 10px;*/ /* top/bottom: 0, left/right: 10px */
/*}*/
/*@media (max-width: 768px) {
    .responsive-table td {
        padding: 0 10px;*/ /* добавить по 10px слева и справа */
/*}
}*/

/*@media (max-width: 768px) {
    table {
        display: block;*/ /* превращение таблицы в блочный элемент */
/*overflow-x: auto;*/ /* скролл по горизонтали */
/*-webkit-overflow-scrolling: touch;
        width: 100%;
    }

        table thead, table tbody, table tr, table td, table th {
            display: block;*/ /* делать блоками (чтобы Востоке отображались вертикально) */
/*}

        table thead {
            display: none;*/ /* можно спрятать шапку, чтобы было более компактно */
/*}

        table tbody td {
            position: relative;
            padding-left: 50%;*/ /* оставляем место для названия колонки */
/*}

        table tbody td::before {
            position: absolute;
            top: 0;
            left: 0;
            width: 45%;
            padding-right: 10px;
            white-space: nowrap;
            content: attr(data-label);*/ /* добавьте атрибут data-label к td для описания колонки */
/*font-weight: bold;
        }
}*/

.articleBig {
    font-size: 20px !important; /* или любой нужный размер */
    line-height: 1.5; /*при желании */
}

    .articleBig,
    .articleBig p,
    .articleBig h1,
    .articleBig h2,
    .articleBig li {
        font-size: 20px;
    }

/*Стилизация контейнера с закругленными краями Начало*/
.containerMain {
    background-color: #ffffff; /* Белый фон внутри */
    border-radius: 10px; /* Скругление углов, подберите размер, по вашему вкусу */
    box-shadow: 0 4px 8px rgba(0,0,0,0.1); /* легкая тень для выделения */
    padding: 20px; /* внутренние отступы, чтобы содержимое не прилипало к краям */
    margin: 20px 0; /* внешние отступы между блоками */
    width: 100%; /* растягивает на всю ширину родителя */
    box-sizing: border-box;
}
/*Стилизация контейнера с закругленными краями Конец*/

/*Стилизация шагов на главной странице как стать исследователем Начало*/
.steps-container {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap; /* для адаптивности */
    gap: 30px;
    margin: 50px 20px;
}

.step {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 200px; /* или больше, под ваш дизайн */
    text-align: center;
}

.circle {
    width: 60px;
    height: 60px;
    background-color: #4CAF50; /* цвет */
    color: white;
    font-size: 24px;
    font-weight: bold;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
    margin-bottom: 10px;
    transition: background-color 0.3s;
}

    .circle:hover {
        background-color: #45a049;
    }

/* стрелки между шагами */
.arrow {
    font-size: 30px;
    margin: 0 10px;
    color: #555;
}

/* Заголовки и тексты */
h3 {
    margin-top: 10px;
    font-size: 18px;
    color: #333;
}

/*p {
    font-size: 14px;
    color: #666;
    margin-top: 5px;
}*/



/* Мобильные стили */
@media(max-width: 768px) {
    .steps-container {
        flex-direction: column;
        align-items: flex-start; /* или center, по желанию */
    }

    .arrow {
        display: none; /* скрываем стрелки на мобильных */
    }

    .step {
        width: 100%; /* чтобы ширина была под мобильный экран */
        align-items: flex-start;
    }
}
/*Стилизация шагов на главной странице как стать исследователем Конец*/

/*Оформление таблицы datatables и просто таблицы красивой начало*/
button.details-control {
    border: none;
    background: none;
    cursor: pointer;
    font-size: 16px;
}

    button.details-control:focus {
        outline: none;
    }


/* Общий стиль для всей таблицы */
#myTable {
    border-collapse: separate; /* важно для border-radius на ячейках */
    border-spacing: 0; /* убираем промежутки между ячейками, чтобы было более аккуратно */
    border-radius: 8px; /* закругление углов */
    overflow: hidden; /* чтобы скругленные углы отображались правильно */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* легкая тень для плавности */
}

    /* Установка закругленных углов для шапки */
    #myTable thead {
        background-color: #f5f5f5; /* или любой другой фон */
        border-top-left-radius: 8px;
        border-top-right-radius: 8px;
    }

    /* Установка закругленных углов для нижней части таблицы */
    #myTable tbody tr:last-child td:first-child {
        border-bottom-left-radius: 8px;
    }

    #myTable tbody tr:last-child td:last-child {
        border-bottom-right-radius: 8px;
    }

/* Обертка DataTables */
.dataTables_wrapper {
    border-radius: 8px;
    overflow: hidden; /* чтобы скругленные углы применялись ко всему */
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

/* Самая таблица внутри обертки */
.dataTables_scroll {
    border-radius: 8px;
}

#myTable tbody tr:hover {
    background-color: #f0f8ff;
    transition: background-color 0.3s ease;
}

button, td {
    transition: background-color 0.2s, transform 0.2s;
}
/* Пример подсветки строки */
#myTable tbody tr:hover {
    background-color: #e6f7ff;
}
/* Градиент для шапки таблицы */
thead {
    background: linear-gradient(135deg, #89f7fe 0%, #66a6ff 100%);
}

.custom-modern-table {
    border: 3px solid #454343; /* яркая, насыщенная рамка #4CAF50*/
    border-radius: 15px;
    box-shadow: 0 8px 20px #5e183f;
    overflow: hidden;
    border-collapse: separate;
    font-family: 'Lora', serif;
    font-size: 18px; /* или чуть больше, например 18px */
}
    /* Основная таблица с усиленными границами */
    /*.custom-modern-table {
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 15px;
    overflow: hidden;
    border: 2px solid #ccc;*/ /*Толстая окантовка */
    /*box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);*/ /*Обрамление с тенью для плавности */
    /*}*/

    /* Граница у строк с эффектом тени (отделение) */
    .custom-modern-table tbody tr {
        border-bottom: 1px solid rgba(0,0,0,0.05); /* тонкая граница между строками */
        position: relative;
        transition: background-color 0.5s;
        line-height: 2; /*расстояние между строками*/
    }

        /* Добавляем эффект тени к линиям между строками */
        .custom-modern-table tbody tr::after {
            content: "";
            position: absolute;
            left: 0;
            right: 0;
            bottom: -2px;
            height: 4px;
            background: linear-gradient(to right, #000, rgba(0,0,0,0));
            /* основной эффект */
        }

    /* Дополнительный эффект — тень или свечение */
    .custom-modern-table tbody tr {
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    }

        /* Можно сделать линии немного более выразительными при наведении */
        .custom-modern-table tbody tr:hover::after {
            opacity: 0.8;
        }

    /* Усовершенствуем заголовок таблицы, добавим тень и границу */
    .custom-modern-table thead {
        background: linear-gradient(135deg, #89f7fe 0%, #66a6ff 100%);
        border-top-left-radius: 15px;
        border-top-right-radius: 15px;
        border-bottom: 1.8px solid #ccc;
    }

    /* Убрать внутренние границы для ячеек, оставить только линии между строками */
    .custom-modern-table td, .custom-modern-table th {
        border: none;
        padding: 16px 20px;
        font-family: 'Lora', serif;
        font-size: 17px;
    }

    /* Для придания более объемного вида — можно добавить мягкий внутренний теневой эффект */
    .custom-modern-table th, .custom-modern-table td {
        box-shadow: inset 0 1px 0 rgba(0,0,0,0.05);
    }
/*Оформление таблицы datatables и просто таблицы красивой конец*/




/*Оформляем интернет - магазин с книгами Начало*/

/* Контейнер для книг - строки с 3-4 карточками */
.books-container {
    display: flex;
    flex-wrap: wrap; /* перенос на новую строку */
    gap: 20px; /* промежуток между карточками */
    justify-content: center; /* по центру, можно убрать или изменить */
}

/* Карточка книги */
.book-card {
    background-color: #fff; /* или прозрачный / другого цвета по стилю */
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    width: 250px; /* размер карточки, можно менять */
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px;
    transition: transform 0.2s;
}

    .book-card:hover {
        transform: translateY(-5px); /* легкое поднятие при наведении */
    }

/* Изображение книги */
.book-image {
    width: 80%;
    height: auto;
    border-radius: 4px;
}

/* Название книги */
.book-title {
    font-family: 'Lora', serif; /* или любой другой шрифт */
    font-size: 16px;
    margin: 10px 0;
    text-align: center;
}

/* Кнопка скачать */
.download-btn {
    background-color: #333; /* темный фон */
    color: #fff;
    padding: 10px 20px;
    border-radius: 4px;
    text-decoration: none;
    font-weight: bold;
    width: 100%;
    text-align: center;
    transition: background-color 0.3s;
}

    .download-btn:hover {
        background-color: #555;
    }




/*Оформляем интернет - магазин с книгами Конец*/

/*Оформляем таблицу в виде карточек Начало*/
/* Стиль для больших экранов (по умолчанию) */
.responsive-table2 {
    width: 100%;
    border-collapse: collapse;
}

    .responsive-table2 th,
    .responsive-table2 td {
        border: 1px solid #ddd;
        padding: 8px;
        text-align: left;
    }

/* Для мобильных устройств */
@media only screen and (max-width: 600px) {
    .responsive-table2 thead {
        display: none; /* скрываем шапку таблицы */
    }

    .responsive-table2,
    .responsive-table2 tbody,
    .responsive-table2 tr,
    .responsive-table2 td {
        display: block; /* делаем все блоками */
        width: 100%;
    }

        /* каждая ячейка как отдельный блок */
        .responsive-table2 tr {
            margin-bottom: 15px;
        }

        .responsive-table2 td {
            position: relative;
            padding-left: 50%; /* место для метки */
            border: none;
        }

            /* добавляем псевдоэлементы с названием заголовка */
            .responsive-table2 td::before {
                position: absolute;
                top: 8px;
                left: 10px;
                width: 45%;
                padding-right: 10px;
                white-space: nowrap;
                font-weight: bold;
                content: attr(data-label);
            }
}
/*Оформляем таблицу в виде карточек Конец*/

/*html, body, section, form {
    margin: 0;
    padding: 0;
}*/
html, body, section, form {
    margin: 0;
    padding: 0;
}

.risk-cell {
    background-color: red;
    color: white;
}


/*Увеличить текст статьи его размер начало*/
/* Увеличиваем текст только внутри статей */
.article-content-wrapper p {
    font-size: 1.15rem !important; /* Оптимально для чтения в 2026 году */
    line-height: 1.65 !important; /* Увеличиваем межстрочный интервал для легкости чтения */
    color: #333 !important; /* Делаем текст контрастным */
    margin-bottom: 1.5rem !important;
}

.article-content-wrapper li {
    font-size: 1.15rem !important; /* Оптимально для чтения в 2026 году */
    /*line-height: 1.65 !important;*/ /* Увеличиваем межстрочный интервал для легкости чтения */
    color: #333 !important; /* Делаем текст контрастным */
    margin-bottom: 1.5rem !important;
}

/* Настраиваем размеры заголовков, если они тоже мелкие */
.article-content-wrapper h3 {
    font-size: 1.75rem;
}

.article-content-wrapper h4 {
    font-size: 1.5rem;
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .article-content-wrapper p {
        font-size: 1.1rem;
    }
}
/*Увеличить текст статьи его размер Конец*/



@media (min-width: 992px) {
    /* Контейнер для выравнивания */
    .main-layout-fix {
        display: flex !important;
        flex-wrap: nowrap !important; /* Запрещаем перенос рубрик вниз */
        align-items: flex-start;
    }

    .article-column {
        /* Ограничиваем ширину статьи для удобства чтения (800-900px — идеал) */
        flex: 0 0 900px !important;
        max-width: 900px !important;
        /* ГЛАВНЫЙ СЕКРЕТ: */
        /* Сдвигаем статью вправо. Экспериментируйте с 10% до 20%, 
           чтобы визуально центр статьи совпал с центром экрана */
        margin-left: 10% !important;
        padding-right: 40px; /* Зазор между статьей и сайдбаром */
    }

    .sidebar-column {
        /* Фиксируем ширину сайдбара, чтобы он не ужимался */
        flex: 0 0 300px !important;
        max-width: 300px !important;
    }
}

/* Для мобильных возвращаем стандарт */
@media (max-width: 991px) {
    .article-column, .sidebar-column {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
    }
}



/* Исправление для мобильных устройств (сброс "шалтай-болтая") */
@media (max-width: 991.98px) {
    .main-layout-fix {
        /*display: block !important;*/ /* Убираем flex, чтобы блоки шли друг под другом */
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow-x: hidden; /* Запрещаем горизонтальный скролл на уровне ряда */
    }

    /*.article-column,
    .sidebar-column,
    .article-content-wrapper {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        min-width: 100% !important;*/ /* Чтобы не сжималось */
    /*width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 10px !important;*/ /* Небольшие отступы, чтобы текст не прилипал к экрану */
    /*padding-right: 10px !important;
        left: 0 !important;
        position: relative !important;
    }*/

    /* Убираем фиксированную ширину, если она была задана инлайново или в других стилях */
    /*img, table, div, p {
        max-width: 100% !important;
        height: auto !important;
    }*/
}

@media (max-width: 767.98px) {
    /*1. Убираем отступы у внешнего контейнера */
    .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
        max-width: 100% !important;
    }

    /*2. Растягиваем ваш row3 и убираем любые ограничения */
    .row3 {
        margin-left: 0 !important;
        margin-right: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    /*3. Убираем отступы у колонок, чтобы текст шел от края до края */
    .col-12, .article-column {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /*4. Внутренний отступ для самого ТЕКСТА (чтобы не прилипал к стеклу) 
     Рекомендую оставить 5-10px для комфорта глаз, но если нужно в край - ставьте 0 */
    .article-content-wrapper {
        padding-left: 10px !important;
        padding-right: 10px !important;
        width: 100% !important;
    }
}


/*@media (max-width: 767.98px) {*/
/* Принудительно растягиваем html и body, чтобы исключить микро-сдвиги */
/*html, body {
        overflow-x: hidden !important;
        width: 100% !important;
        position: relative;
        margin: 0 !important;
        padding: 0 !important;
    }*/

/* Убираем ВСЕ отступы и границы у всей цепочки вложенности */
/*.container,
    .row3,
    .col-12,
    .article-column {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        max-width: 100vw !important;*/ /* Используем 100% ширины вьюпорта */
/*width: 100vw !important;
        border: none !important;*/ /* Убираем возможные микро-рамки */
/*box-shadow: none !important;*/ /* Убираем тени, которые могут давать полосы */
/*}*/

/* Если у вас есть фоновый цвет у статьи, растягиваем его */
/*.article-content-wrapper {
        width: 100% !important;
        margin: 0 !important;*/
/* Если полоски все еще есть, попробуйте закомментировать padding ниже 
           или поставить 0, чтобы проверить исчезнут ли они */
/*padding-left: 5px !important;
        padding-right: 5px !important;
    }
}*/

#button-wrapper {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 400px; /* максимальная ширина */
}

.answer-btn {
    min-width: 150px; /* минимальная ширина */
    width: auto; /* чтобы позволяло растягиваться, но не сужаться меньше min-width */
    max-width: 100%; /* ограничение шириной контейнера */
    font-size: 17px !important;
    white-space: pre-wrap !important; /* перенос длинных строк */
    height: auto; /* автоматическая высота */
    margin-top: 2px;
    box-sizing: border-box; /* чтобы padding и border не влияли на ширину */
    padding: 10px 15px; /* добавьте padding для лучшего внешнего вида */
    display: inline-block; /* или block для 100% ширины */
    text-align: center;
    text-align: center;
    /*box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .5)*/
}

    .answer-btn.focus,
    .answer-btn:focus {
        outline: 0;
        box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .25)
    }

    .answer-btn:hover {
        color: #000000; /* Черный текст при наведении */
    }
/* CSS оформление кнопки*/
.button-29 {
    align-items: center;
    appearance: none;
    /*background-image: radial-gradient(100% 100% at 100% 0, #5adaff 0, #5468ff 100%);*/
    background-image: radial-gradient(100% 100% at 100% 0, #4fb5e0, #1269b1);
    border: 0;
    border-radius: 6px;
    box-shadow: rgba(45, 35, 66, .4) 0 2px 4px,rgba(45, 35, 66, .3) 0 7px 13px -3px,rgba(58, 65, 111, .5) 0 -3px 0 inset;
    box-sizing: border-box;
    /*background-color: #ff7f50;*/
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-family: "JetBrains Mono",monospace;
    height: auto;
    justify-content: center;
    line-height: 1;
    list-style: none;
    overflow: hidden;
    padding-left: 16px;
    padding-right: 16px;
    position: relative;
    text-align: left;
    text-decoration: none;
    transition: box-shadow .15s,transform .15s;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    white-space: nowrap;
    will-change: box-shadow,transform;
    font-size: 19px;
}

    .button-29:focus {
        box-shadow: #3c4fe0 0 0 0 1.5px inset, rgba(45, 35, 66, .4) 0 2px 4px, rgba(45, 35, 66, .3) 0 7px 13px -3px, #3c4fe0 0 -3px 0 inset;
    }

    .button-29:hover {
        box-shadow: rgba(45, 35, 66, .4) 0 4px 8px, rgba(45, 35, 66, .3) 0 7px 13px -3px, #3c4fe0 0 -3px 0 inset;
        transform: translateY(-2px);
    }

    .button-29:active {
        box-shadow: #3c4fe0 0 3px 7px inset;
        transform: translateY(2px);
    }

.answer-btn, .button-29 {
    transition: color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}
/*конец оформления кнопки 1*/


@media (min-width: 951px) {
    .answer-btn {
        min-width: 400px; /* или значение, которое подходит по дизайну */
    }
}

/* Для мобильных устройств и узких экранов (950px и меньше), фиксированная ширина — 100% ширины экрана */
@media (max-width: 950px) {
    .answer-btn {
        min-width: 100%; /* или точное число пикселей, например 320px или ширина контейнера */
        width: 100%; /* чтобы кнопки растянулись под ширину контейнера */
    }
}
/* Контейнер для вопроса + картинок + ответов */
.scrollable-content {
    /*max-height: 500vh;*/ /* или другая высота, в зависимости от вашего дизайна */
    flex: 1; /* занимает все доступное пространство внутри .container */
    overflow-y: auto; /* включаем вертикальную прокрутку */
    display: flex;
    flex-direction: column;
    padding: 10px; /* если нужно */
    box-sizing: border-box;
}
/*@media (max-width: 950px) {
    .row5 {
        width: 100%;*/ /* делаем, чтобы ширина всегда была по ширине экрана */
/*max-width: 100%;*/ /* чтобы не сжималась меньше 100% */
/*box-sizing: border-box;*/ /* чтобы padding и border не влияли на ширину */
/*}
}*/

.container2 {
    height: 100vh; /* или другую фиксированную высоту */
    display: flex;
    flex-direction: column;
}


/* Обертка всей страницы или контейнера */
.page-container {
    display: flex;
    align-items: center; /* вертикальное центрирование */
    justify-content: center; /* горизонтальное центрирование */
    height: 100vh; /* или другая фиксированная/поддерживаемая высота */
    padding: 20px; /* чтобы было пространство по краям, если нужно */
    box-sizing: border-box;
    overflow: auto; /* чтобы скроллились при необходимости */
    position: relative; /* для позиционирования внутренних элементов, если потребуется */
}

/* Весь контент внутри */
.content {
    /*max-width: 800px;*/ /* например, ограничение ширины */
    /*width: 100%;
    display: flex;
    flex-direction: column;*/
    /* Смещаем вверх на 100px, избегая выхода за границы */
    /*position: relative;
    top: -100px; */ /* поднять вверх */
    max-width: 800px; /* ваш лимит ширины */
    width: 100%;
    /* margin-top: -200px; сдвиг вверх на 200px */
}

/*для формы регистрации начало*/

/*input.valid {
    border-color: green;
    background-color: #eaffea;*/ /* светло-зеленый фон */
/*}

input.invalid {
    border-color: red;
    background-color: #ffeaea;*/ /* светло-красный фон */
/*}

.error-message {
    font-size: 0.9em;
    color: red;
    margin-top: 4px;
}

.success-icon {
    display: inline-block;
    color: green;
    font-weight: bold;
    margin-left: 8px;
}*/



/* Для правильных полей */
input.valid {
    border: 2px solid green;
    background-color: #e0ffe0; /* если хотите чуть светлее */
}

/* Для неверных полей */
input.error {
    border: 2px solid red;
    background-color: #ffe0e0; /* светло-красный фон при ошибке */
}

/* Для сообщения */
/*.error-message {
    display: block;
    color: red;
    font-size: 12px;
    margin-top: 2px;
}*/

/* Для иконки или птички */
/*.status-icon {
    margin-left: 5px;
    font-size: 14px;
    vertical-align: middle;
    display: inline;
}*/
/*для формы регистрации конец*/


/* Сделать контейнер строчным элементом с флексбоксом */
.group-container {
    display: flex;
    align-items: center; /* вертикальное выравнивание по центру */
    margin-bottom: 1rem; /* отступ снизу */
    position: relative; /* чтобы можно было позиционировать label, если нужно */
}

/* Расположим поле, сообщение и иконку в строку */
.validation-helper {
    display: flex;
    align-items: center;
    margin-left: 10px; /* отступ слева для сообщений/иконок */
}

/* Стиль для сообщений */
.error-message {
    margin-left: 10px; /* отступ между сообщениями и иконкой */
    color: red;
    font-size: 12px;
}

/* Стиль для иконки */
.status-icon {
    margin-left: 10px;
    font-size: 14px;
    vertical-align: middle;
}


/*Оформляем ссылки на тест в статьях Начало*/
/* Находим ссылки, ведущие конкретно на тесты */
.news-text a[href*="/Tests/Test?"] {
    display: block;
    background-color: #f0f7ff;
    border-left: 5px solid #0056b3;
    padding: 20px !important;
    margin: 25px 0 !important;
    text-decoration: none !important;
    border-radius: 4px;
    transition: transform 0.2s, box-shadow 0.2s;
    color: #333 !important;
    position: relative;
    /* Обнуляем красную строку и выравниваем текст */
    text-indent: 0 !important;
    text-align: left !important;
}

    /* Верхняя строка (заголовок над ссылкой) */
    .news-text a[href*="/Tests/Test?"]::before {
        content: "Рекомендованный тест:";
        display: block;
        font-size: 0.85rem;
        text-transform: uppercase;
        color: #0056b3;
        font-weight: bold;
        margin: 0 0 8px 0 !important; /* Обнуляем внешние отступы */
        padding: 0 !important; /* Обнуляем внутренние отступы */
        text-indent: 0 !important; /* Убираем красную строку */
        line-height: 1.2;
    }

    /* Нижняя строка (инфо под ссылкой) */
    .news-text a[href*="/Tests/Test?"]::after {
        content: "⏱ 3-5 минут • Научная методика • Без регистрации";
        display: block;
        font-size: 0.8rem;
        color: #666;
        font-style: italic;
        margin: 12px 0 0 0 !important; /* Отступ только сверху от названия теста */
        padding: 0 !important;
        text-indent: 0 !important; /* Убираем красную строку */
        line-height: 1.2;
    }

    /* Эффект при наведении */
    .news-text a[href*="/Tests/Test?"]:hover {
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0,0,0,0.1);
        background-color: #e6f2ff;
        text-decoration: none !important;
    }
/*Оформляем ссылки на тест в статьях Конец*/

/*Оформление ссылки на статьи в других статьях Начало*/
/* Находим ссылки, ведущие на другие статьи */
.news-text a[href*="/Home/ArticleSingle?"] {
    display: block;
    background-color: #f6fbf9; /* Очень мягкий мятный фон */
    border-left: 5px solid #28a745; /* Изумрудно-зеленая полоса */
    padding: 18px !important;
    margin: 20px 0 !important;
    text-decoration: none !important;
    border-radius: 4px;
    transition: all 0.3s ease;
    color: #2c3e50 !important;
    position: relative;
    text-indent: 0 !important;
    text-align: left !important;
}

    /* Верхняя строка (заголовок) */
    .news-text a[href*="/Home/ArticleSingle?"]::before {
        content: "Читайте также по этой теме:";
        display: block;
        font-size: 0.8rem;
        text-transform: uppercase;
        color: #28a745;
        font-weight: bold;
        margin: 0 0 6px 0 !important;
        padding: 0 !important;
        text-indent: 0 !important;
        letter-spacing: 0.5px;
    }

    /* Нижняя строка (призыв к действию) */
    .news-text a[href*="/Home/ArticleSingle?"]::after {
        content: "📚 экспертный материал • личный опыт • кейсы";
        display: block;
        font-size: 0.75rem;
        color: #5d707f;
        margin: 8px 0 0 0 !important;
        padding: 0 !important;
        text-indent: 0 !important;
        opacity: 0.8;
    }

    /* Эффект при наведении */
    .news-text a[href*="/Home/ArticleSingle?"]:hover {
        background-color: #eef9f5;
        border-left-width: 8px; /* Небольшое расширение полосы при наведении */
        padding-left: 22px !important; /* Смещение текста вправо */
        text-decoration: none !important;
        box-shadow: 2px 4px 10px rgba(40, 167, 69, 0.1);
    }
/*Оформление ссылки на статьи в других статьях Конец*/

/*Оформление микро-теста Начало*/
.quick-test-box {
    background: #fff;
    border: 2px solid #e1ecf4;
    border-radius: 12px;
    padding: 25px;
    margin: 30px 0;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}

.quick-test-title {
    font-weight: bold;
    font-size: 1.3rem;
    margin-bottom: 20px;
    color: #2c3e50;
    text-align: center;
}

.quick-test-option {
    display: block;
    width: 100%;
    padding: 12px 18px;
    margin-bottom: 10px;
    border: 1px solid #dcdde1;
    border-radius: 8px;
    background: #f8f9fa;
    cursor: pointer;
    transition: all 0.2s ease;
    text-align: left;
}

    .quick-test-option:hover {
        background: #e1ecf4;
        border-color: #0056b3;
    }

.quick-test-result {
    display: none;
    margin-top: 20px;
    padding: 15px;
    background: #eef9f5;
    border-radius: 8px;
    color: #1e3a34;
    font-weight: 500;
    animation: fadeIn 0.5s ease;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/*Оформление микротеста конец*/

/*Скачать экспертное руководство статью в пдф формате Начало*/

.btn-pdf-download {
    display: inline-block;
    background-color: #28a745;
    color: white !important;
    padding: 12px 25px;
    border-radius: 50px;
    text-decoration: none !important;
    font-weight: bold;
    transition: all 0.3s;
}

    .btn-pdf-download:hover {
        background-color: #218838;
        transform: scale(1.05);
        box-shadow: 0 5px 15px rgba(40, 167, 69, 0.3);
    }
/*Скачать экспертное руководство статью в пдф формате Конец*/

/*.question-container {
    min-height: 100px;*/ /* Подобрано опытным путем для 3-4 строк */
/*display: flex;
    align-items: center;*/ /* Центрируем короткие вопросы по вертикали */
/*justify-content: center;
    text-align: center;
    margin-bottom: 20px;
    padding: 10px;*/
/* Чтобы видеть границы при отладке, можно включить: */
/* border: 1px solid #eee; */
/*}

.question-image-wrapper {
    width: 100%;
    max-width: 500px;
    aspect-ratio: 16 / 9;*/ /* Резервируем место под картинку заранее */
/*background-color: #f8f9fa;*/ /* Серый фон, пока картинка грузится */
/*display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

    .question-image-wrapper img {
        width: 100%;
        height: 100%;
        object-fit: contain;*/ /* Картинка вписывается без искажений */
/*}*/

/* Общий контейнер, чтобы центрировать всё на странице */
.test-interface {
    max-width: 800px;
    margin: 0 auto;
    padding: 20px;
}

/* Прогресс-бар текста */
.test-progress {
    text-align: right;
    font-size: 0.9rem;
    color: #666;
    margin-bottom: 10px;
    font-weight: 500;
}

/* КАРТОЧКА ВОПРОСА - Главный секрет стабильности */
.question-glass-card {
    /* ФИКСИРУЕМ ВЫСОТУ: подбери под свои вопросы (например, 350px) */
    min-height: 450px;
    /* СТАБИЛИЗАЦИЯ ШИРИНЫ */
    width: 100%;
    max-width: 800px; /* Оптимальная ширина для чтения текста */
    min-width: 700px !important; /* Запрещаем карточке сжиматься меньше 700px на ПК */
    /* Центрирование самой карточки */
    margin-left: auto;
    margin-right: auto;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(0, 86, 179, 0.1); /* Тонкая синяя рамка */
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    display: flex;
    align-items: center; /* Центрируем вопрос по вертикали */
    justify-content: center;
    padding: 30px;
    margin-bottom: 30px;
    position: relative;
    overflow: hidden;
    padding: 40px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease; /* Плавный переход, если вдруг ширина изменится */
}
/* Адаптивность: на мобилках убираем минимальную ширину, чтобы влезло в экран */
@media (max-width: 650px) {
    .question-glass-card {
        min-width: 100% !important;
        padding: 20px;
        min-height: 350px; /* На мобилках можно чуть меньше */
    }
}

.question-glass-card {
    /* Фиксируем высоту, как ты и хотел (450px для картинок Равена — идеально) */
    min-height: 450px;
    /* СТАБИЛИЗАЦИЯ ШИРИНЫ */
    width: 100%;
    max-width: 800px; /* Оптимальная ширина для чтения текста */
    min-width: 600px; /* Запрещаем карточке сжиматься меньше 600px на ПК */
    /* Центрирование самой карточки */
    margin-left: auto;
    margin-right: auto;
    /* Остальные твои стили */
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(0, 86, 179, 0.1); /* Тонкая синяя рамка */
    border-radius: 20px;
    display: flex;
    flex-direction: column; /* Меняем на column, чтобы картинка была ПОД текстом */
    align-items: center;
    justify-content: center;
    padding: 40px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease; /* Плавный переход, если вдруг ширина изменится */
}

@media (min-width: 951px) {
    .question-glass-card {
        min-height: 450px !important;
        max-height: 450px !important;
    }
}





/* Если хочешь уйти от белого фона - добавь градиентный акцент */
.question-glass-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(90deg, #0056b3, #28a745); /* Твои фирменные цвета */
}

.question-text {
    color: #2c3e50;
    line-height: 1.6;
    text-align: center;
    font-weight: 600;
    margin: 0;
    white-space: pre-line;
}

/* Контейнер для картинки внутри карточки */
.question-image-box {
    width: 100%;
    flex-grow: 1; /* Картинка будет стремиться занять всё свободное место в карточке */
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 15px;
}

    .question-image-box img {
        max-width: 100%;
        max-height: 320px; /* Оставляем место для текста вопроса сверху */
        width: auto;
        height: auto;
        border-radius: 8px;
        object-fit: contain;
    }

/* КНОПКИ - Всегда на одном месте */
.buttons-container {
    display: flex;
    flex-direction: column;
    gap: 12px;
}




    /* Общие настройки для кнопок внутри контейнера */
    .buttons-container .btn,
    .buttons-container button {
        width: 100% !important; /*Кнопки всегда на всю ширину родителя */
        white-space: normal; /*Разрешаем тексту в кнопках переноситься, если он длинный */
        text-align: center;
    }

/* Настройки карточки вопроса для мобилок */
@media (max-width: 767px) {
    /* Тот самый контейнер, который "прыгает" по ширине */
    .question-glass-card {
        /* Убираем десктопные 700px */
        min-width: 0 !important;
        /* Заставляем занимать почти всю ширину экрана */
        width: 95% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        /* Фиксируем отступы, чтобы текст не прилипал к краям */
        padding: 20px !important;
        /* Уменьшаем высоту для мобилок, чтобы влезло вместе с кнопками в экран */
        min-height: 300px !important;
    }

    .buttons-container {
        width: 95% !important;
        margin: 0 auto !important;
    }
        /* Общие настройки для кнопок внутри контейнера */
        .buttons-container .btn,
        .buttons-container button {
            width: 100% !important; /*Кнопки всегда на всю ширину родителя */
            display: block;
            margin-bottom: 8px;
            white-space: normal; /*Разрешаем тексту в кнопках переноситься, если он длинный */
            text-align: center;
        }

    /* Убираем лишние отступы у текста вопроса */
    .question-text {
        font-size: 1.1rem !important;
        width: 100%;
    }
}

@media (max-width: 767px) {
    /* Растягиваем строку на всю ширину родительского контейнера */
    .row5, test-interface {
        display: block !important; /* Уходим от флекса, если он мешает ширине */
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Настраиваем карточку внутри этой строки */
    .question-glass-card {
        min-width: 0 !important; /* Отключаем десктопные 700px */
        width: 100% !important; /* Занимаем всю ширину .row5 */
        box-sizing: border-box; /* Чтобы padding не раздувал ширину больше 100% */
        margin-bottom: 20px !important;
    }

    /* Убеждаемся, что родительский .container не имеет лишних отступов */
    .container {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}

@media (max-width: 767px) {
    /* 1. Главный контейнер интерфейса - запрещаем схлопывание */
    .test-interface {
        display: block !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important; /* Убираем лишние отступы, если они мешают */
        box-sizing: border-box !important;
    }

    /* 2. Карточка вопроса внутри интерфейса */
    .question-glass-card {
        display: flex !important; /* Оставляем флекс для центрирования текста внутри */
        flex-direction: column !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        min-height: 350px !important; /* Держим высоту */
        box-sizing: border-box !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* 3. Контейнер кнопок */
    .buttons-container {
        display: block !important;
        width: 100% !important;
        min-width: 100% !important;
        margin-top: 20px !important;
    }

        /* 4. Сами кнопки - финальный штрих */
        .buttons-container button,
        .buttons-container .btn {
            width: 100% !important;
            box-sizing: border-box !important;
        }
}
/* Десктопная логика для контейнера контента */
#divContent {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    flex-direction: column; /* Чтобы карточка и кнопки шли друг за другом */
}

/* Мобильная логика для контейнера контента */
@media (max-width: 767px) {
    #divContent {
        display: block; /* Выключаем флекс на мобилках для стабильной ширины */
        width: 100%;
        padding: 0 10px; /* Небольшие отступы от краев экрана */
    }
}

/* Контейнер для кнопок входа/старта */
.auth-buttons-wrapper {
    display: flex;
    flex-direction: column; /* На мобилках кнопки друг под другом */
    align-items: center;
    gap: 15px; /* Расстояние между кнопками */
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px 0 !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
}

/* Сами кнопки */
.btn-auth-start {
    width: 100% !important; /* На мобилках кнопки на всю ширину */
    max-width: 400px; /* Чтобы на десктопе они не были гигантскими */
    margin: 0 !important; /* Сбрасываем старые отступы */
    white-space: normal; /* Разрешаем перенос текста внутри кнопки */
    padding: 12px 20px;
    border-radius: 10px;
}

/* Десктопная версия: ставим кнопки в ряд */
@media (min-width: 768px) {
    .auth-buttons-wrapper {
        flex-direction: row; /* В ряд на широких экранах */
        justify-content: center;
    }

    .btn-auth-start {
        width: auto !important; /* Возвращаем нормальный размер */
    }
}

/* Убираем возможные глюки тултипов на мобилках */
@media (max-width: 767px) {
    [data-tooltip]::before, [data-tooltip]::after {
        display: none !important; /* Отключаем тяжелые тултипы на тач-экранах */
    }
}
/* Целевой стиль для твоих кнопок-ответов */
.button-29.answer-btn {
    /* 1. Центрирование: используем flex для идеального выравнивания контента */
    display: flex !important;
    align-items: center !important; /* Центр по вертикали */
    justify-content: center !important; /* Центр по горизонтали */
    text-align: center !important;
    /* 2. Высота: возвращаем к стандарту 35px, но даем расти, если текст огромный */
    min-height: 35px !important;
    height: auto !important;
    /* 3. Внутренние отступы: минимальные, чтобы кнопка была узкой */
    padding: 5px 15px !important;
    /* 4. Сброс индентов: убираем любые "красные строки" или отступы слева */
    text-indent: 0 !important;
    /*margin-bottom: 10px !important;*/
    /* 5. Текст: чтобы не плыл */
    line-height: 1.2 !important;
    white-space: normal !important; /* Позволяет тексту переноситься красиво */
}

    /* Убираем возможные специфические отступы внутри кнопок в некоторых браузерах */
    .button-29.answer-btn span,
    .button-29.answer-btn b {
        margin: 0 !important;
        padding: 0 !important;
    }

/* 1. Сначала сбрасываем margin-bottom у самих кнопок, чтобы он не мешал */
.button-29.answer-btn {
    margin-bottom: 0 !important; /* Убираем индивидуальный отступ */
    /* остальные твои стили (flex, min-height и т.д.) */
}

/* 2. Управляем расстоянием через родительский контейнер */
.buttons-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important; /* Стандартное расстояние для ДЕСКТОПА (10px) */
    width: 100% !important;
}

/* 3. Настройка для МОБИЛЬНЫХ устройств */
@media (max-width: 767px) {
    .buttons-container {
        gap: 12px !important; /* На мобилках можно чуть больше (12px), чтобы было удобнее попадать пальцем */
    }
}


.question-glass-card {
    /* Жёсткая фиксация для десктопа */
    width: 700px !important;
    min-width: 700px !important;
    max-width: 700px !important;
    /* Оставляем высоту, которую мы подобрали для картинок */
    min-height: 450px !important;
    /* Центрирование */
    margin-left: auto !important;
    margin-right: auto !important;
    /* Дизайн */
    background: rgba(255, 255, 255, 0.9);
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    box-sizing: border-box !important;
}

/* ОЧЕНЬ ВАЖНО: На мобилках отключаем жесткие 700px, иначе сайт не влезет в экран */
@media (max-width: 767px) {
    .question-glass-card {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        min-height: 350px !important; /* На мобилках можно чуть меньше высоту */
        padding: 20px !important;
    }
}


.anon-warning-card {
    display: flex;
    align-items: center;
    background: rgba(255, 193, 7, 0.1);
    border-left: 5px solid #ffc107;
    padding: 15px 20px;
    margin: 20px 0;
    border-radius: 8px;
    text-align: left;
    color: #fcd71e;
}

.warning-icon {
    font-size: 24px;
    margin-right: 15px;
}

.warning-text {
    font-size: 0.95rem;
    line-height: 1.4;
}

.save-hint {
    font-weight: 600;
    text-decoration: underline;
}


/*Оформление кнопки назад К тестам Начало*/
.btn-back-to-tests {
    background: rgba(255, 255, 255, 0.1);
    border: 2px solid rgba(255, 255, 255, 0.2);
    color: white;
    padding: 12px 30px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px); /* Эффект стекла */
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

    .btn-back-to-tests:hover {
        background: rgba(255, 255, 255, 0.2);
        border-color: #fcd71e; /* Твой оранжевый цвет для акцента */
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    }

    .btn-back-to-tests .icon {
        font-size: 20px;
        transition: transform 0.3s ease;
    }

    .btn-back-to-tests:hover .icon {
        transform: translateX(-5px); /* Стрелочка дергается влево при наведении */
    }
/*Оформление кнопки назад К тестам Конец*/

#reading-progress-bar {
    position: fixed;
    top: 0;
    left: 0;
    width: 0%; /* Начинаем с нуля */
    height: 4px; /* Тонкая и аккуратная */
    background: #fcd71e; /* Твой яркий оранжевый */
    box-shadow: 0 0 10px #fcd71e, 0 0 5px #fcd71e; /* Эффект свечения */
    z-index: 9999; /* Чтобы была поверх меню */
    transition: width 0.1s ease-out; /* Плавное движение */
}


.orange-quote-box {
    background: rgba(252, 215, 30, 0.05);
    border-left: 5px solid #fcd71e;
    padding: 15px 20px; /* Уменьшили внутренние отступы */
    margin: 20px 0;
    border-radius: 0 8px 8px 0;
    color: #fcd71e;
    font-size: 1.05rem;
    line-height: 1.3; /* Уменьшили межстрочный интервал */
}

    /* Сбрасываем внешние отступы самого списка */
    .orange-quote-box ul {
        list-style-type: none;
        padding-left: 0;
        margin: 10px 0 0 0; /* Минимальный отступ сверху */
    }

    /* Настраиваем отступы между пунктами */
    .orange-quote-box li {
        margin-bottom: 8px !important; /* Жестко задаем 8px между строками */
        padding: 0 !important;
        display: flex;
        align-items: flex-start;
    }

        .orange-quote-box li:last-child {
            margin-bottom: 0 !important; /* У последнего пункта отступа нет */
        }

        .orange-quote-box li::before {
            content: "🔸";
            margin-right: 10px;
            font-size: 0.9rem;
        }






.comparison-container {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin: 40px 0;
    flex-wrap: wrap; /* Для мобильных устройств */
}

.comparison-column {
    flex: 1;
    min-width: 250px;
    background: rgba(255, 255, 255, 0.05); /* Легкий фон "стекла" */
    border: 1px solid rgba(255, 255, 255, 0.15);
    padding: 25px;
    border-radius: 12px;
    backdrop-filter: blur(5px);
    color: white;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}

    .comparison-column h3 {
        font-size: 1.2rem;
        margin-bottom: 20px;
        font-weight: 600;
        display: flex;
        align-items: center;
    }

    .comparison-column ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .comparison-column li {
        margin-bottom: 15px;
        position: relative;
        padding-left: 30px; /* Отступ для иконки */
        font-size: 0.95rem;
    }

        /* Оранжевые галочки для красоты */
        .comparison-column li::before {
            content: "●";
            position: absolute;
            left: 0;
            color: #fcd71e; /* Твой оранжевый акцент */
            font-weight: bold;
        }

/* Отдельный цвет для минусов анонима, если хочешь */
.anon-advantages li::before {
    color: #ff5555;
    content: "▲";
}

.comparison-column.auth-advantages h3 {
    color: #4CAF50; /* Зеленый цвет для плюсов */
}

.comparison-column.anon-advantages h3 {
    color: #fcd71e; /* Оранжевый цвет для анонима */
}



/*.headerR {
    position: relative;
    z-index: 10;
    margin-top: -20px;*/ /* "Наезжаем" на область, где может быть символ */
/*background-color: whitesmoke;*/ /* Цвет твоего футера */
/*}*/

/* Жестко скрываем любой бесхозный текст в конце body */
/*body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

main {
    flex: 1 0 auto;
}

footer {
    flex-shrink: 0;
}*/

/*Чтобы не сжимались картинки до микроскопических размеров Начало*/
img {
    /*min-width: 150px;*/ /* Запрещает сжимать меньше 150 пикселей */
    height: auto; /* Сохраняет пропорции, чтобы картинка не вытягивалась */
    display: block; /* Помогает правильному переносу на новую строку */
    margin: 1px auto; /* Центрирует картинку, если она стала шире текста */
}
/*Чтобы не сжимались картинки до микроскопических размеров Конец*/

/* Стили для фото автора в статьях */
.author-image-container img,
.author.date img {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px;
    min-height: 50px;
    border-radius: 50%; /* Делаем круглым */
    object-fit: cover; /* Чтобы фото не сплющивалось, а обрезалось по центру */
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
}

/*Оформление кнопок Поделиться в соцсети Начало*/
.social-share-list {
    margin-top: 10px;
    display: flex;
    gap: 10px;
    list-style: none;
    padding: 0;
}

.share-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: white;
    transition: transform 0.2s, opacity 0.2s;
}

    .share-btn:hover {
        transform: translateY(-3px);
        opacity: 0.9;
    }

/* Цвета брендов */
.twitter {
    background-color: #1DA1F2;
}

.facebook {
    background-color: #4267B2;
}

.vk {
    background-color: #4C75A3;
}

.telegram {
    background-color: #0088cc;
}

/* Стиль для стрелок пагинации без FA */
.arrow-link {
    display: inline-block;
    width: 30px;
    height: 30px;
    border-top: 3px solid #333;
    border-left: 3px solid #333;
}

    .arrow-link.left {
        transform: rotate(-45deg);
    }

    .arrow-link.right {
        transform: rotate(135deg);
    }
/*Оформление кнопок Поделиться в соцсети Конец*/

/* Мобильная адаптация комментариев Начало*/
@media (max-width: 767px) {
    .news-single .single-comments .main {
        padding-left: 0 !important; /* Убираем огромный отступ слева */
        margin-left: 0 !important;
        display: flex;
        flex-direction: column; /* Складываем элементы вертикально */
    }

    .news-single .single-comments .head {
        position: relative; /* Отменяем абсолютное позиционирование для аватара */
        display: flex;
        align-items: center;
        margin-bottom: 15px; /* Отступ между шапкой и текстом */
    }

    .news-single .single-comments img {
        position: static !important; /* Выбиваем картинку из абсолютного потока */
        width: 80px !important;
        height: 80px !important;
        margin-right: 15px; /* Отступ от фото до имени */
        border-radius: 50%;
    }

    .news-single .single-comments .body {
        width: 100% !important;
        padding-left: 0 !important;
    }

        .news-single .single-comments .body h4 {
            margin-bottom: 2px;
            font-size: 16px;
        }
}
/* Мобильная адаптация комментариев Конец*/

/*Проверка регистрации на js начало*/
/* Расположим поле, сообщение и иконку в строку */
.validation-helper {
    display: flex;
    align-items: center;
    margin-left: 10px; /* отступ слева для сообщений/иконок */
}
/* Сделать контейнер строчным элементом с флексбоксом */
.group-container {
    display: flex;
    align-items: center; /* вертикальное выравнивание по центру */
    margin-bottom: 1rem; /* отступ снизу */
    position: relative; /* чтобы можно было позиционировать label, если нужно */
}

/* Расположим поле, сообщение и иконку в строку */
.validation-helper {
    display: flex;
    align-items: center;
    margin-left: 10px; /* отступ слева для сообщений/иконок */
}

/* Стиль для сообщений */
.error-message {
    margin-left: 10px; /* отступ между сообщениями и иконкой */
    color: red;
    font-size: 12px;
}

/* Стиль для иконки */
.status-icon {
    margin-left: 10px;
    font-size: 14px;
    vertical-align: middle;
}
/*Проверка регистрации на js конец*/

/*Оформляем красиво статьи рекомендованные по итогу прохождения теста Начало*/
.related-card {
    display: block; /* Делает всю область ссылки кликабельной */
    background: #1a3c34; /* Темно-зеленый фон под твой дизайн */
    border: 1px solid #2d5a4f;
    padding: 20px;
    margin-bottom: 15px;
    border-radius: 8px;
    text-decoration: none !important; /* Убираем подчеркивание ссылки */
    transition: all 0.3s ease;
}

    .related-card:hover {
        background: #244d43;
        transform: translateY(-2px);
        border-color: #0088cc;
    }

    .related-card h4 {
        color: #ffffff;
        margin: 10px 0;
        font-size: 1.1rem;
    }

    .related-card p {
        color: #b0c4bd; /* Светло-серый текст на зеленом фоне */
        font-size: 0.9rem;
        line-height: 1.4;
    }

.category-badge {
    color: #0088cc;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.read-more {
    display: inline-block;
    margin-top: 10px;
    color: #0088cc;
    font-weight: bold;
    font-size: 0.85rem;
}
/*Оформляем красиво статьи рекомендованные по итогу прохождения теста Конец*/

/*для минитестов статьях начало*/
.qt-step {
    display: none;
}

    .qt-step.active {
        display: block;
        animation: fadeIn 0.4s;
    }

.quick-test-progress {
    font-size: 0.8rem;
    color: #666;
    margin-bottom: 10px;
    font-weight: bold;
}

.btn-reset-qt {
    background: none;
    border: none;
    color: #0088cc;
    text-decoration: underline;
    cursor: pointer;
    padding: 0;
    margin-top: 10px;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/*для минитестов статьях Конец*/


/*Для медицинского сайт начало*/
/* Принудительный сброс для всего сайта */
body {
    color: #1a202c !important; /* Глубокий темный цвет */
    background-color: #ffffff !important; /* Белый фон */
}

/* Фикс для заголовков, чтобы они не наследовались от старых стилей */
h1, h2, h3, h4, h5, h6, p, span, li {
    color: #1a202c !important;
}

/* Если в старом проекте были стили для ссылок, возвращаем им медицинский синий */
a {
    color: #0056b3;
    text-decoration: none;
}

a:hover {
    color: #003d80;
}

.hero-section {
    /* Градиент от нежно-голубого к очень светлому персику (тепло) */
    background: radial-gradient(circle at top right, #fdfbfb 0%, #ebf4ff 100%);
    position: relative;
    overflow: hidden;
}

/* Свечение за текстом для объема */
.hero-title {
    text-shadow: 0 10px 20px rgba(0, 74, 153, 0.05);
}

/* Кнопка "Начать" - сделаем её "вкусной" с градиентом */
.btn-premium {
    background: linear-gradient(135deg, #0056b3 0%, #3b82f6 100%);
    border: none;
    box-shadow: 0 15px 30px rgba(59, 130, 246, 0.3);
    transition: all 0.3s ease;
}

    .btn-premium:hover {
        transform: translateY(-3px);
        box-shadow: 0 20px 40px rgba(59, 130, 246, 0.4);
    }


.shadow-text {
    color: #4a5568 !important; /* Мягкий серый для описания */
}

/* Плавное появление (по желанию) */
.hero-section {
    animation: fadeIn 1.2s ease-in-out;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Декоративный круг: виден только на десктопах (от 992px) */
.hero-circle-bg {
    display: none;
}

@media (min-width: 992px) {
    .hero-circle-bg {
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: -1;
        background-color: #0056b3;
        opacity: 0.1;
        border-radius: 50%;
        width: 450px;
        height: 450px;
    }
}


.container, .container-lg {
    max-width: 1200px !important; /* Ограничиваем контентную область */
    margin-right: auto !important;
    margin-left: auto !important;
}

.container-custom {
    width: 90% !important; /* На мобилках почти на весь экран */
    max-width: 1200px !important; /* На ПК строго ограничено */
    margin-right: auto !important;
    margin-left: auto !important;
    padding-left: 15px;
    padding-right: 15px;
    /* Убираем любые флексы, если они прилипли от Bootstrap */
    display: block !important;
}

/* Чтобы на очень больших мониторах (2K/4K) не расплывалось */
@media (min-width: 1400px) {
    .container-custom {
        max-width: 1140px !important;
    }
}

/* Адаптивный заголовок */
.hero-title {
    font-size: calc(1.8rem + 1.5vw) !important; /* На мобилках ~2rem, на десктопе дорастет до ~3.5rem */
    line-height: 1.2;
    word-wrap: break-word;
}

@media (max-width: 576px) {
    .hero-title {
        font-size: 1.6rem !important; /* Гарантированный фикс для самых маленьких экранов */
    }
}

/* Увеличиваем визуальный вес картинки-коллажа */
.hero-img-main {
    max-height: 550px !important; /* Чуть выше */
    width: 100%;
    object-fit: contain;
    transition: transform 0.5s ease;
}

    .hero-img-main:hover {
        transform: scale(1.02); /* Легкий интерактив */
    }


/* Градиентные иконки */
.icon-gradient {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #0056b3 0%, #3b82f6 100%);
    border-radius: 24px; /* Мягкий квадрат */
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 2rem;
    box-shadow: 0 10px 20px rgba(59, 130, 246, 0.2);
    transition: all 0.3s ease;
}

/* Карточки с эффектом парения */
.feature-card-premium {
    background: #ffffff;
    border: 1px solid #f1f5f9;
    border-radius: 24px;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

    .feature-card-premium:hover {
        transform: translateY(-10px);
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.05);
        border-color: #e2e8f0;
    }

        .feature-card-premium:hover .icon-gradient {
            transform: rotate(10deg) scale(1.1);
        }



/*.navbar {
    backdrop-filter: blur(10px);*/ /* Тот самый стеклянный эффект */
    /*background-color: rgba(255, 255, 255, 0.8) !important;
    border-bottom: 1px solid rgba(0, 74, 153, 0.05);
    padding: 15px 0;
    transition: all 0.3s ease;
}*/

/* Эффект при наведении на пункты меню */
/*.nav-link {
    color: #1e293b !important;
    font-weight: 500;
    position: relative;
    padding: 5px 15px !important;
}

.nav-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 2px;
    background: #0056b3;
    transition: all 0.3s ease;
    transform: translateX(-50%);
}

.nav-link:hover::after {
    width: 20px;
}*/

/* section {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.8s ease-out;
}

   section.visible {
        opacity: 1;
        transform: translateY(0);
    }*/
/* Изначально секции невидимы, но занимают место (чтобы скролл не прыгал) */
.reveal {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.8s ease;
}

    .reveal.active {
        opacity: 1;
        transform: translateY(0);
    }


/*.navbar {*/
    /* Стекло */
    /*background: rgba(255, 255, 255, 0.7) !important;
    backdrop-filter: blur(15px) saturate(180%);
    -webkit-backdrop-filter: blur(15px) saturate(180%);*/
    /* Тонкая граница снизу */
    /*border-bottom: 1px solid rgba(255, 255, 255, 0.3);*/
    /* Тень */
    /*box-shadow: 0 4px 30px rgba(0, 0, 0, 0.03);
    padding: 1rem 0;
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 1030;
}*/

/* Логотип */
/*.navbar-brand {
    font-weight: 800;
    letter-spacing: -0.5px;
    background: linear-gradient(135deg, #004a99 0%, #3b82f6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}*/


.hero-img-main {
    width: 100%;
    max-height: 550px !important;
    object-fit: cover;
    border-radius: 30px;
    box-shadow: 0 20px 50px rgba(0, 74, 153, 0.15); /* "Дорогая" тень */
}

@media (max-width: 991px) {
    .hero-img-main {
        max-height: 400px !important;
        margin-bottom: 2rem;
        /* Делаем её чуть шире на мобилках, выходя за поля */
        transform: scale(1.05);
    }

    .hero-title {
        text-align: center;
        margin-top: 1rem;
    }
}


/* Основной контейнер меню */
/*.navbar {
    background: rgba(255, 255, 255, 0.75) !important;*/ /* Прозрачность */
    /*backdrop-filter: blur(12px) saturate(160%);*/ /* Эффект матового стекла */
    /*-webkit-backdrop-filter: blur(12px) saturate(160%);
    border-bottom: 1px solid rgba(0, 86, 179, 0.08);*/ /* Едва заметная линия */
    /*transition: all 0.4s ease;
    padding: 12px 0;
}*/

/* Центрирование меню относительно всего экрана */
/*@media (min-width: 992px) {
    #navbarNav {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }
}*/

/* Стеклянный эффект (повторим для закрепления) */
/*.navbar {
    background: rgba(255, 255, 255, 0.8) !important;
    backdrop-filter: blur(15px) saturate(180%);
    -webkit-backdrop-filter: blur(15px) saturate(180%);
    transition: all 0.3s ease;
    min-height: 70px;
}*/

/* Убираем жирность и стандартные подчеркивания */
/*.nav-link {
    font-weight: 600 !important;
    letter-spacing: 0.5px;
    color: #1e293b !important;
    text-transform: uppercase;
    font-size: 0.85rem;
}

.nav-link:hover {
    color: #0056b3 !important;
}*/


/* Центрирование меню относительно всего экрана */
@media (min-width: 992px) {
    #navbarNav {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }
}

/* Стеклянный эффект (повторим для закрепления) */
.navbar {
    background: rgba(255, 255, 255, 0.8) !important;
    backdrop-filter: blur(15px) saturate(180%);
    -webkit-backdrop-filter: blur(15px) saturate(180%);
    transition: all 0.3s ease;
    min-height: 70px;
}

/* Убираем жирность и стандартные подчеркивания */
.nav-link {
    font-weight: 600 !important;
    letter-spacing: 0.5px;
    color: #1e293b !important;
    text-transform: uppercase;
    font-size: 0.85rem;
}

    .nav-link:hover {
        color: #0056b3 !important;
    }


/* Отступ для всего контента, чтобы не залезал под FIXED меню */
body {
    padding-top: 90px !important; /* Увеличь, если меню высокое */
}

/* Убираем белую рамку в центре меню */
.navbar-nav {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

/* Выравнивание кнопки "Войти" по вертикали */
.headerR-right {
    display: flex;
    align-items: center;
    height: 100%;
}

/* Фикс для "Конфиденциальности" в футере */
.footer {
    position: relative;
    width: 100%;
    background: #f8fafc;
    padding: 20px 0;
    margin-top: auto; /* Выталкивает футер вниз при малом контенте */
    z-index: 10;
}
/* Убираем все тени и рамки со списков меню */
.navbar-collapse,
.navbar-nav,
.nav-item {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Если хочешь скруглить, если она всё же где-то вылезает */
.navbar-nav {
    border-radius: 15px !important;
}

/* Фикс для наложения футера: убери position: absolute у всего, что связано с footer */
footer {
    position: static !important;
}

.article-card-premium {
    transition: all 0.3s ease;
}

    .article-card-premium:hover {
        transform: translateY(-5px);
        box-shadow: 0 20px 40px rgba(0,0,0,0.08) !important;
    }

.filter-grayscale {
    filter: grayscale(100%);
    transition: all 0.4s ease;
}

    .filter-grayscale:hover {
        filter: grayscale(0%);
        transform: scale(1.1);
    }



/* Пульсация иконки при наведении на карточку */
.feature-card-premium:hover .icon-gradient i {
    animation: pulse-icon 1s infinite;
}

@keyframes pulse-icon {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.15);
    }

    100% {
        transform: scale(1);
    }
}

/* Добавляем внутренний блик для "дороговизны" */
.icon-gradient::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255,255,255,0.3) 0%, transparent 70%);
    transform: rotate(45deg);
    pointer-events: none;
}
/* Вытаскиваем иконку на передний план */
.icon-gradient i {
    color: #ffffff !important; /* Чистый белый */
    font-size: 2.2rem !important; /* Размер */
    display: block !important;
    position: relative !important;
    z-index: 10 !important; /* Поверх всех градиентов */
    line-height: 1 !important;
    text-shadow: 0 2px 10px rgba(0,0,0,0.1); /* Легкий объем */
}

/* Центрируем иконку внутри бокса, если она съехала */
.icon-gradient {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden;
    position: relative;
}

/* Специальный фикс для контейнера графика */
.analysis-card {
    transition: all 0.3s ease;
}

@media (max-width: 768px) {
    /* Уменьшаем внутренние отступы карточки на мобилках, чтобы графику было просторнее */
    .analysis-card {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    /* Заставляем контейнер графика игнорировать часть отступов */
    .chart-container-mobile {
        margin-left: -5px;
        margin-right: -5px;
        height: 200px !important; /* Фиксированная высота для мобилок, чтобы не был "приплюснутым" */
    }
}
@media (max-width: 991px) {
    /* Растягиваем колонку с графиком на мобилках */
    .chart-column-mobile {
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100vw !important; /* На всю ширину окна */
        margin-left: calc(-50vw + 50%) !important; /* Магия центрирования при 100vw */
    }

    /* Сама карточка внутри колонки тоже должна стать шире */
    .analysis-card {
        border-radius: 0 !important; /* Убираем скругления по бокам, чтобы прилегало к краям */
        border-left: none !important;
        border-right: none !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

@media (max-width: 991px) {
    /* Снимаем ограничения с row именно в секции графика */
    .row-mobile-reset {
        display: block !important; /* Отменяем flex, чтобы колонки не жались */
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
    }

    /* Растягиваем колонку с графиком на 100% ширины */
    .chart-column-mobile {
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
    }

    /* Убираем скругления у карточки, чтобы она была "в край" */
    .analysis-card {
        border-radius: 0 !important;
        border-left: none !important;
        border-right: none !important;
    }
}


.step-number {
    width: 60px;
    height: 60px;
    background: #0056b3;
    color: white;
    font-size: 1.5rem;
    font-weight: 800;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 20px rgba(0, 86, 179, 0.2);
    position: relative;
    z-index: 2;
}

/* Линия между шагами на десктопе */
@media (min-width: 768px) {
    .step-item {
        position: relative;
    }

        .step-item:not(:last-child)::after {
            content: '';
            position: absolute;
            top: 30px;
            left: 60%;
            width: 80%;
            height: 2px;
            background: rgba(0, 86, 179, 0.1);
            z-index: 1;
        }
}
/* Эффект парения картинки */
.floating-img {
    animation: floating 4s ease-in-out infinite;
}

@keyframes floating {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-15px);
    }

    100% {
        transform: translateY(0px);
    }
}

/* Стеклянный эффект для плашки */
.backdrop-blur {
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}


/* Фикс для длинных заголовков */
.card-title-fixed {
    font-size: 1.15rem !important;
    white-space: nowrap; /* Запрещаем перенос, если не влезет - уменьшим шрифт */
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 1200px) {
    .card-title-fixed {
        font-size: 1rem !important;
        white-space: normal; /* На маленьких экранах пусть переносится */
    }
}

/* Интерактив для карточек */
.feature-card-interactive {
    background: #fff;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    border: 1px solid rgba(0,0,0,0.03) !important;
}

    .feature-card-interactive:hover {
        transform: scale(1.05);
        background: #fdfdfd;
        box-shadow: 0 30px 60px rgba(0,74,153,0.1) !important;
        z-index: 10;
    }

/* Красивые иконки */
.icon-box-premium {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #0056b3 0%, #3b82f6 100%);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.8rem;
    box-shadow: 0 10px 20px rgba(59, 130, 246, 0.15);
}
/* Эффект дыхания для картинки */
.main-about-img {
    transition: all 0.5s ease;
    border: 1px solid rgba(255,255,255,0.3);
}

.about-img-wrapper:hover .main-about-img {
    transform: scale(1.02);
}

/* Стеклянная карточка-статистика */
.glass-stat-card {
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.5);
    width: 85%;
    z-index: 5;
    animation: floating-subtle 3s ease-in-out infinite;
}

/* Пульсирующая иконка внутри плашки */
.icon-pulse {
    width: 45px;
    height: 45px;
    background: #0056b3;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 15px rgba(0, 86, 179, 0.4);
}

@keyframes floating-subtle {
    0% {
        transform: translate(-50%, 0px);
    }

    50% {
        transform: translate(-50%, -10px);
    }

    100% {
        transform: translate(-50%, 0px);
    }
}

.hover-color {
    transition: all 0.4s ease;
    opacity: 0.6;
}

    .hover-color:hover {
        filter: grayscale(0%) !important;
        opacity: 1;
        transform: scale(1.1);
    }
