.bg-brand {
    background: #002738;
    background: linear-gradient(90deg, rgba(0, 39, 56, 1) 49%, rgba(0, 73, 132, 1) 100%);
}

/* NAV */
.navbar {
    backdrop-filter: saturate(120%) blur(6px)
}

.navbar-brand {
    font-weight: 800;
    letter-spacing: .08em;
    color: var(--c-brand) !important
}

.navbar .nav-link {
    color: var(--c-ink-2)
}

.navbar .nav-link:hover {
    color: var(--c-brand)
}

/* HERO with background particles */
.hero {
    position: relative;
    padding-top: 3rem;
    padding-bottom: 4rem;
    min-height: 90vh;
}

.hero>.container {
    position: relative;
    z-index: 1
}

.hero-canvas {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.trust-badges img {
    height: 100px;
    opacity: .85;
    filter: grayscale(1)
}

/* SVG hex */
#hexWrap {
    background: rgb(255, 255, 255, 0);
    border: 0px solid var(--c-line)
}

#hexSvg {
    display: block;
    width: 100%;
    height: 340px
}

/* Logo strip */
.logo-strip {
    padding-block: .75rem;
    border-top: 1px solid var(--c-line);
    border-bottom: 1px solid var(--c-line)
}

.logo-strip img {
    filter: grayscale(0);
    opacity: .85;
    transition: .2s
}

.logo-strip img:hover {
    filter: grayscale(1);
    opacity: 1
}

/* Services */
#services .service-card {
    transition: box-shadow .2s, transform .2s
}

#services .service-card:hover {
    transform: translateY(-2px)
}

#services .service-card .bi {
    width: 2.25rem;
    height: 2.25rem
}

/* Pricing */
.pricing .card.pop {
    border: 2px solid var(--c-accent);
    box-shadow: var(--shadow-strong)
}

/* Footer */
footer {
    background: #0b1f2b;
    color: #cbd5e1
}

footer a {
    color: #cbd5e1
}

footer .form-control {
    background: rgba(255, 255, 255, .06);
    border-color: transparent;
    color: #cbd5e1
}

footer .btn {
    border-radius: 9px
}

/* Sticky mobile bar */
.sticky-quick {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1030;
    display: none;
    background: #fff;
    border-top: 1px solid var(--c-line)
}

@media (max-width: 991.98px) {
    .sticky-quick {
        display: block
    }
}

@media (max-width:640px) {
    .hero {
        padding-top: 6rem
    }

    #hexSvg {
        height: 300px
    }
}

/* canvas{opacity:0.1}*/

.header-logo {
    max-height: 45px;
}

.case-img {
    height: 250px;
    width: auto;
    object-fit: cover;
    object-position: top;
}

.card-body {
    flex: 1 1 auto;
    padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
    color: var(--bs-card-color);
    min-height: 50px;
    background: transparent;
}

.bg-none {
    background: transparent;
}


.dark-logo,
.light-logo {
    max-height: 45px;
    maw-width: 100%;
}

@keyframes opaque {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes resizeanim {

    0%,
    to {
        opacity: 0
    }
}

.apexcharts-canvas {
    position: relative;
    user-select: none
}

.apexcharts-canvas ::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 6px
}

.apexcharts-canvas ::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(0, 0, 0, .5);
    box-shadow: 0 0 1px rgba(255, 255, 255, .5);
    -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, .5)
}

.apexcharts-inner {
    position: relative
}

.apexcharts-text tspan {
    font-family: inherit
}

.legend-mouseover-inactive {
    transition: .15s ease all;
    opacity: .2
}

.apexcharts-legend-text {
    padding-left: 15px;
    margin-left: -15px;
}

.apexcharts-series-collapsed {
    opacity: 0
}

.apexcharts-tooltip {
    border-radius: 5px;
    box-shadow: 2px 2px 6px -4px #999;
    cursor: default;
    font-size: 14px;
    left: 62px;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 20px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    white-space: nowrap;
    z-index: 12;
    transition: .15s ease all
}

.apexcharts-tooltip.apexcharts-active {
    opacity: 1;
    transition: .15s ease all
}

.apexcharts-tooltip.apexcharts-theme-light {
    border: 1px solid #e3e3e3;
    background: rgba(255, 255, 255, .96)
}

.apexcharts-tooltip.apexcharts-theme-dark {
    color: #fff;
    background: rgba(30, 30, 30, .8)
}

.apexcharts-tooltip * {
    font-family: inherit
}

.apexcharts-tooltip-title {
    padding: 6px;
    font-size: 15px;
    margin-bottom: 4px
}

.apexcharts-tooltip.apexcharts-theme-light .apexcharts-tooltip-title {
    background: #eceff1;
    border-bottom: 1px solid #ddd
}

.apexcharts-tooltip.apexcharts-theme-dark .apexcharts-tooltip-title {
    background: rgba(0, 0, 0, .7);
    border-bottom: 1px solid #333
}

.apexcharts-tooltip-text-goals-value,
.apexcharts-tooltip-text-y-value,
.apexcharts-tooltip-text-z-value {
    display: inline-block;
    margin-left: 5px;
    font-weight: 600
}

.apexcharts-tooltip-text-goals-label:empty,
.apexcharts-tooltip-text-goals-value:empty,
.apexcharts-tooltip-text-y-label:empty,
.apexcharts-tooltip-text-y-value:empty,
.apexcharts-tooltip-text-z-value:empty,
.apexcharts-tooltip-title:empty {
    display: none
}

