/* Общие компонентные и интеграционные стили.
   Foundation и каркас приложения вынесены в отдельные слои. */

@media (max-width: 768px) {
    nav ul:not(.pagination) {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }
}

/* Для маленьких экранов (мобильные) */
@media (max-width: 576px) {
    .btn {
        padding: 10px 15px; /* Увеличиваем кнопки на мобильных */
        font-size: 16px;
    }
}

/* Глобальный слой для всех Bootstrap-выпадающих меню:
   — выше панелей и контента
   — ниже модалок/поповеров (чтобы не перекрывать их) */
.dropdown-menu {
  z-index: 1045 !important; /* modal ≈ 1055, popover ≈ 1070, tooltip ≈ 1080 */
}

/* --------------------------------------------------------
   Bootstrap Offcanvas для непрочитанных уведомлений
   -------------------------------------------------------- */
.notifications-offcanvas {
  height: auto !important;
  max-height: 100vh !important;
}

@media (min-width: 576px) {
  .notifications-offcanvas {
    left: auto !important;
    width: min(560px, 50vw);
  }
}

.bi-star-fill {
  color: #ffc107; /* вернуть поведение как раньше */
}

.table-striped {
  /* задаём светло-серый фон «зебры» */
  --bs-table-striped-bg: rgba(0, 0, 0, 0.12);
}

/* Отменяем "голубую" подсветку для текущего выбранного пункта (фон и текст стандартные) */
.select2-container--bootstrap-5 .select2-results__option[aria-selected="true"]:not(.select2-results__option--highlighted) {
    background-color: var(--bs-secondary-bg) !important;   /* светлый фон */
    color: var(--bs-body-color) !important;                /* стандартный текст */
}
/* Голубая подсветка для активного пункта списка (hover/focus) */
.select2-container--bootstrap-5 .select2-results__option--highlighted {
    background-color: var(--bs-primary) !important;        /* основной цвет темы */
    color: var(--bs-white) !important;                     /* белый текст */
}
/* Тень и лёгкий фон выпадающему списку select2 */
.select2-container--bootstrap-5 .select2-dropdown {
    background-color: #e3f0ff !important; /* очень светлый голубой фон */
    box-shadow: 0 12px 48px 0 rgba(13,110,253,0.23), 0 4px 24px 0 rgba(0,0,0,0.32) !important;
    border: 1px solid var(--bs-primary, #0d6efd) !important; /* голубая рамка по цвету темы */
    border-radius: 0.5rem !important;
    z-index: 1060 !important;
}

.back-link {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 0.6rem;
    box-shadow: none !important;
    text-decoration: none !important;
    outline: none !important;
}
.back-link i {
    font-size: 1.6rem;
    font-weight: bold;
    transition: color 0.15s;
}
.back-link:hover i,
.back-link:focus i {
    color: #ffc107 !important; /* жёлтый или другой акцент */
}

.user-avatar:focus,
.user-avatar:hover {
    box-shadow: 0 4px 16px rgba(13,110,253,0.14);
    filter: brightness(1.12);
    color: #ffc107 !important;
}

.header-action {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
    font-weight: normal;
    text-decoration: none !important;
    transition: color 0.15s;
    cursor: pointer;
    outline: none;
    display: flex !important;
    align-items: center;
    color: #ffffff !important;
    opacity: 1 !important;
}
.header-action:hover,
.header-action:focus {
    color: #ffc107 !important;
}

/* Слева в мобильной шапке держим стабильный ритм между кнопками меню и «назад». */
.header-left-controls {
    gap: 0.5rem;
    flex-shrink: 0;
}

.header-menu-toggle {
    margin-right: 0 !important;
    width: 2.6rem;
    height: 2.6rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 991.98px) {
    /* На мобильных защищаем место под заголовок и уменьшаем риск промаха по кнопкам. */
    .app-header-title {
        flex: 1 1 0;
        min-width: 0;
        /* Немного уменьшаем кегль, чтобы длинные названия чаще помещались без потери читаемости. */
        font-size: 1.2rem;
        /* Разрешаем заголовку занимать от одной до трёх строк с многоточием в конце третьей. */
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        line-height: 1.2;
        max-height: calc(1.2em * 3);
    }

    .back-link {
        width: 2rem;
        height: 2rem;
    }
}

/* Более жирное и цветное подчеркивание только у активной вкладки */
.nav-tabs .nav-link.active {
    color: #fd7e14 !important; /* Цвет текста активной вкладки */
    font-weight: bold;
    background-color: #fff;  /* Сохраняет белый фон, если нужно */
    border-color: transparent !important; /* убирает стандартную рамку */
    border-bottom: 4px solid #fd7e14 !important;  /* Цвет как у значка кубка */
    padding-bottom: 0.2rem !important;  /* По умолчанию 0.5rem, теперь меньше */
}

/* Расширяем размер стандартного тултипа Bootstrap */
.tooltip-inner {
    max-width: 400px !important;
    white-space: pre-line;
    text-align: left;
    font-size: 0.98em;
}

.help-tooltip-btn {
    display: inline-block;
    font-size: 0.75em;
    line-height: 1;
    vertical-align: super;
    border: 1px solid #bbb;
    border-radius: 50%;
    width: 1.15em;
    height: 1.15em;
    text-align: center;
    padding: 0;
    box-sizing: border-box;
    font-weight: 400;
    background: transparent;
    cursor: pointer;
    color: #6c757d;
}

.params-help-disclosure {
    margin-top: 0.45rem;
    padding: 0.65rem 0.75rem;
    border: 1px solid rgba(29, 108, 228, 0.28);
    border-radius: 0.65rem;
    background: #eef5ff;
    color: #183153;
    font-size: 0.84rem;
    font-weight: 400;
    line-height: 1.4;
}

.params-help-disclosure[hidden] {
    display: none !important;
}

.quag-popover {
  background: #e8f1ff !important;           /* светло-голубой */
  border: 2px solid #1d6ce4 !important;      /* ярко-синий */
  color: #183153 !important;
  box-shadow: 0 8px 24px 0 rgba(40,91,185,0.16);
  font-size: 0.9em;
  max-width: 600px !important;
}
.quag-popover .popover-header {
  background: #1d6ce4 !important;
  color: #fff !important;
  border-bottom: 1px solid #1d6ce4 !important;
  font-weight: 600;
  font-size: 1em;
  border-radius: 0.65em 0.65em 0 0;
}
.quag-popover .popover-body {
  padding: 1em 1.2em;
}
.quag-popover .popover-arrow::before,
.quag-popover .popover-arrow::after {
  border-right-color: #1d6ce4 !important; /* если popover справа */
  border-left-color: #1d6ce4 !important;  /* если popover слева */
  border-top-color: #1d6ce4 !important;   /* если popover снизу */
  border-bottom-color: #1d6ce4 !important;/* если popover сверху */
}
