:root {
  --p: 0 0% 0%;
  --s: 0 0% 0%;
  --a: 0 0% 0%;
  --n: 0 0% 0%;
  --b1: 10 10% 4%;
  --b2: 10 10% 6%;
  --b3: 10 10% 8%;
  --bc: 0 0% 90%;
  --in: 217 91% 60%;
  --inc: 0 0% 100%;
  --su: 142 71% 45%;
  --suc: 0 0% 100%;
  --wa: 38 92% 50%;
  --wac: 0 0% 100%;
  --er: 0 84% 60%;
  --erc: 0 0% 100%;
  --rounded-box: 1rem;
  --rounded-btn: 0.5rem;
  --rounded-badge: 1.9rem;
  --animation-btn: 0.25s;
  --animation-input: 0.2s;
  --btn-focus-scale: 0.95;
  --border-btn: 1px;
  --tab-border: 1px;
  --tab-radius: 0.5rem;
}

body {
  background: linear-gradient(to bottom, #0A0A0A, #5C0000, #0A0A0A);
  min-height: 100vh;
}

@keyframes pulse-red {
  0%, 100% {
    opacity: 1;
    box-shadow: 0 0 0 0 rgba(139, 0, 0, 0.4);
  }
  50% {
    opacity: 0.95;
    box-shadow: 0 0 0 8px rgba(139, 0, 0, 0);
  }
}

.pulse-red {
  animation: pulse-red 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

/* Prevent blinking on role text and buttons */
.font-bold,
.btn {
  animation: none !important;
}

/* Only apply pulse to sacrifice card border, not content */
.pulse-red .card-body {
  animation: none;
}
