.body {
    font-family: "Huninn", sans-serif;
    font-weight: 500;
    font-style: normal;
}

/* Compact app shell without legacy header */
.lss-nav-status {
    position: absolute;
    top: 0;
    right: 8px;
    bottom: 0;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding-left: 0;
    background: transparent;
}

.lss-nav-clock {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: rgba(255, 255, 255, 0.84);
    font-size: 12px;
    line-height: 1;
    white-space: nowrap;
}

.lss-nav-clock i {
    font-size: 12px;
}

.lss-nav-clock__sep {
    opacity: 0.5;
}

.lss-nav-action {
    position: relative;
    width: 24px;
    height: 24px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: rgba(255, 255, 255, 0.84);
    font-size: 12px;
    line-height: 1;
    text-decoration: none;
}

.lss-nav-action .bx {
    font-size: 14px;
    line-height: 1;
}

.lss-nav-action-theme {
    margin-right: 8px;
}

.lss-nav-action:hover,
.lss-nav-action:focus {
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    text-decoration: none;
}

.lss-nav-userlink {
    min-width: 0;
    min-height: 32px;
    padding: 0 8px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border-radius: 16px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 12px;
    line-height: 1;
    text-decoration: none;
}

.lss-nav-userlink:hover,
.lss-nav-userlink:focus {
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    text-decoration: none;
}

.lss-nav-userlink__login {
    max-width: 130px;
    overflow: hidden;
    color: rgba(255, 255, 255, 0.92);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lss-nav-userlink__icon {
    display: none;
    font-size: 16px;
    line-height: 1;
}

.tab-navigation nav .nav.nav-pills {
    padding-right: 300px;
}

.tab-navigation nav > ul > li > a {
    min-height: 44px;
    margin: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    padding: 6px 10px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent;
    line-height: 1;
}

.tab-navigation nav > ul > li > a i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 16px;
    margin: 0;
    line-height: 1;
}

.tab-navigation nav > ul > li.nav-active > a,
.tab-navigation nav > ul > li.nav-expanded > a {
    border-color: transparent;
    background: transparent;
    color: #296ab0;
}

.tab-navigation nav .nav.nav-pills > li > a:hover,
.tab-navigation nav .nav.nav-pills > li > a:focus,
.tab-navigation nav .nav.nav-pills > li > a:focus-visible,
.tab-navigation nav .nav.nav-pills > li.nav-active > a,
.tab-navigation nav .nav.nav-pills > li.nav-active > a:hover,
.tab-navigation nav .nav.nav-pills > li.nav-active > a:focus,
.tab-navigation nav .nav.nav-pills > li.nav-active > a:focus-visible,
.tab-navigation nav .nav.nav-pills > li.nav-expanded > a,
.tab-navigation nav .nav.nav-pills > li.nav-expanded > a:hover,
.tab-navigation nav .nav.nav-pills > li.nav-expanded > a:focus,
.tab-navigation nav .nav.nav-pills > li.nav-expanded > a:focus-visible {
    border-color: transparent !important;
    background: transparent !important;
    color: #296ab0 !important;
    box-shadow: none !important;
    outline: none !important;
}

.tab-navigation .dropdown-menu a:hover,
.tab-navigation .dropdown-menu a:focus,
.tab-navigation .dropdown-menu a:focus-visible,
.tab-navigation .dropdown-menu li.nav-active > a,
.tab-navigation .dropdown-menu li.nav-active > a:hover,
.tab-navigation .dropdown-menu li.nav-active > a:focus,
.tab-navigation .dropdown-menu li.nav-active > a:focus-visible {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: #33353f !important;
    box-shadow: none !important;
    outline: none !important;
}

html.dark .tab-navigation .dropdown-menu a:hover,
html.dark .tab-navigation .dropdown-menu a:focus,
html.dark .tab-navigation .dropdown-menu a:focus-visible,
html.dark .tab-navigation .dropdown-menu li.nav-active > a,
html.dark .tab-navigation .dropdown-menu li.nav-active > a:hover,
html.dark .tab-navigation .dropdown-menu li.nav-active > a:focus,
html.dark .tab-navigation .dropdown-menu li.nav-active > a:focus-visible {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: rgba(255, 255, 255, 0.86) !important;
}

.tab-navigation .dropdown-menu,
html.has-tab-navigation .inner-wrapper,
html.has-tab-navigation .content-body.tab-menu-opened {
    border-radius: 0 !important;
}

.tab-navigation nav .nav.nav-pills > li.lss-menu-icon-only > a {
    width: 44px;
    min-width: 44px;
    justify-content: center;
    padding-right: 0;
    padding-left: 0;
}

.tab-navigation nav .nav.nav-pills > li.lss-menu-icon-only > a i {
    margin-right: 0;
}

@media (min-width: 992px) {
    html.has-tab-navigation .inner-wrapper {
        padding: 0 !important;
    }

    html.has-tab-navigation .content-body.tab-menu-opened {
        padding-top: 0;
        border-radius: 0;
    }
}

/* Фиксированная по высоте точка входа: html получает класс lss-fixed-page,
   а экран, который сам держит внутренние скроллы, добавляет lss-fixed-page-managed.
   Только у такого экрана страница не прокручивается целиком. Остальные страницы
   прокручиваются документом, и меню уходит вверх вместе с ним: закреплённого
   меню нет. Модель одна на всех ширинах. */
html.lss-fixed-page-managed,
html.lss-fixed-page-managed body {
    height: 100%;
    overflow: hidden !important;
}

html.lss-fixed-page-managed.has-tab-navigation .inner-wrapper {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    height: 100dvh;
    min-height: 0;
    overflow: hidden;
    padding: 0 !important;
}

html.lss-fixed-page-managed.has-tab-navigation .inner-wrapper > .tab-navigation {
    flex: 0 0 auto;
}

html.lss-fixed-page-managed.has-tab-navigation .content-body.tab-menu-opened {
    box-sizing: border-box;
    display: block;
    flex: 1 1 auto;
    height: auto;
    min-height: 0;
}

/* Экран сам держит внутренние скроллы — TMS, дашборд и подобные.
   Здесь рабочая область ничего не прокручивает и отдаёт всю высоту содержимому. */
html.lss-fixed-page-managed.has-tab-navigation .content-body.tab-menu-opened {
    overflow: hidden;
    padding: 0 !important;
}

html.lss-fixed-page-managed.has-tab-navigation .content-body.tab-menu-opened > .lss-screen,
html.lss-fixed-page-managed.has-tab-navigation .content-body.tab-menu-opened > .row {
    height: 100%;
    min-height: 0;
    margin: 0;
    --bs-gutter-x: 0;
}

html.lss-fixed-page-managed.has-tab-navigation .content-body.tab-menu-opened > .row > [class*="col-"] {
    height: 100%;
    min-height: 0;
    padding-left: 0;
    padding-right: 0;
}

