html, body {
  height: 100%;
  height: 100dvh; /* Dynamic viewport height for mobile */
}

body {
  margin: 0;
  padding: 0;
  /* Support for notch/safe areas on iOS */
  padding-top: env(safe-area-inset-top);
}

.root {
  display: flex;
  flex-direction: column;
  height: 100%;
  height: 100dvh; /* Dynamic viewport height for mobile */
}

/* Custom scrollbar styles */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.3);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.5);
}

/* For Firefox */
* {
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, 0.3) transparent;
}