.apexcharts-tooltip-text-goals-label,
.apexcharts-tooltip-text-goals-value {
    padding: 6px 0 5px
}

.apexcharts-tooltip-goals-group,
.apexcharts-tooltip-text-goals-label,
.apexcharts-tooltip-text-goals-value {
    display: flex
}

.apexcharts-tooltip-text-goals-label:not(:empty),
.apexcharts-tooltip-text-goals-value:not(:empty) {
    margin-top: -6px
}

.apexcharts-tooltip-marker {
    width: 12px;
    height: 12px;
    position: relative;
    top: 0;
    margin-right: 10px;
    border-radius: 50%
}

.apexcharts-tooltip-series-group {
    padding: 0 10px;
    display: none;
    text-align: left;
    justify-content: left;
    align-items: center
}

.apexcharts-tooltip-series-group.apexcharts-active .apexcharts-tooltip-marker {
    opacity: 1
}

.apexcharts-tooltip-series-group.apexcharts-active,
.apexcharts-tooltip-series-group:last-child {
    padding-bottom: 4px
}

.apexcharts-tooltip-series-group-hidden {
    opacity: 0;
    height: 0;
    line-height: 0;
    padding: 0 !important
}

.apexcharts-tooltip-y-group {
    padding: 6px 0 5px
}

.apexcharts-custom-tooltip,
.apexcharts-tooltip-box {
    padding: 4px 8px
}

.apexcharts-tooltip-boxPlot {
    display: flex;
    flex-direction: column-reverse
}

.apexcharts-tooltip-box>div {
    margin: 4px 0
}

.apexcharts-tooltip-box span.value {
    font-weight: 700
}

.apexcharts-tooltip-rangebar {
    padding: 5px 8px
}

.apexcharts-tooltip-rangebar .category {
    font-weight: 600;
    color: #777
}

.apexcharts-tooltip-rangebar .series-name {
    font-weight: 700;
    display: block;
    margin-bottom: 5px
}

.apexcharts-xaxistooltip,
.apexcharts-yaxistooltip {
    opacity: 0;
    pointer-events: none;
    color: #373d3f;
    font-size: 13px;
    text-align: center;
    border-radius: 2px;
    position: absolute;
    z-index: 10;
    background: #eceff1;
    border: 1px solid #90a4ae
}

.apexcharts-xaxistooltip {
    padding: 9px 10px;
    transition: .15s ease all
}

.apexcharts-xaxistooltip.apexcharts-theme-dark {
    background: rgba(0, 0, 0, .7);
    border: 1px solid rgba(0, 0, 0, .5);
    color: #fff
}

.apexcharts-xaxistooltip:after,
.apexcharts-xaxistooltip:before {
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none
}

.apexcharts-xaxistooltip:after {
    border-color: transparent;
    border-width: 6px;
    margin-left: -6px
}

.apexcharts-xaxistooltip:before {
    border-color: transparent;
    border-width: 7px;
    margin-left: -7px
}

.apexcharts-xaxistooltip-bottom:after,
.apexcharts-xaxistooltip-bottom:before {
    bottom: 100%
}

.apexcharts-xaxistooltip-top:after,
.apexcharts-xaxistooltip-top:before {
    top: 100%
}

.apexcharts-xaxistooltip-bottom:after {
    border-bottom-color: #eceff1
}

.apexcharts-xaxistooltip-bottom:before {
    border-bottom-color: #90a4ae
}

.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:after,
.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:before {
    border-bottom-color: rgba(0, 0, 0, .5)
}

.apexcharts-xaxistooltip-top:after {
    border-top-color: #eceff1
}

.apexcharts-xaxistooltip-top:before {
    border-top-color: #90a4ae
}

.apexcharts-xaxistooltip-top.apexcharts-theme-dark:after,
.apexcharts-xaxistooltip-top.apexcharts-theme-dark:before {
    border-top-color: rgba(0, 0, 0, .5)
}

.apexcharts-xaxistooltip.apexcharts-active {
    opacity: 1;
    transition: .15s ease all
}

.apexcharts-yaxistooltip {
    padding: 4px 10px
}

.apexcharts-yaxistooltip.apexcharts-theme-dark {
    background: rgba(0, 0, 0, .7);
    border: 1px solid rgba(0, 0, 0, .5);
    color: #fff
}

.apexcharts-yaxistooltip:after,
.apexcharts-yaxistooltip:before {
    top: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none
}

.apexcharts-yaxistooltip:after {
    border-color: transparent;
    border-width: 6px;
    margin-top: -6px
}

.apexcharts-yaxistooltip:before {
    border-color: transparent;
    border-width: 7px;
    margin-top: -7px
}

.apexcharts-yaxistooltip-left:after,
.apexcharts-yaxistooltip-left:before {
    left: 100%
}

.apexcharts-yaxistooltip-right:after,
.apexcharts-yaxistooltip-right:before {
    right: 100%
}

.apexcharts-yaxistooltip-left:after {
    border-left-color: #eceff1
}

.apexcharts-yaxistooltip-left:before {
    border-left-color: #90a4ae
}

.apexcharts-yaxistooltip-left.apexcharts-theme-dark:after,
.apexcharts-yaxistooltip-left.apexcharts-theme-dark:before {
    border-left-color: rgba(0, 0, 0, .5)
}

.apexcharts-yaxistooltip-right:after {
    border-right-color: #eceff1
}

.apexcharts-yaxistooltip-right:before {
    border-right-color: #90a4ae
}