/* Обёртка обычной страницы на узких экранах: отступ уменьшается до общего шага,
   а не обнуляется. Раньше в теме стояло глобальное `.p-3 { padding: 0 !important }`,
   из-за чего контент на всех страницах прилипал к краям экрана.
   Там, где отступ действительно не нужен, вешаем .lss-flush-narrow. */
@media (max-width: 991px) {
    .content-body .p-3 {
        padding: var(--lss-pad);
    }

    .content-body .p-3.lss-flush-narrow,
    .content-body .lss-flush-narrow > .p-3 {
        padding: 0;
    }
}

@media only screen and (max-width: 991px) {
    .tab-navigation {
        top: 0 !important;
    }

    .tab-navigation nav .nav.nav-pills {
        padding-right: 132px !important;
    }

    .tab-navigation nav .nav.nav-pills > li.lss-menu-icon-only > a {
        width: 44px;
        min-width: 44px;
    }

    .lss-nav-status {
        right: 4px;
        padding-left: 0;
        gap: 2px;
        background: transparent;
    }


    html.has-tab-navigation .inner-wrapper {
        padding: 0 !important;
    }

    html.has-tab-navigation .content-body {
        padding-top: 0;
    }

}

@media (min-width: 992px) {
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li > a,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li > a:hover,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li > a:focus,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li > a:focus-visible,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-active > a,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-active > a:hover,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-active > a:focus,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-active > a:focus-visible,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-expanded > a,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-expanded > a:hover,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-expanded > a:focus,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-expanded > a:focus-visible {
        border-color: transparent !important;
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        outline: none !important;
    }

    html.has-tab-navigation .tab-navigation .nav-link,
    html.has-tab-navigation .tab-navigation .nav-link:hover,
    html.has-tab-navigation .tab-navigation .nav-link:focus,
    html.has-tab-navigation .tab-navigation .nav-link:focus-visible,
    html.has-tab-navigation .tab-navigation .nav-link:active {
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        outline: none !important;
    }
}

:root {
    --lss-css-build-version: "1.0.0";

    /* Согласованная палитра и метрики экранов. Правится только здесь. */
    --lss-accent: #296ab0;
    --lss-accent-wash: #dbeafe;
    --lss-accent-soft: #eef5ff;
    --lss-surface: #ffffff;
    --lss-surface-sunken: #f5f7fa;
    --lss-border: #e3e8ef;
    --lss-border-soft: rgba(15, 23, 42, .07);
    --lss-text: #1f2937;
    --lss-text-muted: #64748b;
    --lss-link: #296ab0;

    --lss-success: #2f8f55;
    --lss-success-wash: #f0fbf4;
    --lss-warning: #c47a17;
    --lss-warning-wash: #fff7ec;
    --lss-danger: #b94a48;
    --lss-danger-wash: #fff0f0;
    --lss-info-wash: #eef6fc;

    /* Цвета сущностей. Отдельный смысловой слой, как цвета маркетплейсов:
       одинаковы в обеих темах, знак поверх всегда белый. */
    --lss-kind-order: #296ab0;
    --lss-kind-route: #4a5fb5;
    --lss-kind-system: #c47a17;
    --lss-kind-staff: #2f6d9e;
    --lss-kind-driver: #2f8f55;
    --lss-kind-seller: #6b5ca5;

    --lss-radius: 0;
    --lss-radius-control: 0;
    --lss-control-height: 36px;
    --lss-gap: 10px;
    --lss-pad: 10px;
}

/* Водительский /tms/ держит тему своим классом tms-driver-dark — токены переключаются и по нему */
html.dark,
body.dark,
html.tms-driver-dark,
body.tms-driver-dark {
    --lss-accent-wash: #1e3a5f;
    --lss-accent-soft: #2f3641;
    --lss-surface: #20242b;
    --lss-surface-sunken: #101418;
    --lss-border: #282d36;
    --lss-border-soft: rgba(255, 255, 255, .07);
    --lss-text: #e5edf7;
    --lss-text-muted: #aeb6bf;
    --lss-link: #8ec2ef;

    --lss-success: #5fbf85;
    --lss-success-wash: #1b2f24;
    --lss-warning: #e0a34a;
    --lss-warning-wash: #2f2718;
    --lss-danger: #e07070;
    --lss-danger-wash: #2f1d1d;
    --lss-info-wash: #1b2733;
}

/* Полосы прокрутки в тёмной теме. Раньше правило жило только в заявках
   и только для одной таблицы, поэтому в чате и на складе полоса оставалась белой. */
html.dark,
body.dark {
    scrollbar-width: thin;
    scrollbar-color: var(--lss-accent) var(--lss-surface-sunken);
}

html.dark ::-webkit-scrollbar,
body.dark ::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

html.dark ::-webkit-scrollbar-track,
body.dark ::-webkit-scrollbar-track {
    background: var(--lss-surface-sunken);
}

html.dark ::-webkit-scrollbar-thumb,
body.dark ::-webkit-scrollbar-thumb {
    border: 2px solid var(--lss-surface-sunken);
    border-radius: 999px;
    background: var(--lss-accent);
}

html.dark ::-webkit-scrollbar-thumb:hover,
body.dark ::-webkit-scrollbar-thumb:hover {
    background: var(--lss-link);
}

/* Примитивы экрана. Точка входа = .lss-screen, внутри сетка и панели.
   Порядок вложенности везде один: screen -> grid -> panel -> panel__body. */
.lss-screen {
    box-sizing: border-box;
    min-height: 0;
    background: var(--lss-surface-sunken);
}

.lss-screen__grid {
    display: grid;
    gap: var(--lss-gap);
    align-items: stretch;
    min-height: 0;
}

.lss-panel {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    border: 1px solid var(--lss-border);
    border-radius: var(--lss-radius);
    background: var(--lss-surface);
    color: var(--lss-text);
}

.lss-panel--plain {
    border-color: transparent;
    background: transparent;
}

.lss-panel__head {
    position: relative;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 10px;
    height: 38px;
    min-height: 38px;
    padding: 0 var(--lss-pad);
    border-bottom: 1px solid var(--lss-border);
    color: var(--lss-text);
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-transform: none;
}

.lss-panel__body {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: var(--lss-pad);
}

.lss-panel__body--flush {
    padding: 0;
}

html.lss-fixed-page .lss-screen {
    height: 100%;
    padding: var(--lss-pad);
}

.lss-build-badge {
    position: fixed;
    right: 14px;
    bottom: 14px;
    z-index: 10050;
    display: inline-flex;
    align-items: center;
    gap: 0;
    max-width: calc(100vw - 28px);
    padding: 7px 9px 7px 9px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 8px;
    background: rgba(21, 24, 31, 0.84);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18);
    color: rgba(255, 255, 255, 0.92);
    font-size: 11px;
    line-height: 1;
    white-space: nowrap;
    backdrop-filter: blur(8px);
    cursor: pointer;
    transition: transform .22s ease, opacity .22s ease;
}

