/**
 * Critical mobile styles
 * Loaded inline to prevent layout shift on mobile devices
 */

/* Mobile-first responsive utilities */
@media (max-width: 640px) {
  .mobile-hidden {
    display: none !important;
  }
  
  .mobile-full-width {
    width: 100% !important;
  }
  
  .mobile-text-center {
    text-align: center !important;
  }
  
  .mobile-padding {
    padding: 1rem !important;
  }
  
  .mobile-margin {
    margin: 0.5rem !important;
  }
}

/* Touch target optimization */
@media (pointer: coarse) {
  button, 
  a, 
  [role="button"] {
    min-height: 44px;
    min-width: 44px;
  }
}

/* Prevent horizontal scroll */
html, body {
  overflow-x: hidden;
}

/* Mobile navigation improvements */
@media (max-width: 768px) {
  .nav-mobile {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 50;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
  }
  
  .nav-mobile.dark {
    background: rgba(0, 0, 0, 0.95);
  }
}

/* Loading states */
.fonts-loading {
  visibility: hidden;
}

.fonts-loaded {
  visibility: visible;
}