.apexcharts-yaxistooltip-right.apexcharts-theme-dark:after,
.apexcharts-yaxistooltip-right.apexcharts-theme-dark:before {
    border-right-color: rgba(0, 0, 0, .5)
}

.apexcharts-yaxistooltip.apexcharts-active {
    opacity: 1
}

.apexcharts-yaxistooltip-hidden {
    display: none
}

.apexcharts-xcrosshairs,
.apexcharts-ycrosshairs {
    pointer-events: none;
    opacity: 0;
    transition: .15s ease all
}

.apexcharts-xcrosshairs.apexcharts-active,
.apexcharts-ycrosshairs.apexcharts-active {
    opacity: 1;
    transition: .15s ease all
}

.apexcharts-ycrosshairs-hidden {
    opacity: 0
}

.apexcharts-selection-rect {
    cursor: move
}

.svg_select_boundingRect,
.svg_select_points_rot {
    pointer-events: none;
    opacity: 0;
    visibility: hidden
}

.apexcharts-selection-rect+g .svg_select_boundingRect,
.apexcharts-selection-rect+g .svg_select_points_rot {
    opacity: 0;
    visibility: hidden
}

.apexcharts-selection-rect+g .svg_select_points_l,
.apexcharts-selection-rect+g .svg_select_points_r {
    cursor: ew-resize;
    opacity: 1;
    visibility: visible
}

.svg_select_points {
    fill: #efefef;
    stroke: #333;
    rx: 2
}

.apexcharts-svg.apexcharts-zoomable.hovering-zoom {
    cursor: crosshair
}

.apexcharts-svg.apexcharts-zoomable.hovering-pan {
    cursor: move
}

.apexcharts-menu-icon,
.apexcharts-pan-icon,
.apexcharts-reset-icon,
.apexcharts-selection-icon,
.apexcharts-toolbar-custom-icon,
.apexcharts-zoom-icon,
.apexcharts-zoomin-icon,
.apexcharts-zoomout-icon {
    cursor: pointer;
    width: 20px;
    height: 20px;
    line-height: 24px;
    color: #6e8192;
    text-align: center
}

.apexcharts-menu-icon svg,
.apexcharts-reset-icon svg,
.apexcharts-zoom-icon svg,
.apexcharts-zoomin-icon svg,
.apexcharts-zoomout-icon svg {
    fill: #6e8192
}

.apexcharts-selection-icon svg {
    fill: #444;
    transform: scale(.76)
}

.apexcharts-theme-dark .apexcharts-menu-icon svg,
.apexcharts-theme-dark .apexcharts-pan-icon svg,
.apexcharts-theme-dark .apexcharts-reset-icon svg,
.apexcharts-theme-dark .apexcharts-selection-icon svg,
.apexcharts-theme-dark .apexcharts-toolbar-custom-icon svg,
.apexcharts-theme-dark .apexcharts-zoom-icon svg,
.apexcharts-theme-dark .apexcharts-zoomin-icon svg,
.apexcharts-theme-dark .apexcharts-zoomout-icon svg {
    fill: #f3f4f5
}

.apexcharts-canvas .apexcharts-reset-zoom-icon.apexcharts-selected svg,
.apexcharts-canvas .apexcharts-selection-icon.apexcharts-selected svg,
.apexcharts-canvas .apexcharts-zoom-icon.apexcharts-selected svg {
    fill: #008ffb
}

.apexcharts-theme-light .apexcharts-menu-icon:hover svg,
.apexcharts-theme-light .apexcharts-reset-icon:hover svg,
.apexcharts-theme-light .apexcharts-selection-icon:not(.apexcharts-selected):hover svg,
.apexcharts-theme-light .apexcharts-zoom-icon:not(.apexcharts-selected):hover svg,
.apexcharts-theme-light .apexcharts-zoomin-icon:hover svg,
.apexcharts-theme-light .apexcharts-zoomout-icon:hover svg {
    fill: #333
}

.apexcharts-menu-icon,
.apexcharts-selection-icon {
    position: relative
}

.apexcharts-reset-icon {
    margin-left: 5px
}

.apexcharts-menu-icon,
.apexcharts-reset-icon,
.apexcharts-zoom-icon {
    transform: scale(.85)
}

.apexcharts-zoomin-icon,
.apexcharts-zoomout-icon {
    transform: scale(.7)
}

.apexcharts-zoomout-icon {
    margin-right: 3px
}

.apexcharts-pan-icon {
    transform: scale(.62);
    position: relative;
    left: 1px;
    top: 0
}

.apexcharts-pan-icon svg {
    fill: #fff;
    stroke: #6e8192;
    stroke-width: 2
}

.apexcharts-pan-icon.apexcharts-selected svg {
    stroke: #008ffb
}

.apexcharts-pan-icon:not(.apexcharts-selected):hover svg {
    stroke: #333
}

