/*
 * Стили ядра Carrot (K16, K16a): шрифт, баннеры, индикаторы htmx, название экземпляра в меню.
 * Подключается документом через web_asset() — с хэшем содержимого в имени файла. Каркас страниц — штатные
 * макеты Tabler (D-030), своих стилей каркаса здесь нет. Цвета — только переменные Tabler (--tblr-*):
 * они следуют схеме (data-bs-theme) и акцентному цвету (data-bs-theme-primary).
 */

:root {
  --tblr-font-sans-serif: 'Inter Variable', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
}

/* Индикаторы htmx: includeIndicatorStyles = false — свои стили вместо inline <style> (CSP, KD 1.4). */
.htmx-indicator {
  opacity: 0;
  transition: opacity 200ms ease-in;
}

.htmx-request .htmx-indicator,
.htmx-request.htmx-indicator {
  opacity: 1;
}

/*
 * Общий баннер вверху страницы: сообщения и подтверждения опасных действий (не alert()/confirm()).
 * Слой — ниже выпадающих списков меню (1000) и раскрытого бокового меню, выше содержимого страницы.
 */
.carrot-banners {
  position: sticky;
  top: 0;
  z-index: 990;
  padding-top: .75rem;
}

.carrot-banners:empty {
  padding-top: 0;
}

.carrot-banners .alert {
  margin-bottom: .75rem;
  box-shadow: var(--tblr-box-shadow-dropdown);
  background-color: var(--tblr-bg-surface);
}

.carrot-banner-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: .5rem;
}

/*
 * Название экземпляра в меню: значок и текст. Логотип заказчика — в теме views/theme.css, например:
 *   .carrot-logo { width: 7rem; background: url(data:image/svg+xml;base64,…) no-repeat left center / contain; }
 *   .carrot-logo .icon, .carrot-brand-name { display: none; }
 */
.carrot-brand {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: inherit;
  text-decoration: none;
}

.carrot-brand:hover {
  text-decoration: none;
}

.carrot-logo {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
  height: 1.5rem;
  color: var(--tblr-primary);
}

.carrot-logo .icon {
  width: 1.5rem;
  height: 1.5rem;
}

/* Свёрнутое меню folded-hover (lg и шире): виден только значок, название — при раскрытии. */
@media (min-width: 992px) {
  .navbar-folded-hover:not(:hover):not(:has(:focus-visible)) .carrot-brand-name {
    display: none;
  }
}

/* Иконки спрайта: Tabler задаёт размер и толщину классом .icon. */
svg.icon {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
}
