::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: #0d0d12; }
::-webkit-scrollbar-thumb { background: #6b21a8; border-radius: 6px; }
::-webkit-scrollbar-thumb:hover { background: #a855f7; }

.bx-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.bx-clamp-3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

.bx-logo-mark {
  background: linear-gradient(135deg, #a855f7, #22c55e);
  color: #0d0d12;
  font-weight: 900;
}

.bx-grid-glow {
  background-color: #111116;
  background-image:
    linear-gradient(rgba(168,85,247,0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(168,85,247,0.12) 1px, transparent 1px),
    radial-gradient(circle at 15% 20%, rgba(168,85,247,0.25), transparent 45%),
    radial-gradient(circle at 85% 80%, rgba(34,197,94,0.18), transparent 45%);
  background-size: 32px 32px, 32px 32px, 100% 100%, 100% 100%;
}

#bx-cookie-banner {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 999;
  background: #111116;
  border-top: 1px solid rgba(168,85,247,0.25);
}
#bx-cookie-banner.bx-hidden { display: none; }

.bx-cat-tile {
  transition: transform 0.15s ease, border-color 0.15s ease;
}
.bx-cat-tile:hover {
  transform: translateY(-3px);
}

.bx-copy-flash {
  animation: bx-flash 0.6s ease;
}
@keyframes bx-flash {
  0% { background-color: rgba(34, 197, 94, 0.35); }
  100% { background-color: transparent; }
}
