/* Scrollbar styles */
.theme-cyberpunk {
  --scroll-track: rgba(0, 255, 255, 0.05);
  --scroll-thumb-start: rgba(0, 255, 255, 0.8);
  --scroll-thumb-end: rgba(255, 0, 255, 0.8);
  --scroll-thumb-hover-start: rgba(0, 255, 255, 1);
  --scroll-thumb-hover-end: rgba(255, 0, 255, 1);
  --scroll-border: rgba(0, 255, 255, 0.3);
  --scroll-shadow: 0 0 10px rgba(0, 255, 255, 0.5);
  --scroll-shadow-hover: 0 0 20px rgba(0, 255, 255, 0.8);
  --scrollbar-color: rgba(0, 255, 255, 0.6);
}

.theme-hacker {
  --scroll-track: rgba(0, 255, 0, 0.05);
  --scroll-thumb-start: rgba(0, 255, 0, 0.8);
  --scroll-thumb-end: rgba(0, 255, 0, 0.5);
  --scroll-thumb-hover-start: rgba(0, 255, 0, 1);
  --scroll-thumb-hover-end: rgba(0, 255, 0, 0.7);
  --scroll-border: rgba(0, 255, 0, 0.3);
  --scroll-shadow: 0 0 10px rgba(0, 255, 0, 0.4);
  --scroll-shadow-hover: 0 0 20px rgba(0, 255, 0, 0.8);
  --scrollbar-color: rgba(0, 255, 0, 0.6);
}

.theme-cyberpunk ::-webkit-scrollbar,
.theme-hacker ::-webkit-scrollbar {
  width: 12px;
}

.theme-cyberpunk ::-webkit-scrollbar-track,
.theme-hacker ::-webkit-scrollbar-track {
  background: var(--scroll-track);
}

.theme-cyberpunk ::-webkit-scrollbar-thumb,
.theme-hacker ::-webkit-scrollbar-thumb {
  background: linear-gradient(to bottom, var(--scroll-thumb-start), var(--scroll-thumb-end));
  border-radius: 6px;
  border: 1px solid var(--scroll-border);
  box-shadow: var(--scroll-shadow);
}

.theme-cyberpunk ::-webkit-scrollbar-thumb:hover,
.theme-hacker ::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(to bottom, var(--scroll-thumb-hover-start), var(--scroll-thumb-hover-end));
  box-shadow: var(--scroll-shadow-hover);
}

/* Firefox scrollbar */
.theme-cyberpunk *,
.theme-hacker * {
  scrollbar-color: var(--scrollbar-color) var(--scroll-track);
  scrollbar-width: thin;
}