.lss-build-badge.is-hidden {
    cursor: pointer;
    opacity: .82;
    transform: translateX(calc(100% - 22px));
}

.lss-build-badge.is-hidden:focus {
    opacity: 1;
}

.lss-build-badge__tag {
    min-width: 0;
    margin-right: 3px;
    display: inline-block;
    color: rgba(255, 255, 255, 0.96);
    font-weight: 800;
    letter-spacing: 0;
}

.lss-build-badge__label {
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 700;
}

@media only screen and (max-width: 767px) {
    .lss-build-badge {
        right: 10px;
        bottom: 12px;
    }
}

@media only screen and (min-width: 768px) {
    .content-with-menu {
        border-top: 65px solid transparent;
        margin: -100px -10px -40px -24px;
        min-height: 100vh;
    }

}

    @media (min-width: 992px) {
        html.has-tab-navigation .inner-wrapper {
            padding: 0 !important;
        }

        html.has-tab-navigation .content-body.tab-menu-opened {
            padding: 0;
        }
    }
@media only screen and (min-width: 768px) {
    html.scroll .content-with-menu:after, html.boxed .content-with-menu:after {
         background: none !important;
         box-shadow: none !important;
    }
}

.mailbox .mailbox-folder .mailbox-header .search {
    float: right;
    margin-top: 3px;
    max-width: 316px;
}

.mailbox .mailbox-email-list .col-mail .mail-date {
    padding-left: 85px;
    right: 0;
    top: 13px;
    width: 160px;
}
@media only screen and (min-width: 768px) {
    html.scroll .content-with-menu:before, html.boxed .content-with-menu:before {
        background: none;
    }
}

.mailbox .mailbox-folder .mailbox-header .search input[type="text"]:focus {
    margin-left: -150%;
    width: 91%;
}
@media only screen and (max-width: 767px) {
    .userbox .name, .userbox .role {
        max-width: 160px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}
.card-actions a, .card-actions .card-action {
    background-color: transparent;
    border-radius: 2px;
    color: #B4B4B4;
    font-size: 14px;
    height: 24px;
    line-height: 55px;
    text-align: center;
    width: 24px;
}

.card-actions a:hover, .card-actions .card-action:hover {
     background: none;
}

.table tbody {
    border-top: 1px solid #DDD;
}
#btn-burger .fa-bars {
    padding-top: 9px !important;
    color: white !important;
}
#btn-burger  {
    color: white !important;
    line-height: 27px;
}
.toggle-sidebar-left {
    background: #032f6f;
}
.toggle-sidebar-left:hover {
    background: #9f2890;
}
.dt-details {
    overflow-x: auto;         /* если внутри шире — появится горизонтальный скролл только внутри раскрывашки */
    box-sizing: border-box;
    padding: 12px 12px 4px;   /* немного внутреннего отступа */
}

/* опционально: чтобы внутренние таблицы/карточки не тянулись на 200% ширины */
.dt-details table {
    width: 100%;
    max-width: 100%;
}
.dt-details .card {
    max-width: 100%;
}

.tab-navigation nav > ul > li:hover:not(.nav-expanded) > a,
.tab-navigation nav > ul > li.nav-active > a,
.tab-navigation nav > ul > li.nav-active > a:hover,
.tab-navigation nav > ul > li.nav-active > a:focus,
.tab-navigation nav > ul > li.nav-expanded > a,
.tab-navigation nav > ul > li.nav-expanded > a:hover,
.tab-navigation nav > ul > li.nav-expanded > a:focus {
    background: #20242b;
    color: #fff;
    box-shadow: none;
}

.tab-navigation nav > ul > li > ul > li.nav-active > a,
.tab-navigation nav > ul > li > ul > li .dropdown-menu li.nav-active > a {
    position: relative;
    color: #33353f !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

.tab-navigation nav > ul > li > ul > li.nav-active > a:before,
.tab-navigation nav > ul > li > ul > li .dropdown-menu li.nav-active > a:before {
    display: none;
}

html.dark .tab-navigation nav > ul > li > ul > li.nav-active > a,
html.dark .tab-navigation nav > ul > li > ul > li .dropdown-menu li.nav-active > a {
    color: rgba(255, 255, 255, 0.86) !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

html.dark .tab-navigation nav > ul > li > ul > li.nav-active > a:before,
html.dark .tab-navigation nav > ul > li > ul > li .dropdown-menu li.nav-active > a:before {
    display: none;
}

html.has-tab-navigation .toggle-menu {
    background: #20242b;
}

.lss-mobile-clock {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-left: auto;
    margin-right: 12px;
    padding: 0;
    color: rgba(255, 255, 255, 0.9);
    font-size: 12px;
    line-height: 1;
}

.lss-mobile-clock i {
    font-size: 11px;
    opacity: 0.8;
}

.lss-mobile-clock__sep {
    opacity: 0.45;
}

.lss-mobile-header-actions {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.lss-mobile-header-action {
    position: relative;
    width: 36px;
    height: 36px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.05);
    color: rgba(255, 255, 255, 0.86);
    font-size: 20px;
    line-height: 1;
    text-decoration: none;
}

.lss-mobile-header-action:hover,
.lss-mobile-header-action:focus {
    color: #fff;
    text-decoration: none;
}

.lss-mobile-header-action span {
    position: absolute;
    top: -5px;
    right: -5px;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border-radius: 8px;
    background: #d93644;
    color: #fff;
    font-size: 10px;
    line-height: 16px;
    text-align: center;
}

.lss-mobile-tabbar {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1055;
    display: none;
    align-items: stretch;
    justify-content: space-around;
    min-height: 64px;
    padding: 6px 10px calc(6px + env(safe-area-inset-bottom));
    border-top: 1px solid rgba(15, 23, 42, 0.1);
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 -10px 30px rgba(15, 23, 42, 0.12);
}

html.dark .lss-mobile-tabbar {
    border-top-color: rgba(255, 255, 255, 0.1);
    background: rgba(22, 26, 34, 0.98);
    box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.28);
}

.lss-mobile-tabbar__item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 0;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
    border: 0;
    background: transparent;
    color: #637083;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.1;
    text-decoration: none;
}

html.dark .lss-mobile-tabbar__item {
    color: #b9c2cf;
}

.lss-mobile-tabbar__item:hover,
.lss-mobile-tabbar__item:focus,
.lss-mobile-tabbar__item.is-active {
    color: #0088cc;
    text-decoration: none;
}

html.dark .lss-mobile-tabbar__item:hover,
html.dark .lss-mobile-tabbar__item:focus,
html.dark .lss-mobile-tabbar__item.is-active {
    color: #ffffff;
}

.lss-mobile-tabbar__icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 10px;
    font-size: 18px;
}

