/* Critical CSS for initial render */
body, html {
  margin: 0;
  padding: 0;
  background-color: rgb(10, 10, 10);
  color: #e5e7eb;
  height: 100%;
  width: 100%;
}

#root {
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.min-h-screen {
  min-height: 100vh;
}

.flex {
  display: flex;
}

.flex-col {
  flex-direction: column;
}

.fixed {
  position: fixed;
}

.bg-black {
  background-color: #000;
}

.bg-gray-900 {
  background-color: rgb(10, 10, 10);
}

.text-white {
  color: #fff;
}

.z-50 {
  z-index: 50;
}

.border-b {
  border-bottom-width: 1px;
}

.border-gray-800 {
  border-color: rgb(31 41 55);
}

/* iOS Safari fix */
@supports (-webkit-touch-callout: none) {
  body, html {
    height: 100%;
    min-height: 100%;
    background-color: rgb(10, 10, 10);
  }
  
  #root {
    height: 100%;
    overflow: hidden;
  }
}

/* Fix for iOS scrolling */
main {
  -webkit-overflow-scrolling: touch;
} 