/* Rei Ayanami/NERV/EVA theme CSS variables */
:root {
  --rei-primary: #a997df;
  --rei-secondary: #7a77a6;
  --rei-lighter: #e2dcff;
  --rei-light: #c3b8e0;
  --rei-dark: #2a2a3d;
  --rei-darker: #1d1d2b;
  --rei-darkest: #15151f;
  --rei-danger: #df97a9;
  --rei-success: #7db89a;
  --rei-accent: #ffa6c1;
}

.rei-theme .card {
  background-color: var(--rei-darkest) !important;
  border: 1px solid var(--rei-dark) !important;
  border-radius: 0 !important;
}

.rei-theme .card-header {
  background: linear-gradient(90deg, var(--rei-dark), var(--rei-darker));
  border-bottom: 2px solid var(--rei-primary);
  padding: 0.75rem 1rem;
  border-radius: 0 !important;
}

.rei-theme .form-control,
.rei-theme .form-select {
  background-color: var(--rei-darker) !important;
  border: 1px solid var(--rei-dark) !important;
  color: var(--rei-lighter) !important;
  border-radius: 0 !important;
}

.rei-theme .form-control:focus,
.rei-theme .form-select:focus {
  border-color: var(--rei-primary) !important;
  box-shadow: 0 0 0 0.25rem rgba(169, 151, 223, 0.25) !important;
}

.rei-theme .btn {
  border-radius: 0 !important;
}

.rei-theme .btn-primary {
  background-color: var(--rei-dark) !important;
  border: 1px solid var(--rei-primary) !important;
  color: var(--rei-lighter) !important;
}

.rei-theme .btn-primary:hover {
  background-color: var(--rei-primary) !important;
  color: var(--rei-darkest) !important;
}

.rei-theme .btn-secondary {
  background-color: var(--rei-darker) !important;
  border: 1px solid var(--rei-secondary) !important;
  color: var(--rei-light) !important;
}

.rei-theme .form-check-input:checked {
  background-color: var(--rei-primary) !important;
  border-color: var(--rei-primary) !important;
}

.rei-theme .nerv-code {
  font-family: monospace;
  font-size: 10px;
  color: var(--rei-primary);
  opacity: 0.5;
}

.rei-theme .section-heading {
  color: var(--rei-light);
  font-weight: 400;
  letter-spacing: 0.7px;
  border-left: 3px solid var(--rei-primary);
  padding-left: 10px;
  font-size: 1.2rem;
}

.rei-theme .alert {
  border-radius: 0 !important;
}

.rei-theme .alert-success {
  background-color: rgba(125, 184, 154, 0.1);
  border-left: 4px solid var(--rei-success);
  color: var(--rei-success);
}

.rei-theme .alert-danger {
  background-color: rgba(184, 101, 125, 0.1);
  border-left: 4px solid var(--rei-danger);
  color: var(--rei-danger);
}

.rei-theme .alert-info {
  background-color: rgba(169, 151, 223, 0.1);
  border-left: 4px solid var(--rei-primary);
  color: var(--rei-light);
}

.rei-theme .table {
  color: var(--rei-light);
}

.rei-theme .table th {
  background-color: var(--rei-darker);
  color: var(--rei-primary);
  border: none !important;
}

.rei-theme .table td {
  background-color: var(--rei-darkest);
  border-color: var(--rei-dark) !important;
}

.rei-theme .table tr:hover td {
  background-color: rgba(169, 151, 223, 0.05);
}

.rei-theme .badge {
  border-radius: 0 !important;
}

.rei-theme .system-ready {
  display: flex;
  align-items: center;
}

.rei-theme .system-ready .dot {
  font-size: 8px;
  color: var(--rei-success);
  margin-right: 3px;
}

.rei-theme .system-ready .text {
  font-size: 10px;
  color: var(--rei-light);
  font-family: monospace;
  letter-spacing: 0.5px;
  opacity: 0.7;
}

.rei-theme .form-text {
  color: var(--rei-secondary);
  opacity: 0.8;
}

.rei-theme .invalid-feedback {
  color: var(--rei-danger) !important;
}

.rei-theme label {
  color: var(--rei-light);
  font-weight: 500;
  letter-spacing: 0.5px;
}

.rei-theme .action-buttons {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.rei-theme .action-buttons .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
}
