/* ============================================================
   navbar-hover.css — АО "КЗСК"
   Навигация с 3 уровнями через .dropdown-submenu
   ============================================================ */

/* --- Анимации --- */

.bsb-animated {
    --bsb-animation-duration: 1s;
    animation-duration: var(--bsb-animation-duration);
    animation-fill-mode: both
}

@keyframes bsb-fadeIn { 0% { opacity: 0 } to { opacity: 1 } }
.bsb-fadeIn { animation-name: bsb-fadeIn }

@keyframes bsb-fadeInUp {
    0% { opacity: 0; transform: translate3d(0, 100%, 0) }
    to { opacity: 1; transform: translateZ(0) }
}
.bsb-fadeInUp { animation-name: bsb-fadeInUp }

@keyframes bsb-fadeInDown {
    0% { opacity: 0; transform: translate3d(0, -100%, 0) }
    to { opacity: 1; transform: translateZ(0) }
}
.bsb-fadeInDown { animation-name: bsb-fadeInDown }

@keyframes bsb-fadeInLeft {
    0% { opacity: 0; transform: translate3d(-100%, 0, 0) }
    to { opacity: 1; transform: translateZ(0) }
}
.bsb-fadeInLeft { animation-name: bsb-fadeInLeft }

@keyframes bsb-fadeInRight {
    0% { opacity: 0; transform: translate3d(100%, 0, 0) }
    to { opacity: 1; transform: translateZ(0) }
}
.bsb-fadeInRight { animation-name: bsb-fadeInRight }

@keyframes bsb-fadeOut { 0% { opacity: 1 } to { opacity: 0 } }
.bsb-fadeOut { animation-name: bsb-fadeOut }

@keyframes bsb-zoomIn {
    0% { opacity: 0; transform: scale3d(.3, .3, .3) }
    50% { opacity: 1 }
}
.bsb-zoomIn { animation-name: bsb-zoomIn }

/* --- Caret видимость --- */
.bsb-navbar:not(.bsb-navbar-caret) .dropdown-toggle:after {
    display: none
}

/* --- Анимация dropdown-menu.show --- */
.bsb-navbar-hover .dropdown-menu.show.bsb-fadeIn { --bsb-animation-duration: 500ms; animation-fill-mode: both; animation-name: bsb-fadeIn }
.bsb-navbar-hover .dropdown-menu.show.bsb-fadeInUp { --bsb-animation-duration: 500ms; animation-fill-mode: both; animation-name: bsb-fadeInUp }
.bsb-navbar-hover .dropdown-menu.show.bsb-fadeInDown { --bsb-animation-duration: 500ms; animation-fill-mode: both; animation-name: bsb-fadeInDown }
.bsb-navbar-hover .dropdown-menu.show.bsb-fadeInLeft { --bsb-animation-duration: 500ms; animation-fill-mode: both; animation-name: bsb-fadeInLeft }
.bsb-navbar-hover .dropdown-menu.show.bsb-fadeInRight { --bsb-animation-duration: 500ms; animation-fill-mode: both; animation-name: bsb-fadeInRight }
.bsb-navbar-hover .dropdown-menu.show.bsb-zoomIn { --bsb-animation-duration: 500ms; animation-fill-mode: both; animation-name: bsb-zoomIn }

/* --- Показ dropdown по hover (все брейкпоинты) --- */

@media(min-width:576px) {
    .bsb-navbar.navbar-expand-sm { --bs-navbar-padding-y: 0; --bs-navbar-nav-link-padding-x: 1rem }
    .bsb-navbar.navbar-expand-sm .navbar-nav { --bs-nav-link-padding-y: 1.5rem }
    .bsb-navbar.navbar-expand-sm.bsb-navbar-hover .dropdown>.dropdown-menu.show { display: none !important }
    .bsb-navbar.navbar-expand-sm.bsb-navbar-hover .dropdown:hover>.dropdown-menu,
    .bsb-navbar.navbar-expand-sm.bsb-navbar-hover .dropdown:hover>.dropdown-menu.show { display: block !important }
}

@media(min-width:768px) {
    .bsb-navbar.navbar-expand-md { --bs-navbar-padding-y: 0; --bs-navbar-nav-link-padding-x: 1rem }
    .bsb-navbar.navbar-expand-md .navbar-nav { --bs-nav-link-padding-y: 1.5rem }
    .bsb-navbar.navbar-expand-md.bsb-navbar-hover .dropdown>.dropdown-menu.show { display: none !important }
    .bsb-navbar.navbar-expand-md.bsb-navbar-hover .dropdown:hover>.dropdown-menu,
    .bsb-navbar.navbar-expand-md.bsb-navbar-hover .dropdown:hover>.dropdown-menu.show { display: block !important }
}

