header .bar {
  background: #c01212 !important;
  color: #fff !important;
  font-weight: 700;
  letter-spacing: 0.02em;
  animation: roast-pulse 1.6s ease-in-out infinite;
}

header .bar a {
  color: #ffe566 !important;
  text-decoration: underline;
}

.roast-status {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1080;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  background: #111;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  font-family: Ubuntu, sans-serif;
}

.roast-status .dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #ff2d2d;
  box-shadow: 0 0 0 0 rgba(255, 45, 45, 0.7);
  animation: roast-ping 1.2s infinite;
}

.roast-status .ok {
  background: #3ddc84;
}

.roast-crash {
  position: fixed;
  inset: 0;
  z-index: 20000;
  display: none;
  align-items: center;
  justify-content: center;
  background: #0b1a3a;
  color: #fff;
  text-align: center;
  font-family: Ubuntu, sans-serif;
}

.roast-crash.is-on {
  display: flex;
}

.roast-crash h2 {
  font-size: 42px;
  margin: 0 0 8px;
}

.roast-crash p {
  margin: 0;
  opacity: 0.85;
  font-size: 18px;
}

body {
  padding-bottom: 44px;
}

body.roast-glitch {
  animation: roast-shake 0.18s linear;
  filter: contrast(1.4) saturate(0.4) hue-rotate(180deg);
}

.home-slide h1,
.home-slide .font-l {
  text-shadow: 2px 0 #ff003c, -2px 0 #00f0ff;
}

.number-big-heading {
  color: #c01212 !important;
}

@keyframes roast-pulse {
  0%, 100% { filter: brightness(1); }
  50% { filter: brightness(1.25); }
}

@keyframes roast-ping {
  0% { box-shadow: 0 0 0 0 rgba(255, 45, 45, 0.55); }
  70% { box-shadow: 0 0 0 8px rgba(255, 45, 45, 0); }
  100% { box-shadow: 0 0 0 0 rgba(255, 45, 45, 0); }
}

@keyframes roast-shake {
  0%, 100% { transform: translate(0); }
  25% { transform: translate(-6px, 2px); }
  50% { transform: translate(5px, -3px); }
  75% { transform: translate(-3px, 1px); }
}
