/* ====== ОСНОВНЫЕ ЦВЕТА ====== 
:root {
  --orbis-blue: #194382;
}*/

body {
  background: #f5f6fa;
}

.badge.bg-danger,
.badge.bg-success {
  color: #fff !important;
}

/* Lighter badge color for secondary (gray) statuses */
.badge.bg-secondary {
  background-color: #c8ced3 !important;
  /* pale gray */
  color: #333 !important;
}

/* Lighter row colors for dashboard */
.table-success,
.table-success>td,
.table-success>th {
  background-color: #f0fdf0 !important;
  /* very pale green */
}

.table-secondary,
.table-secondary>td,
.table-secondary>th {
  background-color: #f8f9fa !important;
  /* very light gray */
}

/* === FORM VALIDATION === */
.is-invalid {
  border-color: #d93025 !important;
  background: #fff5f5 !important;
}

.error-box {
  background: #ffeaea;
  border: 1px solid #d93025;
  padding: 10px 14px;
  border-radius: 6px;
  margin-bottom: 12px;
  display: none;
  color: #b40000;
  font-size: 14px;
}

/* Фирменный цвет бренда */
.navbar-brand-title {
  font-weight: 700;
  color: var(--orbis-blue);
}

/* Главные цифры в линейной панели */
.big-number {
  font-size: 32px;
  font-weight: 600;
  color: var(--orbis-blue);
}

.delta {
  font-size: 22px;
  color: #d00;
}

.muted {
  color: #7c7c7c;
}

/* Sidebar active link */
.nav-link.active {
  background: #eef4ff !important;
  border-radius: 6px;
  color: var(--orbis-blue) !important;
}

/* Hover эффект для ссылок в Sidebar */
.nav-link:hover {
  background: #f5f8ff;
  border-radius: 6px;
}

/* Карточки — чуть мягче */
.card {
  border-radius: 10px;
}

/* Таблица */
.table th {
  font-weight: 600;
  color: #555;
}

.table-hover tbody tr:hover td,
.table-hover tbody tr:hover th {
  background: #f8faff;
}

/* Пагинация */
.page-link {
  border-radius: 6px !important;
}

/* Аватар */
.avatar {
  background-color: var(--orbis-blue);
  color: #fff;
}

/* Убираем жёсткие границы таблиц */
.table thead th {
  border-bottom: 1px solid #e5e7eb !important;
}

.table tbody td {
  border-bottom: 1px solid #bfbfbf !important;
}

.table a {
  text-decoration: underline !important;
  color: #206bc4 !important;
  font-weight: 600;
}

.statItem {
  cursor: pointer;
  padding: 12px;
  border-radius: 12px;
  background: #f6f8fa;
  font-size: 20px;
  transition: 0.2s;
}

/* Очень светло-синий фон карточки */
.stat-card {
  background: #eef5ff !important;
  /* пастельный голубой */
  border: 1px solid #dbe7ff;
  transition: 0.2s;
  cursor: pointer;
}

.stat-card:hover {
  background: #e0edff !important;
}

/* Активная карточка */
.stat-card.active {
  border-color: #7b1e1e !important;
  /* бордовый контур */
  box-shadow: 0 0 0 2px #7b1e1e55;
}

/* Большая цифра */
.big-number {
  font-size: 42px;
  font-weight: 700;
  color: #0a1a3d;
  /* тёмно-синий */
}

/* Цифра "в работе" (скобки) — бордовая */
.inwork-number {
  color: #9b1b1b;
  /* бордовый */
  font-weight: 700;
  margin-left: 4px;
}

/* Compact KPI for mobile */
.big-number-compact {
  font-size: 24px;
  font-weight: 700;
  color: #0a1a3d;
}

.inwork-number-compact {
  color: #9b1b1b;
  font-weight: 700;
  font-size: 18px;
  margin-left: 2px;
}

.stat-card-compact {
  background: #eef5ff !important;
  border: 1px solid #dbe7ff;
}

.col-hidden {
  display: none !important;
}

/* ====== HEADER STYLES ====== */
.header-bottom-border {
  border-bottom: 1px solid #eee;
}

.logo-img {
  height: 34px;
  width: 34px;
  border-radius: 6px;
}

.dropdown-menu-notif {
  width: 360px;
  max-height: 420px;
  overflow-y: auto;
}

/* Mobile: narrower notifications dropdown */
@media (max-width: 576px) {
  .dropdown-menu-notif {
    width: 90vw;
    max-width: 320px;
    max-height: 60vh;
  }
}

.notif-link-cursor {
  cursor: pointer;
}

.badge-notif {
  position: absolute;
  top: 6px;
  right: 0;
  font-size: 10px;
  display: none;
}

.avatar-profile-icon {
  width: 36px;
  height: 36px;
  background: none !important;
  border: none !important;
}

/* Mini Roadmap for Dashboard */
.mini-roadmap {
  position: relative;
  margin-top: 6px;
  height: 10px;
}

.rm-line {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  height: 4px;
  background: #e5e7eb;
  border-radius: 2px;
}

.rm-fill {
  height: 100%;
  background: linear-gradient(90deg, #34c759, #7ed993);
  border-radius: 2px;
  transition: width 0.3s ease;
}

.rm-dots {
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 1;
}

.rm-dot {
  width: 10px;
  height: 10px;
  background: #d1d5db;
  border-radius: 50%;
  transition: all 0.2s ease;
}

.rm-dot.done {
  background: #34c759;
}

.rm-dot.active {
  background: #007aff;
  transform: scale(1.2);
  box-shadow: 0 0 4px rgba(0, 122, 255, 0.5);
}

/* Full-Width Roadmap for Dashboard - Compact Rectangles */
.roadmap-row {
  background: transparent !important;
}

.roadmap-row td {
  border-top: none !important;
  padding-top: 0 !important;
  padding-bottom: 8px !important;
}

/* Remove bottom border from main row to merge with roadmap */
table.table tr.request-main-row td,
table.table tr.request-main-row th {
  border-bottom: 0px solid transparent !important;
}

/* Ensure no border on the row itself */
table.table tr.request-main-row {
  border-bottom: 0px solid transparent !important;
}

.rm-bar {
  display: flex;
  gap: 2px;
}

.rm-seg {
  flex: 1;
  text-align: center;
  font-size: 10px;
  padding: 3px 4px;
  background: #e9ecef;
  color: #6c757d;
  border-radius: 3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rm-seg.done {
  background: #d4edda;
  color: #155724;
}

.rm-seg.active {
  background: #007aff;
  color: #fff;
  font-weight: 600;
}

/* === HEADER STYLES (Duplicate block removed, keeping clean) === */