:root {
  --app-bg: #08090C;
  --app-sidebar: #0D0F14;
  --app-card: #131720;
  --app-cardHover: #181D28;
  --app-border: #1A202C;
  --app-cyan: #00FFFF;
  --app-cyanHover: #33FFFF;
  --app-cyanDim: rgba(0, 255, 255, 0.12);
  --app-green: #00FF88;
  --app-text: #FFFFFF;
  --app-muted: #7E8B9B;
}

* {
  box-sizing: border-box;
}

html, body {
  height: 100%;
  height: 100dvh;
  height: -webkit-fill-available;
  width: 100%;
  overflow: hidden;
  margin: 0;
  padding: 0;
  position: fixed;
  inset: 0;
}

body {
  background-color: #08090C;
  color: var(--app-text);
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  -webkit-font-smoothing: antialiased;
}

/* Custom Minimalist Scrollbar matching demo.html */
::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: #1A202C;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #00FFFF;
}

/* Lucide Icons SVG display */
svg.lucide, i[data-lucide] {
  display: inline-block;
  vertical-align: middle;
  stroke: currentColor;
  flex-shrink: 0;
}

/* Animations */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

.animate-fade-in {
  animation: fadeIn 0.2s ease-out forwards;
}

/* Hide scrollbar utility */
.no-scrollbar::-webkit-scrollbar {
  display: none;
}
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