@media(min-width:992px) {
    .bsb-navbar.navbar-expand-lg { --bs-navbar-padding-y: 0; --bs-navbar-nav-link-padding-x: 1rem }
    .bsb-navbar.navbar-expand-lg .navbar-nav { --bs-nav-link-padding-y: 1.5rem }
    .bsb-navbar.navbar-expand-lg.bsb-navbar-hover .dropdown>.dropdown-menu.show { display: none !important }
    .bsb-navbar.navbar-expand-lg.bsb-navbar-hover .dropdown:hover>.dropdown-menu,
    .bsb-navbar.navbar-expand-lg.bsb-navbar-hover .dropdown:hover>.dropdown-menu.show { display: block !important }
}

@media(min-width:1200px) {
    .bsb-navbar.navbar-expand-xl { --bs-navbar-padding-y: 0; --bs-navbar-nav-link-padding-x: 1rem }
    .bsb-navbar.navbar-expand-xl .navbar-nav { --bs-nav-link-padding-y: 1.5rem }
    .bsb-navbar.navbar-expand-xl.bsb-navbar-hover .dropdown>.dropdown-menu.show { display: none !important }
    .bsb-navbar.navbar-expand-xl.bsb-navbar-hover .dropdown:hover>.dropdown-menu,
    .bsb-navbar.navbar-expand-xl.bsb-navbar-hover .dropdown:hover>.dropdown-menu.show { display: block !important }
}

@media(min-width:1400px) {
    .bsb-navbar.navbar-expand-xxl { --bs-navbar-padding-y: 0; --bs-navbar-nav-link-padding-x: 1rem }
    .bsb-navbar.navbar-expand-xxl .navbar-nav { --bs-nav-link-padding-y: 1.5rem }
    .bsb-navbar.navbar-expand-xxl.bsb-navbar-hover .dropdown>.dropdown-menu.show { display: none !important }
    .bsb-navbar.navbar-expand-xxl.bsb-navbar-hover .dropdown:hover>.dropdown-menu,
    .bsb-navbar.navbar-expand-xxl.bsb-navbar-hover .dropdown:hover>.dropdown-menu.show { display: block !important }
}

.bsb-navbar.navbar-expand { --bs-navbar-padding-y: 0; --bs-navbar-nav-link-padding-x: 1rem }
.bsb-navbar.navbar-expand .navbar-nav { --bs-nav-link-padding-y: 1.5rem }
.bsb-navbar.navbar-expand.bsb-navbar-hover .dropdown>.dropdown-menu.show { display: none !important }
.bsb-navbar.navbar-expand.bsb-navbar-hover .dropdown:hover>.dropdown-menu,
.bsb-navbar.navbar-expand.bsb-navbar-hover .dropdown:hover>.dropdown-menu.show { display: block !important }


/* ============================================================
   ТРЕТИЙ УРОВЕНЬ — .dropdown-submenu
   ============================================================ */

.dropdown-submenu {
    position: relative;
}

/* Пункт с подменю — выглядит как dropdown-item + стрелка вправо */
.dropdown-submenu > .dropdown-item.dropdown-toggle {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding-right: 1.5rem;
}

/* Стрелка ВПРАВО */
.dropdown-submenu > .dropdown-item.dropdown-toggle::after {
    content: "";
    display: inline-block;
    margin-left: 0.5rem;
    vertical-align: 0.15em;
    border-top: 0.3em solid transparent;
    border-right: 0;
    border-bottom: 0.3em solid transparent;
    border-left: 0.3em solid currentColor;
    float: none;
}

/* Подменю 3-го уровня — вылет вправо */
.dropdown-submenu > .dropdown-menu {
    position: absolute;
    top: 0;
    left: 100%;
    margin-top: 0;
    margin-left: 0;
}

/* Последний пункт — подменю влево */
.dropdown-submenu:last-child > .dropdown-menu {
    right: 100%;
    left: auto;
}

/* Мостик (чтобы не закрывалось при движении мыши) */
.dropdown-submenu > .dropdown-menu::before {
    content: '';
    position: absolute;
    top: 0;
    left: -0.375rem;
    width: 0.375rem;
    height: 100%;
}

/* Показ подменю по hover — десктоп */
@media(min-width:992px) {
    .bsb-navbar.navbar-expand-lg.bsb-navbar-hover .dropdown-submenu:hover > .dropdown-menu {
        display: block !important;
    }
}

/* Мобильная версия — подменю раскрывается вниз */
@media (max-width: 991.98px) {
    .dropdown-submenu > .dropdown-menu {
        position: static;
        margin-left: 1rem;
        border: none;
        box-shadow: none;
        padding-left: 0.5rem;
        background-color: transparent;
    }
    
    .dropdown-submenu > .dropdown-item.dropdown-toggle::after {
        border-top: 0.3em solid currentColor;
        border-right: 0.3em solid transparent;
        border-bottom: 0;
        border-left: 0.3em solid transparent;
    }
}