/* Учёт выхода на линию грузового автопарка — кастомные стили */

:root {
  --plate-bg: #fff8e1;
  --plate-border: #d9c47a;
}

body {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* ── Госномер ─────────────────────────────────────────────────────────── */
.plate {
  display: inline-block;
  padding: .12rem .45rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-weight: 600;
  font-size: .9rem;
  letter-spacing: .04em;
  color: #212529;
  background: var(--plate-bg);
  border: 1px solid var(--plate-border);
  border-radius: .3rem;
  white-space: nowrap;
}

/* ── Карточки-счётчики ────────────────────────────────────────────────── */
.counter-card {
  transition: transform .12s ease, box-shadow .12s ease;
}

.counter-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .1) !important;
}

.counter-card .fs-3 {
  font-variant-numeric: tabular-nums;
}

.ring-active {
  outline: 2px solid #0d6efd;
  outline-offset: 1px;
}

/* ── Таблицы ──────────────────────────────────────────────────────────── */
.table > :not(caption) > * > * {
  vertical-align: middle;
}

thead.table-light th {
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .02em;
  color: #6c757d;
  white-space: nowrap;
}

/* ── Матрица истории ──────────────────────────────────────────────────── */
.history-scroll {
  max-height: 70vh;
  overflow: auto;
}

.history-table {
  font-size: .82rem;
}

.history-table .sticky-col {
  position: sticky;
  left: 0;
  z-index: 2;
  box-shadow: 1px 0 0 rgba(0, 0, 0, .08);
}

.history-table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
}

.history-table thead th.sticky-col {
  z-index: 3;
}

.status-cell {
  width: 100%;
  min-width: 26px;
  height: 26px;
  border-radius: .2rem;
  cursor: help;
}

.status-cell-empty {
  background-color: #f1f3f5;
  background-image: linear-gradient(135deg, transparent 45%, #dee2e6 45%, #dee2e6 55%, transparent 55%);
}

.legend-dot {
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 3px;
}

.legend-dot-empty {
  background-color: #f1f3f5;
  border: 1px solid #dee2e6;
}

/* ── Графики ──────────────────────────────────────────────────────────── */
.chart-box {
  position: relative;
  width: 100%;
}

.chart-empty {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #adb5bd;
  font-size: .9rem;
  pointer-events: none;
}

.nav-tabs .nav-link {
  color: #495057;
}

.nav-tabs .nav-link.active {
  font-weight: 600;
}

/* ── Печать ───────────────────────────────────────────────────────────── */
@media print {
  .navbar, footer, .btn, .nav-tabs {
    display: none !important;
  }

  .tab-pane {
    display: block !important;
    opacity: 1 !important;
  }
}
