.spotlight {
  --surface-luma: 0.95;
  position: relative;
  border-radius: var(--radius-xl);
  overflow: hidden;
  padding: 1.24rem;
  border: 1px solid rgba(168, 224, 247, 0.42);
  background:
    radial-gradient(980px 460px at -4% -24%, rgba(40, 180, 222, 0.12), transparent 66%),
    radial-gradient(760px 320px at 102% 0%, rgba(216, 176, 89, 0.09), transparent 72%),
    linear-gradient(182deg, rgba(255, 255, 255, 0.998), rgba(244, 250, 255, 0.992));
  box-shadow: 0 24px 56px rgba(5, 22, 35, 0.15);
}

.spotlight::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(580px 260px at 16% 24%, rgba(98, 220, 248, 0.12), transparent 72%),
    radial-gradient(500px 220px at 86% 74%, rgba(219, 182, 95, 0.08), transparent 74%),
    linear-gradient(122deg, rgba(218, 245, 255, 0.08), transparent 34%, rgba(219, 182, 95, 0.05));
  mix-blend-mode: screen;
  opacity: 0.16;
  animation: spotlight-drift 20s ease-in-out infinite alternate;
}

.spotlight > * {
  position: relative;
  z-index: 1;
}

.spotlight-inner {
  display: grid;
  gap: 1.12rem;
}

.spotlight-head {
  --surface-luma: 0.95;
  display: grid;
  gap: 0.34rem;
  max-width: 82ch;
  border-radius: 14px;
  border: 1px solid rgba(192, 239, 255, 0.38);
  background:
    radial-gradient(440px 190px at 0% 0%, rgba(62, 203, 239, 0.16), transparent 72%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.998), rgba(245, 251, 255, 0.992));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.84),
    0 10px 24px rgba(5, 22, 35, 0.12);
  padding: 0.92rem 0.96rem;
}

.spotlight-head .badge {
  justify-self: start;
  border-color: var(--smart-chip-border, rgba(165, 224, 249, 0.38));
  background: var(--smart-chip-bg, rgba(11, 67, 95, 0.68));
  color: var(--smart-chip-text, var(--smart-heading, rgba(224, 246, 255, 0.96)));
}

.spotlight-head h2 {
  margin: 0.08rem 0 0;
  max-width: 26ch;
}

.spotlight-head p {
  margin: 0;
  color: var(--smart-text, var(--module-text, rgba(239, 250, 255, 0.999)));
  line-height: 1.64;
  font-weight: 560;
  text-wrap: pretty;
}

.spotlight-grid {
  margin-top: 0.3rem;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}

.spotlight-card {
  --surface-luma: 0.95;
  position: relative;
  border-radius: 18px;
  border: 1px solid rgba(191, 238, 255, 0.46);
  background:
    radial-gradient(500px 250px at 0% -20%, rgba(57, 199, 237, 0.11), transparent 66%),
    linear-gradient(182deg, rgba(255, 255, 255, 0.998), rgba(246, 251, 255, 0.994));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.88),
    0 18px 44px rgba(5, 22, 35, 0.14);
  padding: 1rem;
  display: grid;
  gap: 0.62rem;
  transition:
    border-color var(--dur-med) var(--ease-out),
    transform var(--dur-med) var(--ease-out),
    box-shadow var(--dur-med) var(--ease-out),
    background-color var(--dur-med) var(--ease-out);
}

.spotlight-top {
  display: flex;
  align-items: center;
  gap: 0.52rem;
  flex-wrap: wrap;
}

.spotlight-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  border-radius: 15px 0 0 15px;
  background: linear-gradient(180deg, rgba(66, 210, 245, 0.92), rgba(22, 139, 178, 0.9));
  box-shadow: 0 0 0 1px rgba(163, 233, 255, 0.18);
}

.spotlight-card:nth-child(2)::before {
  background: linear-gradient(180deg, rgba(220, 180, 90, 0.92), rgba(171, 128, 46, 0.9));
}

.spotlight-card:nth-child(3)::before {
  background: linear-gradient(180deg, rgba(88, 222, 208, 0.92), rgba(36, 152, 143, 0.9));
}

.spotlight-card:nth-child(4)::before {
  background: linear-gradient(180deg, rgba(132, 196, 252, 0.92), rgba(65, 129, 214, 0.9));
}

.spotlight-card:hover {
  transform: translateY(-2px);
  border-color: rgba(114, 197, 229, 0.66);
  background: linear-gradient(182deg, rgba(255, 255, 255, 0.998), rgba(246, 251, 255, 0.994));
  box-shadow: 0 24px 56px rgba(5, 22, 35, 0.2);
}

@keyframes spotlight-drift {
  from {
    transform: translateY(-8px) scale(1);
  }
  to {
    transform: translateY(8px) scale(1.02);
  }
}

.spotlight-kicker {
  display: inline-flex;
  align-items: center;
  justify-self: start;
  border-radius: 999px;
  border: 1px solid var(--smart-chip-border, rgba(127, 201, 232, 0.34));
  background: var(--smart-chip-bg, rgba(10, 78, 112, 0.94));
  color: var(--smart-chip-text, var(--smart-heading, rgba(224, 246, 255, 0.97)));
  font-size: 0.82rem;
  font-weight: 770;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 0.22rem 0.56rem;
}