.apexcharts-toolbar {
    position: absolute;
    z-index: 11;
    max-width: 176px;
    text-align: right;
    border-radius: 3px;
    padding: 0 6px 2px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

.apexcharts-menu {
    background: #fff;
    position: absolute;
    top: 100%;
    border: 1px solid #ddd;
    border-radius: 3px;
    padding: 3px;
    right: 10px;
    opacity: 0;
    min-width: 110px;
    transition: .15s ease all;
    pointer-events: none
}

.apexcharts-menu.apexcharts-menu-open {
    opacity: 1;
    pointer-events: all;
    transition: .15s ease all
}

.apexcharts-menu-item {
    padding: 6px 7px;
    font-size: 12px;
    cursor: pointer
}

.apexcharts-theme-light .apexcharts-menu-item:hover {
    background: #eee
}

.apexcharts-theme-dark .apexcharts-menu {
    background: rgba(0, 0, 0, .7);
    color: #fff
}

@media screen and (min-width:768px) {
    .apexcharts-canvas:hover .apexcharts-toolbar {
        opacity: 1
    }
}

.apexcharts-canvas .apexcharts-element-hidden,
.apexcharts-datalabel.apexcharts-element-hidden,
.apexcharts-hide .apexcharts-series-points {
    opacity: 0
}

.apexcharts-hidden-element-shown {
    opacity: 1;
    transition: 0.25s ease all;
}

.apexcharts-datalabel,
.apexcharts-datalabel-label,
.apexcharts-datalabel-value,
.apexcharts-datalabels,
.apexcharts-pie-label {
    cursor: default;
    pointer-events: none
}

.apexcharts-pie-label-delay {
    opacity: 0;
    animation-name: opaque;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    animation-timing-function: ease
}

.apexcharts-annotation-rect,
.apexcharts-area-series .apexcharts-area,
.apexcharts-area-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,
.apexcharts-gridline,
.apexcharts-line,
.apexcharts-line-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,
.apexcharts-point-annotation-label,
.apexcharts-radar-series path,
.apexcharts-radar-series polygon,
.apexcharts-toolbar svg,
.apexcharts-tooltip .apexcharts-marker,
.apexcharts-xaxis-annotation-label,
.apexcharts-yaxis-annotation-label,
.apexcharts-zoom-rect {
    pointer-events: none
}

.apexcharts-marker {
    transition: .15s ease all
}

.resize-triggers {
    animation: 1ms resizeanim;
    visibility: hidden;
    opacity: 0;
    height: 100%;
    width: 100%;
    overflow: hidden
}

.contract-trigger:before,
.resize-triggers,
.resize-triggers>div {
    content: " ";
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

.resize-triggers>div {
    height: 100%;
    width: 100%;
    background: #eee;
    overflow: auto
}

.contract-trigger:before {
    overflow: hidden;
    width: 200%;
    height: 200%
}

.apexcharts-bar-goals-markers {
    pointer-events: none
}

.apexcharts-bar-shadows {
    pointer-events: none
}

.apexcharts-rangebar-goals-markers {
    pointer-events: none
}

.dropdown-menu-1 {
    max-width: 350px;
    /* Ограничение ширины меню */
    right: 10px !important;
    /* Смещение внутрь */
    left: auto !important;
    transform: translateX(-10px);
    /* Подстраивает появление */
}

@media (max-width: 768px) {
    .dropdown-menu {
        right: 5px !important;
        /* Коррекция для маленьких экранов */
        transform: translateX(0);
    }
}

.imgprev {
    width: 100%;
    object-fit: contain;
}

.tab-img {
    max-width: 100%;
}

.resizable-wrapper {
    position: relative;
}

.resizable-wrapper {
    resize: both;
    overflow: hidden;
    display: inline-block;
    max-width: 100%;
    min-width: 50px;
    min-height: 50px;
    border-radius: 4px;
    background: linear-gradient(135deg, #ffffff, #f0f0f0);
    box-shadow: 0 0 5px rgba(0, 123, 255, 0.2);

}

.resizable-wrapper:hover {
    border-color: #007bff;
    /* ярче при наведении */
}

.resizable-wrapper::after {
    content: "";
    position: absolute;
    bottom: 4px;
    right: 4px;
    width: 10px;
    height: 10px;
    border-right: 2px solid #007bff;
    border-bottom: 2px solid #007bff;
    pointer-events: none;
}


/* === Общие стили страницы === */
.page-view {
    padding: 2rem;
    max-width: 1400px;
    margin: 0 auto;
}

/* === Заголовок страницы === */
.page-header {
    margin-bottom: 2rem;
}

.page-title {
    font-size: 1.875rem;
    font-weight: 700;
    margin: 0;
}

.page-subtitle {
    font-size: 0.95rem;
    margin: 0.25rem 0 0;
}

/* === Карточки статистики === */
.stat-card {
    border-radius: 12px;
    padding: 1.5rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    border: 1px solid;
    display: flex;
    align-items: center;
    gap: 1rem;
    transition: all 0.2s ease;
    position: relative;
    overflow: hidden;
}

.stat-card:hover {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.07);
    transform: translateY(-2px);
}

.stat-icon {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    background: linear-gradient(135deg, #4F46E5, #6366F1);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.stat-content {
    flex: 1;
}

.stat-label {
    font-size: 0.875rem;
    margin-bottom: 0.25rem;
}

.stat-value {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1;
}

.stat-value .text-muted {
    font-size: 1.25rem;
    font-weight: 400;
}

/* === Пульсирующий индикатор === */
.pulse-active .pulse-indicator {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 8px;
    height: 8px;
    background: #10B981;
    border-radius: 50%;
    animation: pulse 2s ease infinite;
}

@keyframes pulse {

    0%,
    100% {
        opacity: 1;
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7);
    }

    50% {
        opacity: 0.8;
        transform: scale(1.1);
        box-shadow: 0 0 0 8px rgba(16, 185, 129, 0);
    }
}

/* === Карточки === */
.card {
    border-radius: 12px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);

    overflow: hidden;
}

.card-header {
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid;
}

.card-title {
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0;
}

.card-body {
    padding: 1.5rem;
}

/* === Переключатели управления === */
.control-toggle {
    padding: 1rem;
    border-radius: 8px;
    border: 1px solid;
    transition: all 0.2s ease;
}

.form-check-input {
    width: 2.5rem;
    height: 1.25rem;
    cursor: pointer;
    border: 2px solid;
}

.form-check-input:checked {
    background-color: #4F46E5;
}

.form-check-input:focus {
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.1);
}

