html,
body {
  scrollbar-color: #22d3ee #060b16;
  scrollbar-width: thin;
}

html.dunoyai-native-scroll-hidden,
body.dunoyai-native-scroll-hidden {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar {
  width: 12px;
}

html.dunoyai-native-scroll-hidden::-webkit-scrollbar,
body.dunoyai-native-scroll-hidden::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track {
  background:
    linear-gradient(180deg, #050914, #08111f),
    repeating-linear-gradient(180deg, rgba(34, 211, 238, 0.1) 0 1px, transparent 1px 18px);
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb {
  border: 3px solid #050914;
  border-radius: 999px;
  background:
    linear-gradient(180deg, #22d3ee, #2563eb 48%, #14b8a6),
    #22d3ee;
  box-shadow: inset 0 0 10px rgba(248, 250, 252, 0.22);
}

html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover {
  background:
    linear-gradient(180deg, #67e8f9, #3b82f6 48%, #2dd4bf),
    #67e8f9;
}

.dunoyai-tech-scroll {
  --scroll-progress: 0;
  position: fixed;
  top: clamp(92px, 12vh, 124px);
  right: max(8px, env(safe-area-inset-right));
  bottom: 28px;
  z-index: 55;
  width: 34px;
  opacity: 0;
  cursor: grab;
  pointer-events: none;
  touch-action: none;
  transform: translateX(12px);
  transition:
    opacity 220ms ease,
    transform 220ms ease;
}

body.dunoyai-tech-scroll-ready .dunoyai-tech-scroll {
  opacity: 0.92;
  pointer-events: auto;
  transform: translateX(0);
}

.dunoyai-tech-scroll:active,
.dunoyai-tech-scroll.is-dragging {
  cursor: grabbing;
}

.dunoyai-tech-scroll:focus-visible {
  outline: 2px solid rgba(103, 232, 249, 0.9);
  outline-offset: 5px;
  border-radius: 999px;
}

.dunoyai-tech-scroll::before {
  content: "";
  position: absolute;
  inset: 0 13px;
  border-inline: 1px solid rgba(34, 211, 238, 0.12);
  background:
    repeating-linear-gradient(180deg, rgba(34, 211, 238, 0.14) 0 1px, transparent 1px 18px),
    linear-gradient(180deg, rgba(8, 13, 24, 0), rgba(8, 13, 24, 0.78) 12%, rgba(8, 13, 24, 0.78) 88%, rgba(8, 13, 24, 0));
}

.dunoyai-tech-scroll__svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  filter: none;
}

.dunoyai-tech-scroll__track,
.dunoyai-tech-scroll__fill {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.dunoyai-tech-scroll__track {
  stroke: rgba(125, 211, 252, 0.2);
  stroke-width: 1.6;
}

.dunoyai-tech-scroll__fill {
  stroke: #22d3ee;
  stroke-width: 2.6;
  filter: none;
  transition: none;
}

.dunoyai-tech-scroll__core {
  stroke: rgba(248, 250, 252, 0.9);
  stroke-width: 0.75;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
  opacity: 0.76;
}

.dunoyai-tech-scroll__pad {
  position: absolute;
  right: 11px;
  width: 7px;
  height: 7px;
  border: 1px solid rgba(34, 211, 238, 0.3);
  border-radius: 2px;
  background: rgba(15, 23, 42, 0.92);
  box-shadow: 0 0 0 1px rgba(2, 6, 23, 0.66);
  transform: translateY(-50%) rotate(45deg);
  transition:
    background 120ms ease,
    border-color 120ms ease,
    box-shadow 120ms ease;
}

.dunoyai-tech-scroll__pad.is-active {
  border-color: rgba(103, 232, 249, 0.94);
  background: #22d3ee;
  box-shadow:
    0 0 8px rgba(34, 211, 238, 0.95),
    0 0 18px rgba(37, 99, 235, 0.58);
}

@media (prefers-reduced-motion: reduce) {
  .dunoyai-tech-scroll,
  .dunoyai-tech-scroll__fill,
  .dunoyai-tech-scroll__pad {
    transition: none;
  }
}

@media (max-width: 760px), (pointer: coarse) {
  .dunoyai-tech-scroll {
    display: none;
  }
}

/* Prisma editorial theme */
html,
body {
  scrollbar-color: #c98750 #0d100f;
}

html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track {
  background: #0d100f;
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb,
html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover {
  border-color: #0d100f;
  background: #c98750;
  box-shadow: none;
}

.dunoyai-tech-scroll:focus-visible {
  outline-color: rgba(201, 135, 80, 0.92);
}

.dunoyai-tech-scroll::before {
  border-inline-color: rgba(225, 224, 204, 0.12);
  background:
    repeating-linear-gradient(180deg, rgba(225, 224, 204, 0.11) 0 1px, transparent 1px 18px),
    linear-gradient(180deg, rgba(13, 16, 15, 0), rgba(13, 16, 15, 0.82) 12%, rgba(13, 16, 15, 0.82) 88%, rgba(13, 16, 15, 0));
}

.dunoyai-tech-scroll__svg {
  filter: none;
}

.dunoyai-tech-scroll__track {
  stroke: rgba(225, 224, 204, 0.2);
}

.dunoyai-tech-scroll__fill {
  stroke: #c98750;
  filter: none;
}

.dunoyai-tech-scroll__core {
  stroke: rgba(225, 224, 204, 0.86);
}

.dunoyai-tech-scroll__pad {
  border-color: rgba(225, 224, 204, 0.3);
  background: #0d100f;
  box-shadow: 0 0 0 1px rgba(5, 6, 6, 0.72);
}

.dunoyai-tech-scroll__pad.is-active {
  border-color: #e1e0cc;
  background: #c98750;
  box-shadow: 0 0 12px rgba(201, 135, 80, 0.62);
}
/* end Prisma editorial theme */