.spotlight-glyph {
  width: 2.14rem;
  height: 2.14rem;
  border-radius: 13px;
  border: 1px solid rgba(184, 236, 254, 0.46);
  background:
    radial-gradient(circle at 24% 18%, rgba(241, 252, 255, 0.82), transparent 58%),
    linear-gradient(156deg, rgba(68, 207, 245, 0.93), rgba(15, 119, 158, 0.95));
  box-shadow:
    inset 0 1px 0 rgba(228, 250, 255, 0.4),
    0 10px 24px rgba(2, 11, 20, 0.3);
  position: relative;
  --spotlight-icon-mask: none;
  transition: transform var(--dur-med) var(--ease-out), box-shadow var(--dur-med) var(--ease-out);
}

.spotlight-glyph::after {
  content: "";
  position: absolute;
  inset: -5px;
  border-radius: 14px;
  border: 1px solid rgba(201, 242, 255, 0.2);
  pointer-events: none;
}

.spotlight-card:nth-child(2) .spotlight-glyph {
  background:
    radial-gradient(circle at 28% 20%, rgba(255, 247, 226, 0.82), transparent 58%),
    linear-gradient(156deg, rgba(221, 181, 95, 0.94), rgba(165, 121, 44, 0.94));
  border-color: rgba(214, 181, 108, 0.44);
}

.spotlight-card:nth-child(3) .spotlight-glyph {
  background:
    radial-gradient(circle at 28% 20%, rgba(236, 250, 255, 0.82), transparent 58%),
    linear-gradient(156deg, rgba(86, 222, 209, 0.93), rgba(37, 152, 142, 0.94));
}

.spotlight-card:nth-child(4) .spotlight-glyph {
  background:
    radial-gradient(circle at 28% 20%, rgba(239, 250, 255, 0.82), transparent 58%),
    linear-gradient(156deg, rgba(130, 196, 252, 0.94), rgba(65, 128, 214, 0.94));
}

.spotlight-card:hover .spotlight-glyph {
  transform: translateY(-1px) scale(1.05);
  box-shadow:
    inset 0 1px 0 rgba(229, 250, 255, 0.42),
    0 14px 30px rgba(2, 11, 20, 0.36);
}

.spotlight-glyph::before {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  width: 0.88rem;
  height: 0.88rem;
  background: rgba(241, 252, 255, 0.98);
  -webkit-mask: var(--spotlight-icon-mask) center / contain no-repeat;
  mask: var(--spotlight-icon-mask) center / contain no-repeat;
}

.spotlight-glyph--operate {
  --spotlight-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 8a4 4 0 1 0 4 4 4 4 0 0 0-4-4Zm9 3h-2.1a7.9 7.9 0 0 0-.7-1.8l1.5-1.5-1.4-1.4-1.5 1.5a7.9 7.9 0 0 0-1.8-.7V5h-2v2.1a7.9 7.9 0 0 0-1.8.7L8.7 6.3 7.3 7.7l1.5 1.5a7.9 7.9 0 0 0-.7 1.8H6v2h2.1a7.9 7.9 0 0 0 .7 1.8l-1.5 1.5 1.4 1.4 1.5-1.5a7.9 7.9 0 0 0 1.8.7V19h2v-2.1a7.9 7.9 0 0 0 1.8-.7l1.5 1.5 1.4-1.4-1.5-1.5a7.9 7.9 0 0 0 .7-1.8H21Z'/%3E%3C/svg%3E");
}

.spotlight-glyph--build {
  --spotlight-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 4h18v4H3V4Zm0 6h8v10H3V10Zm10 0h8v4h-8v-4Zm0 6h8v4h-8v-4Z'/%3E%3C/svg%3E");
}

.spotlight-glyph--secure {
  --spotlight-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2 20 6v7c0 5-3.4 9.4-8 11-4.6-1.6-8-6-8-11V6l8-4Zm0 3.1L6.2 7.6V13c0 3.5 2.2 6.7 5.8 8.5 3.6-1.8 5.8-5 5.8-8.5V7.6L12 5.1Z'/%3E%3C/svg%3E");
}

.spotlight-glyph--connect {
  --spotlight-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 7h4v2H7a3 3 0 0 0 0 6h4v2H7a5 5 0 0 1 0-10Zm6 0h4a5 5 0 0 1 0 10h-4v-2h4a3 3 0 0 0 0-6h-4V7Zm-3 4h4v2h-4v-2Z'/%3E%3C/svg%3E");
}

.spotlight-title {
  margin: 0.12rem 0 0.1rem;
  color: var(--smart-heading, var(--module-heading, rgba(247, 253, 255, 0.999)));
  font-size: 1.3rem;
  line-height: 1.28;
  letter-spacing: -0.02em;
}

.spotlight-body {
  margin: 0;
  color: var(--smart-text, var(--module-text, rgba(240, 250, 255, 0.999)));
  font-size: 1.02rem;
  line-height: 1.66;
  font-weight: 560;
  text-wrap: pretty;
}

.spotlight-actions {
  margin-top: 0.56rem;
}

@media (max-width: 1120px) {
  .spotlight-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .spotlight {
    padding: 1.16rem 0.94rem;
  }

  .spotlight-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .spotlight::after {
    animation: none;
  }
}