.form-check-label {
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    margin-left: 0.5rem;
}

/* === Нагрузка отделов === */
.department-load {
    padding: 0.5rem 0;
}

.load-item {
    margin-bottom: 1rem;
}

.load-item:last-child {
    margin-bottom: 0;
}

.load-label {
    font-size: 0.875rem;
    font-weight: 500;
}

.load-value {
    font-size: 0.875rem;
    font-weight: 600;
}

.progress {
    height: 8px;
    border-radius: 4px;
    overflow: hidden;
}

.progress-bar {
    border-radius: 4px;
    transition: width 0.3s ease;
}

/* === Таблица === */
.table thead th {
    font-size: 0.8125rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid;
    padding: 1rem;
}

.table tbody td {
    padding: 1rem;
    vertical-align: middle;
    border-bottom: 1px solid;
}

.table tbody tr {
    transition: background 0.15s ease;
}

.table tbody tr:last-child td {
    border-bottom: none;
}

/* === Бейджи === */
.badge {
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.bg-success {
    background: #10B981 !important;
}

.bg-warning {
    background: #F59E0B !important;
}

.bg-danger {
    background: #EF4444 !important;
}

.bg-info {
    background: #06B6D4 !important;
}

/* === Кнопки === */
.btn {
    border-radius: 8px;
    font-weight: 500;
    transition: all 0.2s ease;
    border: none;
}

.btn-sm {
    padding: 0.375rem 0.75rem;
    font-size: 0.875rem;
}

.btn-light {
    border: 1px solid;
}

.btn-light:hover {
    transform: translateY(-1px);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

/* === Иконки === */
.text-success {
    color: #10B981 !important;
}

.text-primary {
    color: #4F46E5 !important;
}

/* === Адаптивность === */
@media (max-width: 768px) {
    .page-view {
        padding: 1rem;
    }

    .page-title {
        font-size: 1.5rem;
    }

    .stat-card {
        padding: 1.25rem;
    }

    .stat-value {
        font-size: 1.5rem;
    }
}

/* === Скроллбар === */
.table-responsive::-webkit-scrollbar {
    height: 8px;
}

.table-responsive::-webkit-scrollbar-track {
    border-radius: 4px;
}

.table-responsive::-webkit-scrollbar-thumb {
    background: #E5E7EB;
    border-radius: 4px;
}

.table-responsive::-webkit-scrollbar-thumb:hover {
    background: #D1D5DB;
}

/* === Заголовок страницы с кнопкой === */
.page-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
}

/* === Аватары === */
.avatar-sm {
    width: 40px;
    height: 40px;
    object-fit: cover;
}

.avatar-xl {
    width: 120px;
    height: 120px;
    object-fit: cover;
}

.avatar-upload {
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* === Индикаторы статуса === */
.status-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    display: inline-block;
}

.status-dot.online {
    background: #10B981;
    box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.2);
}

.status-dot.busy {
    background: #F59E0B;
    box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.2);
}

.status-dot.offline {
    background: #6B7280;
    box-shadow: 0 0 0 2px rgba(107, 114, 128, 0.2);
}

/* === Модальное окно === */
.modal-content {
    border-radius: 12px;
    border: 1px solid;
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);
}

.modal-header {
    padding: 1.5rem;
    border-bottom: 1px solid;
}

.modal-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0;
}

.modal-body {
    padding: 1.5rem;
}

.modal-footer {
    padding: 1rem 1.5rem;
    border-top: 1px solid;
}

.btn-close {
    opacity: 0.5;
    transition: opacity 0.2s;
}

.btn-close:hover {
    opacity: 1;
}

/* === Табы === */
.nav-tabs {
    border-bottom: 2px solid;
}

.nav-tabs .nav-link {
    border: none;
    padding: 0.75rem 1.25rem;
    font-weight: 500;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    transition: all 0.2s ease;
}

.nav-tabs .nav-link:hover {
    border-bottom-color: currentColor;
    opacity: 0.7;
}

.nav-tabs .nav-link.active {
    border-bottom-color: #4F46E5;
    color: #4F46E5;
}

/* === Формы === */
.form-label {
    font-weight: 500;
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
}

.form-control,
.form-select {
    border-radius: 8px;
    padding: 0.625rem 0.875rem;
    border: 1px solid;
    transition: all 0.2s ease;
}

.form-control:focus,
.form-select:focus {
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.1);
    outline: none;
}

.input-group .form-control {
    border-radius: 8px 0 0 8px;
}

.input-group .btn {
    border-radius: 0 8px 8px 0;
}

/* === Алерты === */
.alert {
    border-radius: 8px;
    padding: 1rem;
    border: 1px solid;
}

.alert-info {
    background: rgba(6, 182, 212, 0.1);
    border-color: rgba(6, 182, 212, 0.2);
}

/* === Правила Follow Me === */
.follow-me-rules {
    margin-top: 1rem;
}

.rule-item {
    display: flex;
    gap: 1rem;
    padding: 1rem;
    border-radius: 8px;
    border: 1px solid;
}

.rule-number {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, #4F46E5, #6366F1);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    flex-shrink: 0;
}

.rule-content {
    flex: 1;
}

.rule-content .form-label {
    margin-bottom: 0.5rem;
}

