html, body {
  height: 100%;
  height: 100dvh; /* Dynamic viewport height for mobile */
  background-color: var(--theme-bg-color, #0a1929) !important; /* Dynamic theme color */
  color-scheme: var(--theme-color-scheme, dark); /* Set by AppThemeProvider per active theme */
}

body {
  margin: 0;
  padding: 0;
}

.root {
  display: flex;
  flex-direction: column;
  height: 100%;
  height: 100dvh; /* Dynamic viewport height for mobile */
  /* Extend behind the safe area on iOS */
  min-height: calc(100% + env(safe-area-inset-bottom, 0px));
  min-height: calc(100dvh + env(safe-area-inset-bottom, 0px));
}

/* 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;
}
