:root {
  --neon-green: #5df5a9;
  --neon-blue: #4dd4ff;
  --ink: #0b1021;
  --panel: #12182e;
  --text: #e8f1ff;
}

body {
  background: radial-gradient(circle at 10% 20%, rgba(77, 212, 255, 0.08), transparent 25%),
              radial-gradient(circle at 80% 0%, rgba(93, 245, 169, 0.08), transparent 20%),
              linear-gradient(145deg, #0b1021 0%, #0c1829 60%, #0b1021 100%);
  color: var(--text);
  font-family: 'Rajdhani', 'Segoe UI', system-ui, sans-serif;
  min-height: 100vh;
}

.navbar,
.navbar-nav .nav-link {
  color: var(--text) !important;
}

.navbar-brand,
.neon-text {
  font-family: 'Orbitron', 'Rajdhani', sans-serif;
  letter-spacing: 1px;
  color: var(--neon-green) !important;
}

.border-neon {
  box-shadow: 0 0 12px rgba(93, 245, 169, 0.45);
}

.card {
  background: rgba(18, 24, 46, 0.9);
  border: 1px solid rgba(93, 245, 169, 0.2);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(6px);
  color: var(--text);
}

/* 统一链接配色（按钮除外） */
a:not(.btn) {
  color: var(--neon-blue);
  text-decoration: none;
}
a:not(.btn):hover {
  color: var(--neon-green);
  text-decoration: underline;
}
.table a:not(.btn),
.link-light {
  color: var(--neon-blue) !important;
}
.table a:not(.btn):hover,
.link-light:hover {
  color: var(--neon-green) !important;
  text-decoration: underline;
}

.badge-neon {
  background: linear-gradient(120deg, var(--neon-green), var(--neon-blue));
  color: #0b1021;
  font-weight: 700;
}

/* 深色表单背景 + 高对比占位符 */
.form-control,
.form-select {
  background-color: #0f1a2a;
  color: var(--text);
  border-color: #214b68;
}
.form-control::placeholder {
  color: #9ec5e0;
  opacity: 0.85;
}

.glow-bar {
  height: 4px;
  width: 100%;
  background: linear-gradient(90deg, var(--neon-green), var(--neon-blue));
  box-shadow: 0 0 12px rgba(77, 212, 255, 0.6);
}

.stat-tile {
  border: 1px solid rgba(77, 212, 255, 0.25);
  background: linear-gradient(160deg, rgba(77, 212, 255, 0.12), rgba(93, 245, 169, 0.05));
}

.flash-stack .alert {
  border: 1px solid rgba(93, 245, 169, 0.3);
}

a {
  color: var(--neon-blue);
}

a:hover {
  color: var(--neon-green);
}

.text-muted {
  color: rgba(232, 241, 255, 0.7) !important;
}

.list-group-item {
  color: var(--text);
  background: transparent;
  border-color: rgba(93, 245, 169, 0.12);
}

.table {
  color: var(--text);
  --bs-table-striped-bg: rgba(255, 255, 255, 0.02);
}

.table thead th {
  border-color: rgba(93, 245, 169, 0.25);
  background: linear-gradient(120deg, rgba(77, 212, 255, 0.08), rgba(93, 245, 169, 0.05));
}

.table > :not(caption) > * > * {
  border-color: rgba(93, 245, 169, 0.12);
}

.form-control,
.form-select,
.btn {
  color: var(--text);
}

.form-select option {
  color: #0b1021;
}

.form-select,
.form-control {
  background-color: rgba(255, 255, 255, 0.08);
  border-color: rgba(93, 245, 169, 0.25);
}

input, select, textarea {
  background-color: rgba(255, 255, 255, 0.04);
  border-color: rgba(93, 245, 169, 0.15);
}

input:focus, select:focus, textarea:focus {
  border-color: var(--neon-blue);
  box-shadow: 0 0 0 0.2rem rgba(77, 212, 255, 0.25);
  color: var(--text);
}

.btn-outline-light, .btn-outline-info, .btn-outline-success {
  color: var(--text);
  border-color: rgba(93, 245, 169, 0.6);
}

.btn-outline-light:hover, .btn-outline-info:hover, .btn-outline-success:hover {
  background: linear-gradient(120deg, rgba(93,245,169,0.2), rgba(77,212,255,0.2));
  color: var(--text);
}

::placeholder {
  color: rgba(232, 241, 255, 0.7);
}

.badge {
  color: #0b1021;
}

.card h5, .card h4, .card h3 {
  color: var(--text);
}

.form-select:focus {
  background-color: rgba(255,255,255,0.1);
  color: var(--text);
}

.dropdown-menu {
  background: #0f162b;
  color: var(--text);
}

.dropdown-item {
  color: var(--text);
}

.dropdown-item:hover {
  background: rgba(77, 212, 255, 0.15);
  color: var(--text);
}

.filter-shell {
  background: linear-gradient(120deg, rgba(77, 212, 255, 0.12), rgba(93, 245, 169, 0.06));
  border: 1px solid rgba(93, 245, 169, 0.35);
  border-radius: 999px;
  padding: 6px 10px;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.35);
}

.filter-select {
  min-width: 200px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(93, 245, 169, 0.25);
  border-radius: 12px;
}

.btn-neon {
  background: linear-gradient(120deg, var(--neon-blue), var(--neon-green));
  color: #0b1021;
  border: none;
  font-weight: 700;
}

.btn-neon:hover {
  filter: brightness(1.05);
  color: #0b1021;
}