.lss-mobile-tabbar__item.is-active .lss-mobile-tabbar__icon,
.lss-mobile-menu-open .lss-mobile-tabbar__item#lss-mobile-menu-toggle .lss-mobile-tabbar__icon {
    background: #e8f4fb;
}

html.dark .lss-mobile-tabbar__item.is-active .lss-mobile-tabbar__icon,
html.dark.lss-mobile-menu-open .lss-mobile-tabbar__item#lss-mobile-menu-toggle .lss-mobile-tabbar__icon {
    background: rgba(255, 255, 255, 0.12);
}

.lss-mobile-tabbar__icon em {
    position: absolute;
    top: -4px;
    right: -7px;
    min-width: 17px;
    height: 17px;
    padding: 0 5px;
    border-radius: 9px;
    background: #d93644;
    color: #fff;
    font-size: 10px;
    font-style: normal;
    line-height: 17px;
    text-align: center;
}

@media only screen and (max-width: 991px) {
    body {
        padding-bottom: 0;
    }

    .lss-mobile-tabbar {
        display: none;
    }

    .tab-navigation {
        /* Меню живёт в потоке: второй ряд раздвигает страницу сам,
           поэтому контенту не нужна компенсация padding-top под фиксированную панель */
        position: static !important;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        z-index: 1054;
        display: block !important;
        min-height: 44px;
        overflow-x: visible;
        overflow-y: visible;
        border-radius: 0;
        background: #20242b;
        box-shadow: 0 8px 18px rgba(15, 23, 42, 0.18);
        scrollbar-width: none;
    }

    .tab-navigation::-webkit-scrollbar {
        display: none;
    }

    .tab-navigation nav {
        overflow-x: auto;
        overflow-y: visible;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .tab-navigation nav::-webkit-scrollbar {
        display: none;
    }

    .tab-navigation nav .nav.nav-pills {
        width: max-content;
        min-width: 100%;
        height: 44px;
        padding: 0 14px 0 4px;
        display: flex;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: 0;
    }

    .tab-navigation nav .nav.nav-pills > li {
        position: static;
        flex: 0 0 auto;
        display: flex;
        align-items: stretch;
        width: auto;
        margin: 0;
    }

    .tab-navigation nav .nav.nav-pills > li.lss-mobile-menu-hidden {
        display: none;
    }

    .tab-navigation .dropdown-menu a {
        border-radius: 0;
    }

    .tab-navigation .dropdown-menu a,
    .tab-navigation .dropdown-menu li a {
        min-height: 34px;
        padding: 0 12px;
        display: inline-flex;
        align-items: center;
        gap: 0;
        color: #d7dee8;
        font-size: 13px;
        font-weight: 500;
        white-space: nowrap;
    }

    .tab-navigation nav .nav.nav-pills > li > a i,
    .tab-navigation .dropdown-menu a i,
    .tab-navigation .dropdown-menu li a i {
        font-size: 12px;
    }

    .tab-navigation nav .nav.nav-pills > li > a.dropdown-toggle:after,
    .tab-navigation nav .nav.nav-pills > li.dropdown > a:after {
        display: none !important;
    }

    .tab-navigation nav .nav.nav-pills > li.active > a,
    .tab-navigation .dropdown-menu a:hover,
    .tab-navigation .dropdown-menu a:focus {
        color: #ffffff;
        background: rgba(255, 255, 255, 0.04);
    }

    .tab-navigation nav .nav.nav-pills > li.nav-active > a,
    .tab-navigation nav .nav.nav-pills > li.nav-active > a:hover,
    .tab-navigation nav .nav.nav-pills > li.nav-active > a:focus,
    .tab-navigation nav .nav.nav-pills > li.nav-expanded > a,
    .tab-navigation nav .nav.nav-pills > li.nav-expanded > a:hover,
    .tab-navigation nav .nav.nav-pills > li.nav-expanded > a:focus {
        color: #ffffff !important;
        background: transparent !important;
        box-shadow: inset 0 -2px rgba(255, 255, 255, 0.7);
        font-weight: 700;
    }

    .tab-navigation .dropdown-menu li.nav-active > a,
    .tab-navigation .dropdown-menu li.nav-active > a:hover,
    .tab-navigation .dropdown-menu li.nav-active > a:focus {
        color: #ffffff !important;
        background: transparent !important;
        box-shadow: inset 0 -2px rgba(255, 255, 255, 0.5);
        font-weight: 700;
    }

    .tab-navigation .dropdown-menu {
        position: absolute !important;
        top: 44px !important;
        right: auto !important;
        left: 0;
        z-index: 1060;
        display: none;
        float: none;
        width: 100vw;
        min-width: 100%;
        min-height: 34px;
        margin: 0;
        padding: 0 14px;
        border: 0;
        border-radius: 0;
        background: #20242b;
        box-shadow: none;
        overflow-x: auto;
        overflow-y: visible;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .tab-navigation .dropdown-menu::-webkit-scrollbar {
        display: none;
    }

    .tab-navigation nav .nav.nav-pills > li.nav-active > .dropdown-menu,
    .tab-navigation nav .nav.nav-pills > li.nav-expanded > .dropdown-menu {
        display: flex !important;
        flex-wrap: nowrap;
        gap: 0;
    }

    .tab-navigation .dropdown-menu li {
        flex: 0 0 auto;
        display: inline-flex;
    }

}

html.dark .offcanvas {
    background: #101418;
    color: #d7dee8;
}

html.dark .offcanvas .offcanvas-header {
    border-bottom-color: rgba(255, 255, 255, 0.08);
}

html.dark .offcanvas .btn-close {
    filter: invert(1) grayscale(1);
    opacity: 0.75;
}

@media only screen and (max-width: 991px) {
    .header {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 1055;
        height: 64px;
        min-height: 64px;
    }

    .header .logo-container {
        display: flex;
        align-items: center;
        width: 100%;
        height: 64px;
        padding: 8px 0 10px 14px;
    }

    .header .logo-container .logo {
        display: none;
    }

    .header .header-right {
        display: none;
    }

    #lss-clock {
        display: none !important;
    }

    html.has-tab-navigation .inner-wrapper {
        padding: 0 !important;
    }

    html.has-tab-navigation .content-body {
        padding-top: 0;
    }
}

.lss-push-prompt {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 10050;
    width: min(380px, calc(100vw - 32px));
    padding: 16px;
    border: 1px solid var(--lss-border);
    border-radius: var(--lss-radius);
    background: var(--lss-surface);
    color: var(--lss-text);
    box-shadow: 0 12px 30px rgba(0, 0, 0, .22);
}

.lss-push-prompt__inner {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.lss-push-prompt__icon {
    margin-top: 2px;
    color: var(--lss-link);
    font-size: 18px;
}

.lss-push-prompt__content {
    min-width: 0;
    flex: 1;
}

.lss-push-prompt__title {
    margin-bottom: 4px;
    font-weight: 700;
}

.lss-push-prompt__text {
    margin-bottom: 12px;
    font-size: 13px;
    line-height: 1.45;
}

.lss-push-prompt__text {
    color: var(--lss-text-muted);
}

.lss-push-prompt__actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

/* Свои кнопки: у Porto btn-primary зелёный, а зелёного в палитре нет */
.lss-push-prompt__btn {
    border: 1px solid var(--lss-border);
    border-radius: var(--lss-radius);
    background: transparent;
    color: var(--lss-text);
}

.lss-push-prompt__btn:hover,
.lss-push-prompt__btn:focus {
    border-color: var(--lss-accent);
    background: var(--lss-accent-soft);
    color: var(--lss-text);
}

.lss-push-prompt__btn.is-primary,
.lss-push-prompt__btn.is-primary:hover,
.lss-push-prompt__btn.is-primary:focus {
    border-color: var(--lss-accent);
    background: var(--lss-accent);
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .lss-push-prompt {
        right: 12px;
        bottom: calc(84px + env(safe-area-inset-bottom));
        left: 12px;
        width: auto;
    }
}

.lss-auth-body {
    min-height: 100dvh;
    overflow: hidden;
    padding-bottom: 0 !important;
    background: #06080f;
}

.login-img3-body {
    min-height: 100dvh;
    overflow: hidden;
    background: #06080f;
    font-family: "Aptos", "Segoe UI", system-ui, sans-serif;
}

.login-img3-body .container {
    min-height: 100dvh;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 24px;
    padding-bottom: 24px;
}

.login-img3-body .login-form,
.login-img3-body .login-wrap,
.login-img3-body .bx-authform {
    width: 100%;
}

.login-img3-body .body-sign {
    display: block;
    height: auto;
    min-height: 0;
    max-width: 550px;
    padding: 0;
}

.login-img3-body .body-sign .center-sign {
    display: block;
    padding-top: 0;
}

.login-img3-body .body-sign .card-title-sign {
    margin-top: 0 !important;
    text-align: left !important;
}

.login-img3-body .body-sign .card-sign .card-title-sign .title {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 54px;
    border-radius: 8px 8px 0 0;
    background: #101418;
    border: 0;
    padding: 14px 18px;
    text-align: center;
    color: rgba(255, 255, 255, 0.64);
    font-weight: 300 !important;
    letter-spacing: 0;
    text-transform: lowercase;
}

.login-img3-body .body-sign .card-sign .card-title-sign .title i {
    font-size: 22px;
    line-height: 1;
    opacity: 0.72;
}

.login-img3-body .body-sign .card-sign .card-title-sign .lss-auth-title-action {
    position: absolute;
    left: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    color: rgba(255, 255, 255, 0.52);
}

.login-img3-body .body-sign .card-sign .card-title-sign .lss-auth-title-action:hover,
.login-img3-body .body-sign .card-sign .card-title-sign .lss-auth-title-action:focus {
    color: rgba(255, 255, 255, 0.7);
}

.login-img3-body .body-sign .card-sign .card-body {
    background: #1b222a;
    border-top: 0;
    border-radius: 0 0 8px 8px;
    padding: 28px 30px 18px;
    color: #d7dee8;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.32);
}

.login-img3-body .bx-authform-label-container,
.login-img3-body .bx-filter-param-text,
.login-img3-body .text-muted {
    color: #b9c2cf !important;
    text-transform: lowercase;
}

.login-img3-body .bx-authform-input-container input[type="text"],
.login-img3-body .bx-authform-input-container input[type="password"] {
    min-height: 42px;
    border-color: rgba(255, 255, 255, 0.12);
    background: #101418;
    color: rgba(255, 255, 255, 0.78);
}

.login-img3-body .bx-authform-input-container input[type="text"]:focus,
.login-img3-body .bx-authform-input-container input[type="password"]:focus {
    border-color: #6344f5;
    box-shadow: 0 0 0 2px rgba(99, 68, 245, 0.18);
}

.login-img3-body input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 16px;
    height: 16px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 4px;
    background: #101418;
    accent-color: #6344f5;
    vertical-align: -3px;
    cursor: pointer;
}

.login-img3-body input[type="checkbox"]:checked {
    border-color: rgba(140, 166, 255, 0.7);
    background:
        linear-gradient(135deg, transparent 52%, #ffffff 52%, #ffffff 62%, transparent 62%) 4px 1px / 8px 10px no-repeat,
        #6344f5;
}

.login-img3-body .checkbox,
.login-img3-body .bx-filter-param-label {
    color: #b9c2cf;
}

.login-img3-body .body-sign .card-sign .card-body .btn-primary {
    width: 100%;
    min-height: 44px;
    border-radius: 7px;
    padding-top: 10px;
    padding-bottom: 10px;
    background:
        linear-gradient(#101418, #101418) padding-box,
        linear-gradient(90deg, rgba(24, 204, 252, 0.42), rgba(99, 68, 245, 0.52), rgba(174, 72, 255, 0.42)) border-box;
    border: 1px solid transparent;
    box-shadow: none;
    transition: background 0.18s ease, transform 0.18s ease;
    color: rgba(255, 255, 255, 0.86);
    font-size: 14px;
}

.login-img3-body .lss-auth-submit-row {
    margin-top: 32px;
}

.login-img3-body .body-sign .card-sign .card-body .btn-primary:hover {
    background:
        linear-gradient(#101418, #101418) padding-box,
        linear-gradient(90deg, rgba(24, 204, 252, 0.5), rgba(99, 68, 245, 0.6), rgba(174, 72, 255, 0.5)) border-box;
    box-shadow: none;
    transform: translateY(-0.5px);
}

.login-img3-body .body-sign .card-sign .card-body .btn-primary:focus,
.login-img3-body .body-sign .card-sign .card-body .btn-primary:focus-visible,
.login-img3-body .body-sign .card-sign .card-body .btn-primary:active {
    background:
        linear-gradient(#101418, #101418) padding-box,
        linear-gradient(90deg, rgba(24, 204, 252, 0.58), rgba(99, 68, 245, 0.68), rgba(174, 72, 255, 0.58)) border-box !important;
    border-color: transparent !important;
    box-shadow: 0 0 0 2px rgba(99, 68, 245, 0.13) !important;
    color: rgba(255, 255, 255, 0.9) !important;
    outline: none;
    transform: translateY(-0.5px);
}

.login-img3-body .lss-auth-actions {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-top: 0;
}

.login-img3-body .lss-auth-actions--center {
    justify-content: center;
}

.login-img3-body .lss-auth-actions .bx-authform-link-container,
.login-img3-body .lss-auth-remember {
    margin: 0;
}

.login-img3-body .lss-auth-remember {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    line-height: 16px;
    cursor: pointer;
}

.login-img3-body .bx-authform-link-container a {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    line-height: 16px;
    color: rgba(140, 166, 255, 0.62);
    text-transform: lowercase;
}

.login-img3-body .bx-authform-link-container a:hover,
.login-img3-body .bx-authform-link-container a:focus {
    color: rgba(207, 216, 255, 0.86);
}

@media only screen and (max-height: 620px) {
    .lss-auth-body,
    .login-img3-body {
        overflow: auto;
    }

    .login-img3-body .container {
        align-items: flex-start;
    }
}

/* Final shell overrides: keep compact navigation above legacy/mobile rules. */
html.has-tab-navigation .header {
    display: none !important;
}

html.has-tab-navigation .tab-navigation {
    top: 0 !important;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills {
    padding-right: 300px;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.lss-menu-icon-only > a {
    width: 44px;
    min-width: 44px;
    min-height: 44px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.lss-menu-icon-only > a i {
    min-width: 16px;
    margin: 0 !important;
    position: static !important;
    top: auto !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.lss-menu-icon-only > a.dropdown-toggle:after,
html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.lss-menu-icon-only > a:after {
    display: none !important;
    margin: 0 !important;
}

@media (min-width: 992px) {
    html.has-tab-navigation .inner-wrapper {
        padding: 0 !important;
    }

    html.has-tab-navigation .content-body.tab-menu-opened {
        padding-top: 0 !important;
        border-radius: 0 !important;
    }
}

@media only screen and (max-width: 991px) {
    html.has-tab-navigation .tab-navigation {
        top: 0 !important;
    }

    html.has-tab-navigation .tab-navigation nav .nav.nav-pills {
        padding-right: 132px !important;
    }

    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.lss-menu-icon-only > a {
        width: 44px;
        min-width: 44px;
        min-height: 44px;
        padding: 0 !important;
        align-items: center;
        justify-content: center;
    }

    html.has-tab-navigation .inner-wrapper {
        padding: 0 !important;
    }

    html.has-tab-navigation .content-body {
        padding-top: 0 !important;
        min-height: auto !important;
        border-radius: 0 !important;
    }

}

/* Final desktop menu background reset. */
@media (min-width: 992px) {
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-active > a,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-active > a:hover,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-active > a:focus,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-active > a:focus-visible,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-expanded > a,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-expanded > a:hover,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-expanded > a:focus,
    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-expanded > a:focus-visible {
        border-color: transparent !important;
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        outline: none !important;
    }

    html.has-tab-navigation .tab-navigation .nav-link,
    html.has-tab-navigation .tab-navigation .nav-link:hover,
    html.has-tab-navigation .tab-navigation .nav-link:focus,
    html.has-tab-navigation .tab-navigation .nav-link:focus-visible,
    html.has-tab-navigation .tab-navigation .nav-link:active {
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        outline: none !important;
    }
}

/* Рабочая страница на высоту окна: шапка на месте, скролл внутри блока.
   Класс ставится на <html> самим экраном, разметка остаётся прежней. */
@media (min-width: 576px) {
    html.lss-fullheight-page,
    html.lss-fullheight-page body {
        height: 100%;
        overflow: hidden !important;
    }

    /* Высоту задаём, а отступы сверху оставляем теме: шапка у разных экранов
       разной высоты, и фиксированный отступ загонял панель фильтров под меню. */
    html.lss-fullheight-page.has-tab-navigation .inner-wrapper {
        box-sizing: border-box;
        height: 100dvh;
        min-height: 0;
        overflow: hidden;
    }

    html.lss-fullheight-page.has-tab-navigation .content-body {
        box-sizing: border-box;
        display: block;
        height: 100%;
        min-height: 0;
        overflow: hidden;
    }

    html.lss-fullheight-page .lss-fullheight,
    html.lss-fullheight-page .lss-fullheight > .row,
    html.lss-fullheight-page .lss-fullheight > .row > .col-12,
    html.lss-fullheight-page .lss-fullheight > .row > .col-12 > div,
    html.lss-fullheight-page .lss-fullheight > .row > .col-12 > div > .card {
        height: 100%;
        min-height: 0;
    }

    html.lss-fullheight-page .lss-fullheight > .row {
        --bs-gutter-x: 0;
        margin: 0;
    }

    html.lss-fullheight-page .lss-fullheight > .row > .col-12 {
        padding-left: 0;
        padding-right: 0;
    }

    /* Тело карточки делится на неподвижную шапку, растущий список и низ */
    html.lss-fullheight-page .lss-fullheight .card > .card-body {
        display: flex;
        flex-direction: column;
        height: 100%;
        min-height: 0;
        overflow: hidden;
    }

    html.lss-fullheight-page .lss-fullheight .lss-fullheight-scroll {
        flex: 1 1 auto;
        min-height: 0;
        overflow: auto;
    }

    html.lss-fullheight-page .lss-fullheight .lss-fullheight-bottom {
        flex: 0 0 auto;
    }
}

/* Верхнее меню: активный и наведённый пункт не заливаются фоном,
   а подсвечиваются фирменным синим с тонкой обводкой — в обеих темах. */
.tab-navigation nav > ul > li > a:hover,
.tab-navigation nav > ul > li > a:focus {
    background: transparent !important;
    border-color: transparent;
    color: #296ab0 !important;
}

.tab-navigation nav > ul > li.nav-active > a,
.tab-navigation nav > ul > li.nav-expanded > a {
    border-color: rgba(77, 184, 232, 0.55);
}

.tab-navigation nav > ul > li > a:hover i,
.tab-navigation nav > ul > li.nav-active > a i,
.tab-navigation nav > ul > li.nav-expanded > a i {
    color: inherit;
}

/* Переключатель профиля и команды: одна строка над карточкой, не второй ряд вкладок */
.lss-profile-switch {
    display: flex;
    gap: 6px;
    margin-bottom: 14px;
}

.lss-profile-switch__item {
    padding: 7px 14px;
    border: 1px solid rgba(128, 128, 128, .22);
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
}

.lss-profile-switch__item.is-active {
    border-color: rgba(0, 136, 204, .55);
    color: #0088cc;
}

html.dark .lss-profile-switch__item.is-active {
    color: #296ab0;
}

/* Активный пункт меню: только цвет текста, геометрия не трогается */
.tab-navigation nav > ul > li.nav-active > a,
.tab-navigation nav > ul > li.nav-active > a i,
.tab-navigation nav > ul > li.nav-expanded > a,
.tab-navigation nav > ul > li.nav-expanded > a i {
    color: #296ab0 !important;
}

.lss-nav-profile {
    position: relative;
}

.lss-nav-profile__menu {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    z-index: 2000;
    min-width: 150px;
    padding: 6px 0;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(0, 0, 0, .22);
}

.lss-nav-profile__menu a {
    display: block;
    padding: 8px 16px;
    color: #33353f;
    font-size: 13px;
    white-space: nowrap;
}

.lss-nav-profile__menu a:hover {
    background: rgba(0, 136, 204, .08);
    color: #0088cc;
}

.tab-navigation nav > ul > li.nav-active > a i,
.tab-navigation nav > ul > li.nav-expanded > a i,
.tab-navigation nav .nav.nav-pills > li.nav-active > a i,
.tab-navigation nav .nav.nav-pills > li.nav-expanded > a i {
    background: transparent !important;
    color: #296ab0 !important;
}

/* Ширина пункта по содержимому: тема задаёт min-width 100px */
.tab-navigation nav > ul > li > a {
    min-width: 0;
}

/* Поле поиска в списках: иконка, подпись и инпут одной строкой */
.dataTables_filter label {
    display: inline-flex !important;
    align-items: center;
    gap: 7px;
    font-size: 0;
    white-space: nowrap;
}

.dataTables_filter label input {
    font-size: 13px;
    flex: 1 1 auto;
    min-width: 0;
}

html.dark .dataTables_filter label {
    border-color: #282d36;
    background: #17191d;
    color: #9aa3ad;
}

/* Инпут живёт внутри рамки label, своей подложки и границ у него нет */
.dataTables_filter label input,
html.dark .dataTables_filter label input {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: none !important;
    padding: 0 !important;
    height: auto;
}

html.dark .dataTables_filter label input {
    color: #e6e8ea !important;
}

html.dark .dataTables_filter label input::placeholder {
    color: #7d868f !important;
}

/* Пагинация видна на любой ширине: своё место внизу, не обрезается контейнером */
.dataTables_wrapper .dataTables_paginate {
    display: block !important;
    flex: 0 0 auto;
    position: sticky;
    bottom: 0;
    z-index: 5;
    padding: 8px 0;
    text-align: center !important;
}

.dataTables_wrapper .dataTables_paginate ul.pagination {
    justify-content: center !important;
    margin: 0;
}

/* Пункт меню, который нужен только ради второго ряда навигации: сам не показывается */
.tab-navigation nav .nav.nav-pills > li.lss-menu-hidden-item > .nav-link,
html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.lss-menu-hidden-item > a.nav-link {
    display: none !important;
}

/* Пункты меню не белые: спокойный серый, активный остаётся синим */
.tab-navigation nav > ul > li > a,
.tab-navigation nav .nav.nav-pills > li > a {
    color: #aeb6bf;
}

.tab-navigation nav > ul > li.nav-active > a,
.tab-navigation nav > ul > li.nav-active > a i,
.tab-navigation nav > ul > li.nav-expanded > a,
.tab-navigation nav > ul > li.nav-expanded > a i {
    color: #296ab0;
}

/* Рабочая область белая, а не серая: карточек с собственным фоном больше нет */
html.has-tab-navigation .content-body {
    background-color: #ffffff;
}

html.dark.has-tab-navigation .content-body,
html.dark body {
    background-color: #1b1f24;
}


/* Правая часть шапки остаётся полной почти до мобильной ширины */
@media (max-width: 700px) {
    .lss-nav-clock {
        display: none !important;
    }

    .lss-nav-action {
        width: 24px;
        height: 24px;
        font-size: 12px;
    }

    .lss-nav-userlink {
        max-width: 72px;
        padding: 0 5px;
        font-size: 11px;
    }
}

/* Единое меню: эти размеры и состояния не меняются на брейкпоинтах. */
html.has-tab-navigation .tab-navigation {
    position: relative !important;
    min-height: 44px;
    margin: 0 !important;
    overflow: visible !important;
    border-radius: 0 !important;
    background: #101418 !important;
    box-shadow: none !important;
}

html.has-tab-navigation .tab-navigation nav {
    width: 100%;
    max-width: 100%;
    overflow: hidden !important;
}

html.has-tab-navigation .tab-navigation > .lss-nav-status {
    top: 0;
    bottom: auto;
    height: 44px;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills {
    width: 100%;
    max-width: 100%;
    min-width: 0 !important;
    min-height: 44px;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 4px !important;
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills::-webkit-scrollbar {
    display: none;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li {
    position: static;
    flex: 0 0 auto;
    width: auto;
    margin: 0;
    display: flex;
    align-items: stretch;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li > a.nav-link {
    min-width: 0 !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 6px 14px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: #aeb6bf !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li > a.nav-link:hover,
html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li > a.nav-link:focus-visible {
    border: 0 !important;
    background: transparent !important;
    color: #296ab0 !important;
    outline: none !important;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-active > a.nav-link,
html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.nav-expanded > a.nav-link {
    border: 0 !important;
    background: transparent !important;
    color: #296ab0 !important;
    box-shadow: none !important;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li > a.nav-link i {
    min-width: 16px;
    margin: 0 !important;
    position: static !important;
    top: auto !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: inherit !important;
    font-size: 15px !important;
    line-height: 1 !important;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li:not(.lss-menu-icon-only) > a.nav-link i {
    margin-right: 7px !important;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.lss-menu-icon-only > a.nav-link {
    width: 48px !important;
    min-width: 48px !important;
    padding: 0 !important;
}

html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li > a.dropdown-toggle::after {
    display: none !important;
}

/* Второй уровень идёт отдельной строкой в обычном потоке, без fixed и резерва высоты. */
html.has-tab-navigation .tab-navigation nav > .lss-menu-subnav {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    z-index: 1060;
    display: flex !important;
    flex-wrap: nowrap;
    gap: 0;
    float: none;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    max-height: 44px;
    margin: 0;
    padding: 5px 10px;
    border: 0;
    border-radius: 0 !important;
    background: #20242b !important;
    box-shadow: none !important;
    overflow-x: auto;
    overflow-y: hidden;
    box-sizing: border-box;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    opacity: 1;
    transform: translateY(0);
    transition: min-height .18s ease, max-height .18s ease, padding .18s ease, opacity .12s ease, transform .18s ease;
}

html.has-tab-navigation .tab-navigation.lss-subnav-collapsed nav > .lss-menu-subnav {
    min-height: 0;
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-8px);
    pointer-events: none;
}

html.has-tab-navigation .tab-navigation .dropdown-menu::-webkit-scrollbar {
    display: none;
}

html.has-tab-navigation .tab-navigation .dropdown-menu > li {
    flex: 0 0 auto;
    width: auto !important;
    display: inline-flex !important;
}

html.has-tab-navigation .tab-navigation .dropdown-menu > li.lss-menu-subnav__collapse {
    width: 30px !important;
}

html.has-tab-navigation .lss-menu-subnav__collapse-button {
    width: 30px;
    min-width: 30px;
    min-height: 34px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: #6f7b88;
    box-shadow: none;
    font-size: 9px;
    line-height: 1;
    cursor: pointer;
}

html.has-tab-navigation .lss-menu-subnav__collapse-button:hover,
html.has-tab-navigation .lss-menu-subnav__collapse-button:focus-visible {
    background: transparent;
    color: #aeb6bf;
    outline: none;
}

html.has-tab-navigation .tab-navigation .dropdown-menu > li > a.nav-link {
    min-width: 0 !important;
    min-height: 34px !important;
    margin: 0 3px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, .06) !important;
    color: #aeb6bf !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 32px !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    white-space: nowrap;
}

html.has-tab-navigation .tab-navigation .dropdown-menu > li > a.nav-link:hover,
html.has-tab-navigation .tab-navigation .dropdown-menu > li > a.nav-link:focus-visible,
html.has-tab-navigation .tab-navigation .dropdown-menu > li.nav-active > a.nav-link {
    border-color: rgba(255, 255, 255, .32) !important;
    background: rgba(255, 255, 255, .12) !important;
    color: #ffffff !important;
    outline: none !important;
}

/* Ссылка на журнал версий завершает меню настроек, но не выглядит рабочей вкладкой. */
html.has-tab-navigation .tab-navigation .dropdown-menu > li.lss-menu-subnav__log > a.nav-link,
html.has-tab-navigation .tab-navigation .dropdown-menu > li.lss-menu-subnav__log > a.nav-link:hover,
html.has-tab-navigation .tab-navigation .dropdown-menu > li.lss-menu-subnav__log > a.nav-link:focus-visible,
html.has-tab-navigation .tab-navigation .dropdown-menu > li.lss-menu-subnav__log.nav-active > a.nav-link {
    min-height: 34px !important;
    margin: 0 0 0 3px !important;
    padding: 0 5px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #aeb6bf !important;
    box-shadow: none !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    opacity: .45;
}

html.has-tab-navigation .tab-navigation .dropdown-menu > li.lss-menu-subnav__log > a.nav-link:hover,
html.has-tab-navigation .tab-navigation .dropdown-menu > li.lss-menu-subnav__log > a.nav-link:focus-visible,
html.has-tab-navigation .tab-navigation .dropdown-menu > li.lss-menu-subnav__log.nav-active > a.nav-link {
    color: #ffffff !important;
    opacity: .9;
}

/* На экранах уже 440px уплотняем верхний ряд, действия шапки переносим в профиль. */
@media (max-width: 439px) {
    .lss-nav-status {
        right: 2px;
        gap: 0;
    }

    .lss-nav-userlink {
        width: 40px;
        min-width: 40px;
        max-width: 40px;
        min-height: 44px;
        padding: 0;
        justify-content: center;
        border-radius: 8px;
    }

    .lss-nav-userlink__login,
    .lss-nav-action-logout,
    .lss-nav-action-theme {
        display: none !important;
    }

    .lss-nav-userlink__icon {
        display: inline-flex;
    }

    html.has-tab-navigation .tab-navigation nav .nav.nav-pills {
        padding-right: 44px !important;
    }

    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li > a.nav-link {
        padding: 6px 9px !important;
    }

    html.has-tab-navigation .tab-navigation nav .nav.nav-pills > li.lss-menu-icon-only > a.nav-link {
        width: 33px !important;
        min-width: 33px !important;
        padding: 0 !important;
    }
}

/* Склады селлера: одна страница, четыре горизонтальных таба, отгрузки и маркетплейсы */
.lss-stores-page {
    padding-bottom: 12px;
}

.lss-stores-tabs {
    display: flex;
    margin: 0 10px 4px;
    border-bottom: 1px solid var(--lss-border);
}

.lss-stores-tabs .nav-item {
    flex: 0 1 auto;
    min-width: 0;
}

.lss-stores-tabs .nav-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    background: none;
    color: var(--lss-text-muted);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap;
}

.lss-stores-tabs .nav-link img {
    width: 18px;
    height: 18px;
    border-radius: 4px;
    object-fit: cover;
}

.lss-stores-tabs .nav-link i {
    width: 18px;
    text-align: center;
    font-size: 14px;
}

.lss-stores-tabs.nav-tabs .nav-link:hover,
.lss-stores-tabs.nav-tabs .nav-link:focus {
    border-color: transparent;
    background: transparent;
    color: var(--lss-text);
    box-shadow: none;
}

.lss-stores-tabs.nav-tabs .nav-link.active,
.lss-stores-tabs.nav-tabs .nav-link.active:hover {
    border-color: transparent transparent var(--lss-accent);
    background: transparent;
    color: var(--lss-text);
}

.lss-stores-empty {
    color: var(--lss-text-muted);
}

@media (max-width: 767px) {
    .lss-stores-tabs .nav-item {
        flex: 1 1 0;
    }

    .lss-stores-tabs .nav-link {
        justify-content: center;
        padding: 9px 4px;
    }

    .lss-stores-tabs .nav-link span {
        display: none;
    }
}

/* Оферта: страница и окно принятия при входе селлера */
.lss-offer {
    padding: 12px;
}

.lss-offer__card {
    max-width: 960px;
    margin: 0 auto;
    padding: 20px 24px;
    border: 1px solid var(--lss-border);
    border-radius: var(--lss-radius);
    background: var(--lss-surface);
}

.lss-offer__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
    color: var(--lss-text-muted);
    font-size: 12px;
}

.lss-offer__head em {
    font-style: normal;
    font-weight: 700;
}

.lss-offer__head em.is-accepted { color: var(--lss-success); }
.lss-offer__head em.is-pending,
.lss-offer__head em.is-outdated { color: var(--lss-warning); }

.lss-offer__text p,
.lss-offer-modal__text p {
    margin: 0 0 10px;
    font-size: 13px;
    line-height: 1.5;
    color: var(--lss-text);
}

.lss-offer__title,
.lss-offer-modal__text .lss-offer__title {
    margin: 0 0 6px;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    color: var(--lss-text);
}

.lss-offer__section,
.lss-offer-modal__text .lss-offer__section {
    margin: 18px 0 8px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--lss-text);
}

.lss-offer__accept {
    margin-top: 18px;
    display: flex;
    justify-content: flex-end;
}

.lss-offer-modal {
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: rgba(16, 20, 24, .62);
}

.lss-offer-modal__card {
    width: min(860px, 100%);
    max-height: calc(100dvh - 32px);
    display: flex;
    flex-direction: column;
    border: 1px solid var(--lss-border);
    border-radius: var(--lss-radius);
    background: var(--lss-surface);
    box-shadow: 0 12px 40px rgba(0, 0, 0, .35);
}

.lss-offer-modal__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--lss-border);
    color: var(--lss-text);
}

.lss-offer-modal__head span {
    color: var(--lss-text-muted);
    font-size: 12px;
}

.lss-offer-modal__text {
    flex: 1 1 auto;
    min-height: 0;
    padding: 14px 18px;
    overflow: auto;
}

.lss-offer-modal__actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 18px;
    border-top: 1px solid var(--lss-border);
    background: var(--lss-surface-sunken);
}

@media (max-width: 575px) {
    .lss-offer-modal { padding: 0; }
    .lss-offer-modal__card { max-height: 100dvh; border-radius: 0; }
    .lss-offer-modal__actions { flex-direction: column; }
}
