.board-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  margin: 0 -24px 18px;
  padding: 4px 24px 16px;
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.board-head h1 { margin: 0; font-size: 24px; font-weight: 600; }
.board-head p { margin: 6px 0 0; color: var(--muted); font-size: var(--text-body); }
.board-head .org-switch { margin: 0; }
.plate { margin: 0 0 22px; padding: 0 0 16px; border: 1px solid transparent; }
.plate.project { background: #e7eef6; border-color: #c5d4e8; }
.plate.supervision { background: #f6efe4; border-color: #e4d3bc; }
.plate-title {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  margin: 0 0 14px;
  padding: 14px 18px;
  color: #fff;
}
.plate.project .plate-title { background: #163f78; }
.plate.supervision .plate-title { background: #8a4e24; }
.plate-title h2 { margin: 0; font-size: 24px; font-weight: 600; letter-spacing: 0.08em; }
.plate-title p { margin: 0; font-size: var(--text-body); color: rgba(255, 255, 255, 0.82); }
.plate-body { padding: 0 14px; display: grid; gap: 12px; }
.board-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.board-kpi { background: #fff; border: 1px solid rgba(16, 36, 64, 0.08); padding: 14px 14px 12px; min-height: 104px; }
.board-kpi span { display: block; color: var(--muted); font-size: var(--text-body); }
.board-kpi strong { display: block; margin-top: 8px; font-size: 28px; line-height: 1.1; font-weight: 600; letter-spacing: -0.03em; }
.board-kpi strong small { font-size: var(--text-body); font-weight: 600; }
.board-kpi em { display: block; margin-top: 8px; font-style: normal; color: #8a94a3; font-size: var(--text-body); }
.board-kpi.warn strong { color: #9a3412; }
.board-kpi.alert strong { color: #b91c1c; }
.board-grid { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 12px; }
.board-grid:has(> :only-child) { grid-template-columns: 1fr; }
.board-card { background: #fff; border: 1px solid rgba(16, 36, 64, 0.08); padding: 14px 16px 16px; }
.board-card h3 { margin: 0 0 12px; font-size: 20px; font-weight: 600; }
.board-card .hint { margin: 0 0 12px; color: #8a94a3; font-size: var(--text-body); }
.bar-row { display: grid; grid-template-columns: 4.5em 1fr auto; gap: 10px; align-items: center; margin: 9px 0; font-size: var(--text-body); }
.bar-track { height: 8px; background: #eef2f6; }
.bar-fill { height: 8px; }
.bar-row.status .bar-track,
.bar-row.status .bar-fill { height: 16px; }
.bar-fill.a { background: #64748b; }
.bar-fill.b { background: #163f78; }
.bar-fill.c { background: #6366f1; }
.bar-fill.d { background: #c2410c; }
.bar-fill.e { background: #b45309; }
.bar-fill.f { background: #047857; }
.bar-fill.g { background: #b91c1c; }
.bar-fill.s { background: #8a4e24; }
.board-orgs { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.board-org { border: 1px solid var(--line); padding: 12px; }
.board-org h4 { margin: 0 0 10px; font-size: 20px; }
.board-org dl { margin: 0; display: grid; gap: 6px; }
.board-org div { display: flex; justify-content: space-between; gap: 8px; font-size: var(--text-body); }
.board-org dt { color: var(--muted); }
.board-org dd { margin: 0; font-weight: 600; }
table.board-table { width: 100%; border-collapse: collapse; font-size: var(--text-body); }
table.board-table th { height: 50px; text-align: left; color: #5c6879; font-weight: 500; background: #fafbfd; border-bottom: 1px solid #edf0f5; padding: 0 8px; font-size: var(--text-body); }
table.board-table td { height: auto; min-height: 52px; border-bottom: 1px solid #edf0f5; padding: 12px 8px; vertical-align: middle; }
table.board-table tr:last-child td { border-bottom: 0; }
table.board-table a { color: var(--blue); text-decoration: none; }
table.board-table tr[data-go] { cursor: pointer; }
table.board-table tr[data-go]:hover { background: #f4f7fb; }
.board-days { color: #b91c1c; font-weight: 600; white-space: nowrap; }
.board-load, .board-scroll {
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: transparent transparent;
}
.board-load { display: grid; gap: 10px; max-height: 238px; }
.board-scroll { max-height: 325px; }
.board-scroll table.board-table { border-collapse: separate; border-spacing: 0; }
.board-scroll thead th { position: sticky; top: 0; z-index: 1; }
.board-load.scrolling, .board-scroll.scrolling { scrollbar-color: rgba(92, 104, 121, 0.72) transparent; }
.board-load::-webkit-scrollbar, .board-scroll::-webkit-scrollbar { width: 8px; }
.board-load::-webkit-scrollbar-track, .board-scroll::-webkit-scrollbar-track { background: transparent; }
.board-load::-webkit-scrollbar-thumb, .board-scroll::-webkit-scrollbar-thumb { background: transparent; border-radius: 4px; }
.board-load.scrolling::-webkit-scrollbar-thumb, .board-scroll.scrolling::-webkit-scrollbar-thumb { background: rgba(92, 104, 121, 0.72); }
.board-load-row { display: grid; grid-template-columns: 4.5em 1fr auto; gap: 8px; align-items: center; font-size: var(--text-body); }
.board-empty { margin: 0; color: #8a94a3; font-size: var(--text-body); }
@media (max-width: 1100px) {
  .board-kpis, .board-grid, .board-orgs { grid-template-columns: 1fr 1fr; }
  .board-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .board-head { margin-left: -16px; margin-right: -16px; padding-left: 16px; padding-right: 16px; flex-direction: column; align-items: stretch; }
  .board-kpis, .board-orgs { grid-template-columns: 1fr; }
  .plate-title { flex-direction: column; align-items: flex-start; gap: 4px; }
}