/* === Кнопка Primary === */
.btn-primary {
    background: linear-gradient(135deg, #4F46E5, #6366F1);
    color: white;
    border: none;
}

.btn-primary:hover {
    background: linear-gradient(135deg, #4338CA, #4F46E5);
    transform: translateY(-1px);
    box-shadow: 0 4px 6px rgba(79, 70, 229, 0.3);
}

/* === Кнопка Secondary === */
.btn-secondary {
    border: 1px solid;
}

.btn-secondary:hover {
    transform: translateY(-1px);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

/* === Outline кнопки === */
.btn-outline-secondary {
    border: 1px solid;
    transition: all 0.2s ease;
}

.btn-outline-secondary:hover {
    transform: translateY(-1px);
}

/* === Утилиты === */
.fw-medium {
    font-weight: 500;
}

.gap-2 {
    gap: 0.5rem;
}

.gap-3 {
    gap: 1rem;
}

/* === Адаптивность === */
@media (max-width: 768px) {
    .page-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }

    .modal-dialog {
        margin: 0.5rem;
    }

    .nav-tabs .nav-link {
        padding: 0.5rem 0.75rem;
        font-size: 0.875rem;
    }
}

.stat-card {
    background: var(--bg-card);
    border-radius: 12px;
    padding: 1.5rem;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border);
    display: flex;
    align-items: center;
    gap: 1rem;
    transition: all 0.2s ease;
    position: relative;
    overflow: hidden;
}

.stat-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.stat-icon {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--primary), #6366F1);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.stat-content {
    flex: 1;
}

.stat-label {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin-bottom: 0.25rem;
}

.stat-value {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1;
}

.stat-value .text-muted {
    font-size: 1.25rem;
    font-weight: 400;
    color: var(--text-secondary);
}

.department-card {
    border: none;
    border-radius: 16px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    height: 100%;
}

.department-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

.department-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16px;
}

/* Иконка отдела */
.department-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    background-color: #6C5DD3;
    /* Цвет по умолчанию */
    color: white;
}

.department-name {
    font-size: 1.1rem;
    font-weight: 600;
    color: #2d3436;
    margin-bottom: 16px;
}

/* Информация (сотрудники, группа) */
.department-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 20px;
}

.info-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.9rem;
    color: #636e72;
}

/* Руководитель */
.department-manager {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-top: 16px;
    border-top: 1px solid #edf2f7;
    margin-bottom: 16px;
    font-size: 0.85rem;
    font-weight: 500;
}

.avatar-xs {
    width: 28px;
    height: 28px;
    object-fit: cover;
}

/* Бейджи стратегии */
.department-strategy {
    display: flex;
    align-items: center;
    gap: 8px;
}

.badge {
    padding: 6px 12px;
    border-radius: 8px;
    font-weight: 500;
    font-size: 0.75rem;
    text-transform: lowercase;
}

.badge::first-letter {
    text-transform: uppercase;
}

/* Кнопки и выпадающие списки */
.btn-light {
    background: #f1f3f5;
    border: none;
    color: #636e72;
}

.btn-light:hover {
    background: #e9ecef;
}

.dropdown-menu {
    border: none;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    border-radius: 12px;
    padding: 8px;
}

.dropdown-item {
    border-radius: 6px;
    padding: 8px 12px;
    font-size: 0.9rem;
}

/* Кастомные цвета для иконок, если не заданы inline */
.bg-success {
    background-color: #4ECDC4 !important;
}

.bg-info {
    background-color: #95E1D3 !important;
}

.bg-warning {
    background-color: #F38181 !important;
}

.bg-danger {
    background-color: #AA96DA !important;
}

#did-numbers-page .card {
    border: none;
    border-radius: 16px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    overflow: hidden;
}

/* Стили таблицы */
.table {
    margin-bottom: 0;
    vertical-align: middle;
}



.table tbody td {
    padding: 16px 24px;

    font-size: 0.95rem;
    border-bottom: 1px solid #edf2f7;
}

.table-hover tbody tr:hover {
    background-color: #fcfcfd;
}

/* Оформление номера и флага */


.fi {
    border-radius: 2px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

/* Селектор назначения (переадресация) */
.destination-select {
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 6px 12px;
    font-size: 0.85rem;
    color: #495057;
    background-color: #fff;
    cursor: pointer;
    transition: border-color 0.2s;
    min-width: 200px;
}

.destination-select:focus {
    border-color: #6C5DD3;
    box-shadow: 0 0 0 3px rgba(108, 93, 211, 0.1);
    outline: none;
}

/* Бейджи типов номеров */
.badge {
    padding: 6px 10px;
    border-radius: 6px;
    font-weight: 500;
    font-size: 0.75rem;
}

.bg-success {
    background-color: rgba(78, 205, 196, 0.1) !important;
    color: #2b9089 !important;
}

.bg-primary {
    background-color: rgba(108, 93, 211, 0.1) !important;
    color: #6C5DD3 !important;
}

/* Кнопки действий */
.btn-light {
    width: 36px;
    height: 36px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background-color: #f1f3f5;
    color: #636e72;
    border: none;
    transition: all 0.2s;
}

.btn-light:hover {
    background-color: #e9ecef;
    color: #2d3436;
    transform: scale(1.05);
}

/* Цена и даты */
td:nth-child(4) {
    font-weight: 600;
}

td:nth-child(5) {
    color: #a2a2a2;
    font-size: 0.85rem;
}

.nav-tabs {
    border-bottom: 2px solid #edf2f7;
    gap: 8px;
}

.nav-tabs .nav-link {
    border: none;
    color: #636e72;
    font-weight: 500;
    padding: 10px 20px;
    border-radius: 8px 8px 0 0;
    transition: all 0.2s ease;
    position: relative;
}

.nav-tabs .nav-link:hover {
    color: #6C5DD3;
    background-color: #f8f9fa;
    border: none;
}

.nav-tabs .nav-link.active {
    color: #6C5DD3;
    background: none;
    border: none;
}

/* Линия под активной вкладкой */
.nav-tabs .nav-link.active::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 2px;
    background-color: #6C5DD3;
}

