:root {
  --nervix-petroleo: #175D78;
  --nervix-teal: #1EA0A0;
  --nervix-ciano: #22D3EE;
  --nervix-navy: #0A1A26;
  --nervix-surface: #12283A;
  --nervix-branco: #FFFFFF;
  --nervix-glow: #22D3EE;
  --nervix-gradiente: linear-gradient(135deg, #1EA0A0 0%, #175D78 100%);
  --nervix-texto: #FFFFFF;
  --nervix-texto-suave: #B8C8D0;
  --nervix-texto-mute: #6B8090;
  --nervix-borda: #1E3A4C;
  --nervix-divisor: #12283A;
  --nervix-font: 'Inter', 'Segoe UI', system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
  --nervix-warning: #F59E0B;
  --nervix-sucesso: #22C55E;
  --nervix-perigo: #EF4444;
}

/* Alinha utilitários do Bootstrap aos tokens Nervix — 1 ponto para todo o app
   (corrige text-secondary apagado e o ciano/azul do .text-bg-info / .border-info). */
:root,
[data-bs-theme="dark"] {
  --bs-secondary-color: var(--nervix-texto-suave);
  --bs-tertiary-color: var(--nervix-texto-mute);
  --bs-info: var(--nervix-ciano);
  --bs-info-rgb: 34, 211, 238;
}

body {
  background: radial-gradient(1200px 600px at 70% 20%, #12283A, var(--nervix-navy));
  color: var(--nervix-texto);
  min-height: 100vh;
}

.nervix-brand {
  font-weight: 700;
  background: var(--nervix-gradiente);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.nervix-card {
  background: var(--nervix-surface);
  border: 1px solid var(--nervix-borda);
  border-radius: 12px;
  box-shadow: 0 0 16px rgba(34, 211, 238, 0.08);
}

.nervix-card-glow {
  border-color: var(--nervix-glow);
  box-shadow: 0 0 16px rgba(34, 211, 238, 0.35);
}

.btn-nervix {
  background: var(--nervix-gradiente);
  border: none;
  color: #fff;
  font-weight: 600;
}

.btn-nervix:hover {
  filter: brightness(1.08);
  color: #fff;
}

.form-control, .form-select {
  background: #0d1f2d;
  border-color: var(--nervix-borda);
  color: var(--nervix-texto);
}

.form-control:focus, .form-select:focus {
  background: #0d1f2d;
  border-color: var(--nervix-ciano);
  color: var(--nervix-texto);
  box-shadow: 0 0 0 0.2rem rgba(34, 211, 238, 0.2);
}

.table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--nervix-texto);
  --bs-table-border-color: var(--nervix-borda);
}

.alert {
  border-radius: 10px;
}

.nervix-simple-bg {
  min-height: 100vh;
  display: grid;
  place-items: center;
  background: radial-gradient(1200px 600px at 70% 30%, #12283A, var(--nervix-navy));
}

.nervix-simple-card {
  width: min(420px, 92vw);
  padding: 2rem;
  background: var(--nervix-surface);
  border: 1px solid var(--nervix-glow);
  border-radius: 16px;
  box-shadow: 0 0 16px rgba(34, 211, 238, 0.35);
}
