/* ==========================================================================
   Ride Sakhi - Mobile Responsive Stylesheet
   Breakpoints: 320px, 480px, 768px, 992px, 1200px
   ========================================================================== */

/* Extra Small Devices (Phones under 480px) */
@media (max-width: 480px) {
  html {
    font-size: 14px;
  }

  .sakhi-navbar-container {
    padding: 0 16px;
  }

  .navbar-brand img {
    height: 40px;
  }

  .sakhi-hero {
    padding: 110px 0 50px;
    text-align: center;
    min-height: auto;
  }

  .hero-title {
    font-size: 2.2rem;
    line-height: 1.15;
  }

  .hero-subtitle {
    font-size: 1rem;
    margin-left: auto;
    margin-right: auto;
  }

  .hero-ctas {
    justify-content: center;
    width: 100%;
  }

  .hero-ctas .btn-sakhi-primary,
  .hero-ctas .btn-sakhi-secondary {
    width: 100%;
    justify-content: center;
    padding: 13px 20px;
  }

  .section-padding {
    padding: 60px 0;
  }

  .section-title {
    font-size: 1.85rem;
  }

  .sakhi-booking-card {
    padding: 20px 16px;
  }

  .ride-type-selector {
    grid-template-columns: repeat(2, 1fr);
  }

  .trust-strip-grid {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 0 16px;
  }

  .trust-item {
    justify-content: flex-start;
  }

  .admin-sidebar {
    width: 260px;
  }

  .admin-content {
    padding: 16px;
  }

  .admin-stat-grid {
    grid-template-columns: 1fr;
  }

  .whatsapp-float-btn {
    bottom: 20px;
    right: 20px;
    width: 50px;
    height: 50px;
    font-size: 1.6rem;
  }
}

/* Small Devices (Landscape Phones & Small Tablets under 768px) */
@media (max-width: 767.98px) {
  .nav-links,
  .nav-actions .btn-sakhi-secondary,
  .nav-actions .btn-sakhi-icon-logout {
    display: none !important;
  }

  .mobile-nav-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .sakhi-hero .row {
    flex-direction: column-reverse;
  }

  .hero-floating-card {
    margin-bottom: 30px;
  }

  .table-responsive {
    border-radius: var(--radius-md);
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .admin-sidebar {
    position: fixed;
    top: 0;
    left: -100%;
    z-index: 1100;
    transition: left var(--transition-smooth);
    height: 100vh;
  }

  .admin-sidebar.open {
    left: 0;
  }

  .admin-main {
    margin-left: 0 !important;
    width: 100% !important;
  }

  .admin-stat-grid {
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 14px;
  }

  .admin-stat-card {
    padding: 16px;
  }
}

/* Medium Devices (Tablets under 992px) */
@media (max-width: 991.98px) {
  .nav-links {
    gap: 16px;
  }

  .nav-link-item {
    font-size: 0.88rem;
  }

  .section-padding {
    padding: 70px 0;
  }
}

/* Large Devices (Desktops 992px and up) */
@media (min-width: 992px) {
  .mobile-nav-toggle {
    display: none !important;
  }
}
