:root {
  --nurtrio-teal: #017e86;
  --nurtrio-teal-bright: #01a8b1;
  --nurtrio-teal-deep: #004f59;
  --nurtrio-orange: #f59a23;
  --nurtrio-gold: #f5c542;
  --nurtrio-ink: #18333a;
  --nurtrio-muted: #63747a;
  --nurtrio-stroke: rgba(1, 126, 134, .18);
  --nurtrio-panel: rgba(255, 255, 255, .86);
  --nurtrio-shadow: 0 18px 42px rgba(24, 51, 58, .08);
  --nurtrio-radius: 20px;
  --nurtrio-button-radius: 12px;
}

html, body {
  font-family: "Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  color: var(--nurtrio-ink);
}

body {
  letter-spacing: 0 !important;
}

.top-header {
  height: 64px !important;
  background: rgba(255, 255, 255, .80) !important;
  border-bottom: 1px solid var(--nurtrio-stroke) !important;
  box-shadow: 0 6px 20px rgba(24, 51, 58, .04) !important;
}

.top-nav a {
  color: var(--nurtrio-muted) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .03em !important;
}

.top-nav a.active,
.top-nav a:hover {
  color: var(--nurtrio-teal) !important;
}

.sidebar {
  background: rgba(255, 255, 255, .74) !important;
  border-right: 1px solid var(--nurtrio-stroke) !important;
}

.side-title,
.sidebar h2,
.brand-text {
  color: var(--nurtrio-teal-deep) !important;
  letter-spacing: .03em !important;
}

.side-nav a,
.nav a,
.nav-item {
  min-height: 44px !important;
  border-radius: var(--nurtrio-button-radius) !important;
  color: var(--nurtrio-muted) !important;
  font-weight: 800 !important;
}

.side-nav a.active,
.side-nav a:hover,
.nav a.active,
.nav a:hover,
.nav-item.active,
.nav-item:hover {
  background: rgba(1, 126, 134, .10) !important;
  color: var(--nurtrio-teal-deep) !important;
}

.logout {
  color: #bd3b33 !important;
}

.main,
main.main {
  color: var(--nurtrio-ink);
}

.hero h1,
.topbar h1,
h1 {
  color: var(--nurtrio-teal-deep) !important;
  letter-spacing: 0 !important;
}

.hero p,
.topbar p,
.subtitle,
.muted,
p {
  letter-spacing: 0 !important;
}

.back-link,
.button,
.button-link,
button,
.file-button,
.ghost-button {
  border-radius: var(--nurtrio-button-radius) !important;
  font-family: inherit !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

.back-link {
  background: rgba(255, 255, 255, .78) !important;
  color: var(--nurtrio-teal-deep) !important;
  border: 1px solid var(--nurtrio-stroke) !important;
  box-shadow: 0 10px 24px rgba(24, 51, 58, .06) !important;
}

.button,
.button-link,
button:not(.tab):not(.tab-btn):not([class*="secondary"]):not([class*="ghost"]):not([class*="danger"]) {
  background: var(--nurtrio-teal) !important;
  color: #fff !important;
  border-color: var(--nurtrio-teal) !important;
}

.button.secondary,
button.secondary,
.ghost-button {
  background: #fff !important;
  color: var(--nurtrio-teal-deep) !important;
  border: 1px solid var(--nurtrio-stroke) !important;
}

.button.danger,
button.danger {
  background: #d83b36 !important;
  color: #fff !important;
}

.hub-card,
.glass-card,
.panel,
.kpi-card,
.card,
.reminder-card,
.meeting-panel,
.health-score,
.narrative,
.headline-card,
.source-card {
  border-radius: var(--nurtrio-radius) !important;
  background: var(--nurtrio-panel) !important;
  border: 1px solid var(--nurtrio-stroke) !important;
  box-shadow: var(--nurtrio-shadow) !important;
  backdrop-filter: blur(20px) !important;
}

.hub-card h2,
.hub-card h3,
.glass-card h3,
.panel-header h2,
.panel-header h3,
.panel h2,
.panel h3 {
  color: var(--nurtrio-teal-deep) !important;
  letter-spacing: 0 !important;
}

.hub-card p,
.glass-card p,
.panel p,
.panel-header span,
.kpi-card span,
.card span {
  color: var(--nurtrio-muted) !important;
}

.accent-bar {
  border-radius: 999px !important;
}

.icon-tile {
  border-radius: 16px !important;
  background: rgba(1, 126, 134, .10) !important;
  color: var(--nurtrio-teal) !important;
}

.chip,
.pill,
.status-pill,
.score,
.score-band {
  border-radius: 999px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

input,
select,
textarea {
  border-radius: var(--nurtrio-button-radius) !important;
  border: 1px solid rgba(1, 126, 134, .18) !important;
  font-family: inherit !important;
  color: var(--nurtrio-ink) !important;
}

table {
  color: var(--nurtrio-ink);
}

th {
  color: var(--nurtrio-muted) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: .03em !important;
}

td strong {
  color: var(--nurtrio-teal-deep) !important;
}

.empty {
  color: var(--nurtrio-muted) !important;
}
