/* This file should only contain the base resets needed, other theme configuration should exist within the theme provider */
:root {
  font-family: Roboto, system-ui, Avenir, Helvetica, Arial, sans-serif;
  line-height: 1.5;
  font-weight: 400;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* position: fixed; */
  bottom: 0;
  left: 0;
}

body {
  padding: 0;
  margin: 0;
  --removed-body-scroll-bar-size: 0px !important;
}

/* Override chakra's -webkit-block non-sense */
p {
  display: block !important;
}
/* Except for those that are actually multiline */
p.multiline-clamp {
  display: -webkit-box !important;
}

[data-is-android="true"] *::-webkit-scrollbar {
  -webkit-appearance: none;
}

/* Utility class to block pointer events of children */
.block-pointer-events * {
  pointer-events: none;
}

@media (hover: hover) {
  * {
    --sb-track-color: transparent;
    --sb-thumb-color: var(--chakra-colors-charcoal-300);
    --sb-size: 6px;
    --sb-border-size: 0px;
  }

  .styled-scrollbar::-webkit-scrollbar {
    width: var(--sb-size);
  }

  .styled-scrollbar::-webkit-scrollbar-track {
    background: var(--sb-track-color);
    border-radius: 50px;
  }

  .styled-scrollbar::-webkit-scrollbar-thumb {
    background: var(--sb-thumb-color);
    border-radius: 50px;
    background-clip: content-box;
    border: var(--sb-border-size) solid var(--sb-track-color);
  }

  .styled-scrollbar-hover::-webkit-scrollbar {
    width: var(--sb-size);
  }

  .styled-scrollbar-hover::-webkit-scrollbar-track {
    background: var(--sb-track-color);
    border-radius: 50px;
  }

  .styled-scrollbar-hover::-webkit-scrollbar-thumb {
    background: var(--sb-track-color);
    border-radius: 50px;
    background-clip: content-box;
    border: 16px solid var(--sb-track-color);
  }

  .styled-scrollbar-hover:hover::-webkit-scrollbar-thumb {
    background: var(--sb-thumb-color);
    border-radius: 50px;
    background-clip: content-box;
    border: var(--sb-border-size) solid var(--sb-track-color);
  }

  @supports not selector(::-webkit-scrollbar) {
    .styled-scrollbar {
      scrollbar-color: var(--sb-thumb-color) var(--sb-track-color);
    }
    .styled-scrollbar-hover {
      scrollbar-color: var(--sb-track-color) var(--sb-track-color);
    }
    .styled-scrollbar-hover:hover {
      scrollbar-color: var(--sb-thumb-color) var(--sb-track-color);
    }
  }
}

.thin-scrollbar {
  scrollbar-width: thin;
  scrollbar-color: transparent transparent;
}
.thin-scrollbar:hover {
  scrollbar-color: var(--chakra-colors-charcoal-300) transparent;
}
.thin-scrollbar::-webkit-scrollbar {
  height: 2px !important;
  background: transparent !important;
}
.thin-scrollbar::-webkit-scrollbar-track {
  background: transparent !important;
}
.thin-scrollbar::-webkit-scrollbar-thumb {
  background: transparent;
  border-radius: 2px;
}
.thin-scrollbar:hover::-webkit-scrollbar-thumb {
  background: var(--chakra-colors-charcoal-300);
}
.thin-scrollbar::-webkit-scrollbar-button {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* Breathing shimmer animation for image placeholders */
@keyframes shimmer {
  0% {
    background-position: -1000px 0;
  }
  100% {
    background-position: 1000px 0;
  }
}

/* Enhanced shimmer for Chakra Skeleton (used by Image component fallback) */
.chakra-skeleton {
  background: linear-gradient(
    90deg,
    rgba(48, 54, 61, 0.3) 0%,
    rgba(60, 68, 77, 0.5) 20%,
    rgba(72, 81, 92, 0.6) 50%,
    rgba(60, 68, 77, 0.5) 80%,
    rgba(48, 54, 61, 0.3) 100%
  ) !important;
  background-size: 1000px 100% !important;
  animation: shimmer 2s ease-in-out infinite !important;
}