/* Оформление кода и паттернов */
code {
    background-color: #f1f3f5;
    color: #e83e8c;
    padding: 2px 6px;
    border-radius: 4px;
    font-family: 'Fira Code', monospace;
    font-size: 0.9em;
}

/* Приоритет (второстепенные бейджи) */
.badge.bg-secondary {
    background-color: #e9ecef !important;
    color: #495057 !important;
    font-weight: 600;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
}

/* Статусы */
.badge.bg-success {
    background-color: rgba(78, 205, 196, 0.1) !important;
    color: #2b9089 !important;
}

.badge.bg-warning {
    background-color: rgba(243, 129, 129, 0.1) !important;
    color: #d9534f !important;
}

/* Таблица правил */
.sortable-table tr {
    cursor: default;
}

/* Иконка перетаскивания */
.fa-grip-vertical {
    color: #ced4da;
    cursor: grab;
}

.fa-grip-vertical:active {
    cursor: grabbing;
}

/* Кнопки действий в ряд */
.table td .btn-sm {
    margin-right: 4px;
    border: none;
    background: #f8f9fa;
}

.table td .btn-sm:hover {
    background: #edf2f7;
}

/* Текст назначения (стрелочка) */
td:nth-child(3) {
    color: #495057;
    font-weight: 500;
}

/* --- 1. ОСНОВНОЙ КОНТЕЙНЕР (ОКНО ПРОСМОТРА) --- */
.ivr-canvas-container {
    position: relative;
    width: 100%;
    height: 600px;
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    overflow: auto;
    /* Включает скролл для большого поля */
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.05);
}

/* --- 2. ГРАФИЧЕСКОЕ ПОЛЕ (БЕСКОНЕЧНОЕ) --- */
.ivr-canvas {
    position: relative;
    width: 4000px;
    /* Огромная ширина для расширения */
    height: 4000px;
    /* Огромная высота */
    background-color: #ffffff;
    background-image: radial-gradient(#d1d1d1 1.2px, transparent 1.2px);
    background-size: 25px 25px;
    /* Шаг сетки */
    z-index: 2;
}

/* Слой SVG для линий (всегда под блоками) */
#canvas-svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 4000px;
    height: 4000px;
    pointer-events: none;
    z-index: 10;
}

/* --- 3. КОМПАКТНЫЙ БЛОК (IVR NODE) --- */
.canvas-node {
    position: absolute;
    width: 170px;
    /* Уменьшенный размер */
    background: #ffffff;
    border: 1px solid #adb5bd;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    z-index: 10;
    user-select: none;
    transition: border-color 0.2s;
}

.canvas-node:hover {
    border-color: #6C5DD3;
}

/* Компактная шапка */
.node-header {
    padding: 6px 10px;
    background: #f1f3f5;
    border-bottom: 1px solid #dee2e6;
    border-radius: 5px 5px 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: move;
}

