/* курсор на свитче и его лейбле */
.custom-switch .custom-control-label {
    cursor: pointer;
}

/* выравнивание по высоте названия карточки при наличии card-tools */
.card-title {
    float: none;
}
.card-title:has(> .btn) {
    display: flex;
    align-items: center;
}
.card-header:has(> .card-tools) {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.card-header:has(> .card-tools)::before,
.card-header:has(> .card-tools)::after {
    content: none;
    display: none;
}
.card-header:has(> .card-tools) .card-tools {
    float: none;
}

/* шапка на телефоне — в одну строку: логин обрезается, роль, версия и подпись «Выход» скрыты */
.main-header .navbar-nav.ml-auto {
    min-width: 0;
    flex-wrap: nowrap;
}
.main-header .navbar-user {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* логотип в свёрнутом меню центрируется в ширине 4.6rem и сжимается, только если шире меню;
   переезд анимируется вместе с шириной панели */
.sidebar-mini .main-sidebar .brand-link .brand-image {
    position: relative;
    left: 0;
    transition: margin-left .3s ease-in-out, left .3s ease-in-out, transform .3s ease-in-out;
}
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover):not(.sidebar-focused) .brand-link .brand-image {
    left: calc((4.6rem - 1rem) / 2);
    margin-left: 0;
    transform: translateX(-50%);
    max-width: calc(4.6rem - .6rem);
    height: auto;
}

/* название не гаснет сразу, а обрезается уезжающей панелью и скрывается после её анимации */
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover):not(.sidebar-focused) .brand-link .brand-text {
    animation: none;
    margin-left: 0;
    transition: visibility 0s linear .3s;
}

/* значок «узел с лучами» (OMNI_MENU_SECTION_ICON = pbe-icon-hub): в Font Awesome 5 Free такого нет.
   SVG — маска, значок рисуется цветом текста и подстраивается под тему меню */
.pbe-icon-hub::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: -0.125em;
    background-color: currentColor;
    -webkit-mask: url("../img/menu-hub.svg") center / contain no-repeat;
    mask: url("../img/menu-hub.svg") center / contain no-repeat;
}
