/*
 * Notification Gateway — собственные стили поверх Sneat.
 *
 * Правило: тема не правится. Всё, что нужно изменить, живёт здесь и
 * переопределяет CSS-переменные Sneat, а не его селекторы.
 */

/* ---------------------------------------------------------------------------
 * Шрифты
 *
 * Sneat использует Public Sans, но он не содержит кириллицы, а панель
 * русскоязычная. Inter добавлен сразу после него: браузер по unicode-range
 * сам берёт Public Sans для латиницы и Inter для кириллицы.
 * ------------------------------------------------------------------------ */

:root,
[data-bs-theme='light'],
[data-bs-theme='dark'] {
  --bs-font-sans-serif: 'Public Sans', 'Inter', -apple-system, blinkmacsystemfont, 'Segoe UI',
    'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
}

/* ---------------------------------------------------------------------------
 * Утилиты, используемые в нескольких разделах
 * ------------------------------------------------------------------------ */

/* Моноширинные идентификаторы: key_id, request_id, public_id заявки. */
.gw-id {
  font-family: var(--bs-font-monospace);
  font-size: 0.8125rem;
  letter-spacing: -0.01em;
  white-space: nowrap;
}

/*
 * Длинное значение во flex-строке, которому разрешено переноситься.
 *
 * min-width: 0 - потому что у элемента flex по умолчанию min-width: auto,
 * и строка без пробелов не сжимается, а распирает родителя. white-space
 * перебивает nowrap из .gw-id: без этого перенос запрещён вовсе. Селектор
 * с .gw-id - ради специфичности, чтобы не зависеть от порядка правил.
 */
.gw-break,
.gw-id.gw-break {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
}

/* Значение, скрытое маскированием (телефон, email). */
.gw-masked {
  font-family: var(--bs-font-monospace);
  letter-spacing: 0.02em;
}

/* Баннер деградации доставки — показывается над контентом дашборда. */
.gw-degraded {
  border-inline-start: 3px solid var(--bs-warning);
}

/* Секрет показывается ровно один раз; блок должен быть заметен. */
.gw-secret-reveal {
  font-family: var(--bs-font-monospace);
  word-break: break-all;
  user-select: all;
}
