.core-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.core-overdue { color: #ad2535; font-weight: 600; }
.core-text { white-space: pre-wrap; overflow-wrap: anywhere; }
.core-grants { display: flex; flex-wrap: wrap; gap: 12px; }
.core-grants label { display: flex; align-items: center; gap: 5px; }
.core-grants input { width: auto; }
#core-body .card { margin-bottom: 20px; }
#core-body select[multiple] { min-height: 130px; }
#core-body td { overflow-wrap: anywhere; }
#core-body table { min-width: 640px; }
@media (max-width: 900px) {
  .core-page .sidebar { flex-direction: column; align-items: stretch; gap: 12px; }
  .core-page .nav { flex-wrap: wrap; }
  .core-page .topbar { flex-wrap: wrap; gap: 12px; padding: 14px 16px; }
}
