/* Kinetic Obsidian Design System & Responsive Styles */

@layer base {
  html, body {
    margin: 0;
    padding: 0;
    background-color: #0c0e12;
    color: #e2e2e8;
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  }
  
  body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
}

/* Custom Sleek Scrollbar */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: #0c0e12;
}
::-webkit-scrollbar-thumb {
  background: #282a2e;
  border-radius: 9999px;
}
::-webkit-scrollbar-thumb:hover {
  background: #424754;
}

/* Typography Utility Classes */
.font-space {
  font-family: 'Space Grotesk', sans-serif;
}
.font-jakarta {
  font-family: 'Plus Jakarta Sans', sans-serif;
}
.font-mono-code {
  font-family: 'JetBrains Mono', monospace;
}

/* Glow & Ambient Effects */
.glow-primary {
  box-shadow: 0 0 24px -4px rgba(77, 142, 255, 0.45);
}
.glow-tertiary {
  box-shadow: 0 0 24px -4px rgba(76, 215, 246, 0.45);
}

/* Glassmorphism Surface Layer */
.glass-surface {
  background: rgba(26, 28, 32, 0.82);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

/* Mobile Navigation Drawer Animations */
#mobile-menu {
  transition: max-height 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.25s ease-in-out, transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}
#mobile-menu.menu-closed {
  max-height: 0;
  opacity: 0;
  transform: translateY(-8px);
  pointer-events: none;
}
#mobile-menu.menu-open {
  max-height: 480px;
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* Touch Target Accessibility (min 44px) */
@media (max-width: 768px) {
  .nav-touch-target {
    min-height: 44px;
    display: flex;
    align-items: center;
  }
}