.node-header strong {
    font-size: 0.75rem;
    color: #495057;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Уменьшенная зона сброса номера */
.node-drop-zone {
    margin: 8px;
    min-height: 45px;
    border: 1px dashed #ced4da;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fdfdfd;
    color: #adb5bd;
    font-size: 0.7rem;
    text-align: center;
    padding: 4px;
}

/* Номер-бейджик внутри блока */
.node-drop-zone .badge {
    width: 100%;
    padding: 6px;
    background-color: #6C5DD3 !important;
    color: #fff !important;
    font-size: 0.75rem;
    border-radius: 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* --- 4. ТОЧКИ СВЯЗИ (МАЛЕНЬКИЕ) --- */
.dot {
    width: 10px;
    height: 10px;
    background: #fff;
    border: 2px solid #6C5DD3;
    border-radius: 50%;
    position: absolute;
    z-index: 20;
    cursor: crosshair;
    top: 50%;
    transform: translateY(-50%);
    transition: background 0.2s, transform 0.2s;
}

.dot:hover {
    background: #6C5DD3;
    transform: translateY(-50%) scale(1.3);
}

.dot.input {
    left: -6px;
}

.dot.output {
    right: -6px;
}

/* Активная точка при установке связи */
.dot.active-dot {
    background: #20c997 !important;
    border-color: #12b886;
    box-shadow: 0 0 8px rgba(32, 201, 151, 0.5);
}

/* --- 5. ЛИНИИ И КУРСОРЫ --- */
#canvas-svg line {
    stroke: #6C5DD3;
    stroke-width: 2.5;
    stroke-linecap: round;
}

/* Полноэкранный режим браузера */
.ivr-canvas-container:fullscreen {
    width: 100vw !important;
    height: 100vh !important;
    border-radius: 0;
}

/* --- 6. ДОПОЛНИТЕЛЬНЫЕ ЭЛЕМЕНТЫ ТУЛБАРА --- */
.num-item {
    padding: 8px 12px;
    margin-bottom: 6px;

    border: 1px solid var(--bs-body-color);
    border-radius: 4px;
    cursor: grab;
    font-size: 0.85rem;
    transition: background 0.2s;
}

.num-item:hover {
    background: #f1f3f5;
    border-color: #6C5DD3;
}

.btn-del {
    line-height: 1;
    font-size: 1.2rem;
    font-weight: bold;
    color: #ced4da;
    transition: color 0.2s;
}

.btn-del:hover {
    color: #fa5252;
}

/* Когда контейнер в полноэкранном режиме */
.ivr-canvas-container:fullscreen {
    width: 100vw !important;
    height: 100vh !important;
    background-color: #ffffff;
    /* Обязательно задаем фон */
    padding: 0;
    margin: 0;
    border: none;
}

/* Для Safari/Chrome префиксы */
.ivr-canvas-container:-webkit-full-screen {
    width: 100vw;
    height: 100vh;
    background-color: #ffffff;
}

/* Чтобы линии и блоки не съезжали в полноэкранном режиме */
.ivr-canvas-container:fullscreen .ivr-canvas {
    border-radius: 0;
}

/* Базовый стиль кнопки выхода */
.btn-exit-fs {
    display: none;
    /* Скрыта в обычном режиме */
    position: fixed;
    top: 20px;
    right: 20px;
    width: 45px;
    height: 45px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid #ddd;
    border-radius: 50%;
    font-size: 30px;
    line-height: 40px;
    color: #333;
    z-index: 9999;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    transition: all 0.2s;
    text-align: center;
}

.btn-exit-fs:hover {
    background: #fff;
    color: #fa5252;
    transform: scale(1.1);
}

/* ОТОБРАЖЕНИЕ ТОЛЬКО В ПОЛНОЭКРАННОМ РЕЖИМЕ */
.ivr-canvas-container:fullscreen .btn-exit-fs {
    display: block;
}

/* Префиксы для Safari/Chrome */
.ivr-canvas-container:-webkit-full-screen .btn-exit-fs {
    display: block;
}


/* Панель инструментов в фулскрине */
.fs-toolbar {
    display: none;
    /* Скрыта в обычном режиме */
    position: fixed;
    top: 20px;
    left: 20px;
    width: 180px;
    background: rgba(255, 255, 255, 0.95);
    border: 1px solid #ccc;
    border-radius: 8px;
    padding: 10px;
    z-index: 9999;
    max-height: 80vh;
    overflow-y: auto;
}

/* Показываем только во весь экран */
.ivr-canvas-container:fullscreen .fs-toolbar {
    display: block;
}

.fs-section-title {
    font-size: 10px;
    font-weight: bold;
    text-transform: uppercase;
    color: #888;
    margin-bottom: 8px;
    border-bottom: 1px solid #eee;
}

.fs-numbers-list .num-item {
    font-size: 11px;
    padding: 5px;
    margin-bottom: 5px;
    background: #f8f9fa;
    border: 1px solid #ddd;
    border-radius: 4px;
    cursor: grab;
}

/* Стили для кнопки "Связь" в фулскрине при активации */
.fs-draw-btn.active {
    background: #6C5DD3;
    color: white;
}

.fs-section-title {
    font-size: 10px;
    font-weight: bold;
    text-transform: uppercase;
    color: #6c757d;
    margin-top: 10px;
    margin-bottom: 5px;
    padding-bottom: 2px;
    border-bottom: 1px solid #eee;
}

.fs-numbers-group {
    max-height: 150px;
    overflow-y: auto;
    padding-right: 5px;
}

/* Стилизация скроллбара внутри панели для компактности */
.fs-numbers-group::-webkit-scrollbar {
    width: 4px;
}

.fs-numbers-group::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
}

/* Убираем стандартные тени и отступы аккордеона Bootstrap для компактности */
.fs-toolbar .accordion-button {
    font-size: 0.75rem;
    font-weight: 600;
    color: #495057;
    box-shadow: none !important;
}

.fs-toolbar .accordion-button:not(.collapsed) {
    background-color: transparent;
    color: #6C5DD3;
}

.fs-toolbar .accordion-item {
    border-bottom: 1px solid #eee;
}

.fs-numbers-group {
    max-height: 200px;
    overflow-y: auto;
}

/* Стили для элементов номера внутри выпадающего списка */
.fs-numbers-group .num-item {
    font-size: 0.7rem;
    margin: 2px 0;
    border: 1px solid #f1f1f1;
    background: #fff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Контейнер для списка номеров */
.node-drop-zone {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 6px;
    min-height: 40px;
}

/* Плашка номера */
.node-num-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #6C5DD3;
    color: #fff;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 0.7rem;
    cursor: default;
}

/* Кнопка удаления номера */
.node-num-remove {
    cursor: pointer;
    font-size: 14px;
    margin-left: 5px;
    line-height: 1;
}

.node-num-remove:hover {
    color: #ffc107;
}

.collision-error {
    outline: 2px solid #fa5252 !important;
    transition: outline 0.2s;
}

.company-kpi-card {
  border-radius: 16px;
  transition: all 0.25s ease;
}

.company-kpi-card:hover {
  transform: translateY(-4px);
}

.company-kpi-icon {
  width: 56px;
  height: 56px;
  margin: 0 auto;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,0.55);
  font-size: 24px;
  line-height: 1;
}

.company-kpi-card .card-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 170px;
}

@media (max-width: 767.98px) {
  .company-kpi-card .card-body {
    min-height: 145px;
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }

  .company-kpi-icon {
    width: 48px;
    height: 48px;
    font-size: 20px;
    margin-bottom: 12px !important;
  }
}