/* Colours, page layout, sidebar, cards, badges, buttons */

:root {
  --teal: #852C87;
  --teal-light: #C33C91;
  --teal-pale: #fcf8fd;
  --red: #ef4444;
  --navy: #0f172a;
  --slate: #334155;
  --muted: #64748b;
  --border: #e2e8f0;
  --card: rgba(255, 255, 255, 0.7);
  --sidebar-w: 280px;
  --grad-bg: linear-gradient(135deg, #fdfafc 0%, #f5eef6 100%);
  --primary: #C33C91;
  --primary-hover: #b03282;
  --secondary: #F48B29;
  --secondary-hover: #e07c23;
  /* HFK logo mark, cut out of docs/assets/holistic-logo.jpg; the only copy in the file */
  --hfk-logo: url("data:image/webp;base64,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");
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: 'Inter', sans-serif;
  background: var(--grad-bg);
  background-attachment: fixed;
  color: var(--navy);
  min-height: 100vh;
}

h1,
h2,
h3,
.topbar-title {
  font-family: 'Outfit', sans-serif;
  letter-spacing: -0.02em;
}

#sidebar {
  position: fixed;
  left: 0;
  top: 0;
  width: var(--sidebar-w);
  height: 100vh;
  background: linear-gradient(180deg, #0f172a 0%, #1e293b 100%);
  box-shadow: 4px 0 24px rgba(0, 0, 0, 0.15);
  overflow-y: auto;
  z-index: 100;
  display: flex;
  flex-direction: column;
}

.hfk-logo {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  background: var(--hfk-logo) center / contain no-repeat;
}

.sidebar-logo {
  padding: 28px 24px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.sidebar-logo h1 {
  font-family: 'Outfit', sans-serif;
  font-size: 1.15rem;
  line-height: 1.2;
  font-weight: 700;
  background: linear-gradient(to right, var(--primary), var(--secondary));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.sidebar-logo span {
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.7rem;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.nav-section {
  padding: 16px 0 4px;
}

.nav-label {
  padding: 0 24px 8px;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.3);
}

.nav-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  margin: 4px 16px;
  border-radius: 8px;
  cursor: pointer;
  font-size: 0.85rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.6);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  border-left: none;
}

.nav-item:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
  transform: translateX(4px);
}

.nav-item.active {
  color: #fff;
  background: linear-gradient(90deg, rgba(20, 184, 166, 0.2) 0%, rgba(20, 184, 166, 0.05) 100%);
  margin-left: 20px;
  position: relative;
}

.nav-item.active::before {
  content: '';
  position: absolute;
  left: -20px;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--teal-light);
  border-radius: 0 4px 4px 0;
}

.nav-item .icon {
  width: 18px;
  text-align: center;
  font-size: 0.9rem;
}

#main {
  margin-left: var(--sidebar-w);
  min-height: 100vh;
}

.topbar {
  background: var(--card);
  border-bottom: 1px solid var(--border);
  padding: 14px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: sticky;
  top: 0;
  z-index: 50;
}

.topbar-title {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--navy);
}

.topbar-badge {
  background: var(--teal-pale);
  color: var(--teal);
  font-size: 0.72rem;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 20px;
  letter-spacing: 0.06em;
}

.content {
  padding: 28px 32px;
}

.stat-card,
.table-wrap,
.section-card,
.modal {
  background: var(--card);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.7);
  box-shadow: 0 10px 40px -10px rgba(0, 0, 0, 0.08);
  border-radius: 16px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.stat-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 15px 40px -10px rgba(0, 0, 0, 0.12);
}

.stat-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  flex-shrink: 0;
}

.stat-num {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
  color: var(--navy);
}

.stat-label {
  font-size: 0.78rem;
  color: var(--muted);
  font-weight: 500;
  margin-top: 3px;
}

.table-wrap {
  overflow: hidden;
}

table {
  width: 100%;
  border-collapse: collapse;
}

thead th {
  background: #f1f5f9;
  padding: 11px 16px;
  text-align: left;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  border-bottom: 1px solid var(--border);
}

tbody tr {
  border-bottom: 1px solid #f1f5f9;
  transition: background 0.12s;
}

tbody tr:hover {
  background: #f8fafc;
}

tbody tr:last-child {
  border-bottom: none;
}

tbody td {
  padding: 11px 16px;
  font-size: 0.84rem;
  color: var(--slate);
}

.clickable-row {
  cursor: pointer;
}

.clickable-row:hover td:first-child {
  color: var(--teal);
}

.badge {
  display: inline-block;
  padding: 2px 9px;
  border-radius: 20px;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.badge-green {
  background: #dcfce7;
  color: #15803d;
}

.badge-yellow {
  background: #fef9c3;
  color: #a16207;
}

.badge-red {
  background: #fee2e2;
  color: #b91c1c;
}

.badge-blue {
  background: #e0f2fe;
  color: #0369a1;
}

.status-pill {
  font-size: 0.72rem;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 6px;
  text-transform: capitalize;
}

.status-active {
  background: #f0fdf4;
  color: #16a34a;
  border: 1px solid #bbfcce;
}

.status-referred {
  background: #fefce8;
  color: #ca8a04;
  border: 1px solid #fef08a;
}

.status-inactive {
  background: #fff1f2;
  color: #e11d48;
  border: 1px solid #fecdd3;
}

.badge-gray {
  background: #f1f5f9;
  color: var(--muted);
}

.btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  border-radius: 10px;
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  border: none;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  font-family: 'Inter', sans-serif;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.btn:active {
  transform: translateY(0);
}

.btn-primary {
  background: linear-gradient(135deg, var(--primary), var(--primary-hover));
  color: #fff;
}

.btn-primary:hover {
  background: linear-gradient(135deg, var(--primary-hover), var(--primary));
}

.btn-secondary {
  background: #f1f5f9;
  color: var(--slate);
  border: 1px solid var(--border);
}

.btn-secondary:hover {
  background: #e2e8f0;
}

.btn-danger {
  background: #fee2e2;
  color: var(--red);
}

.btn-danger:hover {
  background: #fecaca;
}

.btn-sm {
  padding: 5px 11px;
  font-size: 0.76rem;
}
