::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #f8fafc; }
::-webkit-scrollbar-thumb { background: #0f172a; border-radius: 6px; }
::-webkit-scrollbar-thumb:hover { background: #0d9488; }

.sh-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #0f172a;
  color: #f8fafc;
  font-weight: 700;
  border-radius: 6px;
  line-height: 1;
}

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

.sh-registry {
  column-gap: 3rem;
}
@media (min-width: 1024px) {
  .sh-registry { column-count: 2; }
}
.sh-entry {
  break-inside: avoid-column;
  -webkit-column-break-inside: avoid;
}
.sh-entry.sh-hide { display: none; }

.sh-tag-chip {
  transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}

.sh-related-card:hover img { transform: scale(1.03); }
.sh-related-card img { transition: transform .3s ease; }

#sh-cookie-banner {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 999;
  background: #ffffff;
  border-top: 2px solid #0f172a;
}
#sh-cookie-banner.sh-hidden { display: none; }
