/* Tech background layers */
.tech-noise {
  position: fixed;
  inset: 0;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="140" height="140" viewBox="0 0 140 140"><filter id="n"><feTurbulence type="fractalNoise" baseFrequency="0.8" numOctaves="2" stitchTiles="stitch"/></filter><rect width="100%" height="100%" filter="url(%23n)" opacity="0.03"/></svg>');
  pointer-events: none;
  z-index: 0;
}

.tech-grid {
  position: fixed;
  inset: 0;
  background-image: linear-gradient(
      to right,
      rgba(148, 163, 184, 0.08) 1px,
      transparent 1px
    ),
    linear-gradient(to bottom, rgba(148, 163, 184, 0.08) 1px, transparent 1px);
  background-size: 40px 40px, 40px 40px;
  mask-image: radial-gradient(
    ellipse at 50% 40%,
    rgba(0, 0, 0, 0.8),
    transparent 70%
  );
  z-index: 0;
}

.tech-radial {
  position: fixed;
  inset: 0;
  background: radial-gradient(
      900px 400px at 50% 10%,
      rgba(56, 189, 248, 0.15),
      transparent 60%
    ),
    radial-gradient(
      700px 300px at 80% 70%,
      rgba(167, 139, 250, 0.12),
      transparent 60%
    );
  filter: blur(0.5px);
  z-index: 0;
}

/* Countdown cards */
.time-card {
  flex: 1 1 0%;
  min-width: 120px;
  border-radius: 0.75rem; /* rounded-xl */
  border: 1px solid rgba(34, 211, 238, 0.2); /* cyan-400/20 */
  background: rgba(255, 255, 255, 0.05); /* white/5 */
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px); /* backdrop-blur-sm */
  padding: 1rem; /* p-4 */
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
  transition: border-color 200ms ease;
}
.time-card:hover {
  border-color: rgba(34, 211, 238, 0.4); /* hover:border-cyan-400/40 */
}
.time-value {
  font-weight: 600; /* font-semibold */
  letter-spacing: -0.01em; /* tracking-tight-ish */
  color: rgb(103, 232, 249); /* text-cyan-300 */
  text-shadow: 0 0 18px rgba(34, 211, 238, 0.25);
  font-size: 1.875rem; /* 3xl */
}
@media (min-width: 640px) {
  .time-value {
    font-size: 2.25rem;
  } /* 4xl */
}
@media (min-width: 768px) {
  .time-value {
    font-size: 3rem;
  } /* 5xl */
}
.time-label {
  margin-top: 0.25rem; /* mt-1 */
  font-size: 0.75rem; /* text-xs */
  text-transform: uppercase;
  letter-spacing: 0.15em; /* tracking-widest */
  color: rgb(148, 163, 184); /* text-slate-400 */
}

/* Prefer-reduced-motion: limit animations */
@media (prefers-reduced-motion: reduce) {
  #bar {
    transition: none !important;
  }
}
