/* Site-wide mobile polish. Keeps desktop layout unchanged. */
html{
  overflow-x:hidden;
}

body{
  overflow-x:hidden;
}

img,
video,
canvas,
svg{
  max-width:100%;
}

input,
select,
textarea,
button{
  max-width:100%;
}

@media(max-width:1180px){
  .navbar{
    flex-wrap:wrap !important;
    gap:12px !important;
  }

  .navbar .nav-search,
  .nav-search{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    order:3 !important;
    flex:1 1 100% !important;
    width:100% !important;
    max-width:none !important;
    margin:4px 0 0 !important;
  }

  .nav-links,
  .nav-buttons{
    justify-content:center !important;
  }
}

@media(max-width:900px){
  .top-bar{
    font-size:14px !important;
    padding:10px 12px !important;
  }

  .navbar{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:12px 14px 14px !important;
    row-gap:10px !important;
    box-shadow:0 10px 26px rgba(59,25,25,.18) !important;
  }

  .logo{
    width:100% !important;
    text-align:center !important;
    font-size:22px !important;
    line-height:1.1 !important;
    letter-spacing:.2px !important;
  }

  .nav-links,
  .nav-buttons{
    width:100% !important;
    gap:8px !important;
    justify-content:center !important;
  }

  .nav-links a,
  .nav-buttons a{
    font-size:13px !important;
    white-space:nowrap !important;
    padding:9px 12px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.12) !important;
    backdrop-filter:blur(8px) !important;
    -webkit-backdrop-filter:blur(8px) !important;
  }

  .sale-bar{
    font-size:14px !important;
    padding:8px 0 !important;
  }

  .page,
  .wrap,
  .container,
  .account-container{
    width:100% !important;
    max-width:100% !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .hero,
  .hero-card,
  .checkout-layout,
  .cart-layout,
  .order-body,
  .main-grid,
  .admin-grid,
  .admin-layout,
  .stats-grid,
  .card-grid,
  .dashboard-grid,
  .profile-grid,
  .success-grid,
  .product-editor,
  .form-grid{
    grid-template-columns:1fr !important;
  }

  .product-grid,
  #allProductsGrid,
  #bestsellersGrid,
  #specialProductsGrid,
  #comboContainer{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:14px !important;
    padding-left:12px !important;
    padding-right:12px !important;
  }

  .product-card{
    min-width:0 !important;
    border-radius:18px !important;
    box-shadow:0 14px 34px rgba(41,22,22,.08) !important;
    border-color:rgba(122,61,61,.22) !important;
  }

  .account-hover-menu{
    right:0 !important;
    width:min(260px,calc(100vw - 28px)) !important;
  }

  .admin-nav,
  .admin-tabs,
  .tabs,
  .filter-tabs{
    display:flex !important;
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
    gap:8px !important;
    padding-bottom:4px !important;
    scrollbar-width:none;
  }

  .admin-nav::-webkit-scrollbar,
  .admin-tabs::-webkit-scrollbar,
  .tabs::-webkit-scrollbar,
  .filter-tabs::-webkit-scrollbar{
    display:none;
  }

  .admin-nav a,
  .admin-tabs button,
  .tabs button,
  .filter-tabs button{
    flex:0 0 auto !important;
    white-space:nowrap !important;
  }

  .modal,
  .modal-content,
  .product-summary-card{
    width:calc(100vw - 28px) !important;
    max-width:calc(100vw - 28px) !important;
  }

  #stickyCart{
    left:14px !important;
    right:14px !important;
    bottom:14px !important;
    justify-content:space-between !important;
    max-width:none !important;
    border-radius:18px !important;
    padding:12px 14px !important;
    box-shadow:0 18px 34px rgba(58,26,26,.28) !important;
  }
}

@media(max-width:640px){
  h1{
    font-size:clamp(28px, 9vw, 42px) !important;
    line-height:1.12 !important;
  }

  h2{
    font-size:clamp(24px, 7vw, 34px) !important;
  }

  .navbar{
    padding:10px 12px 12px !important;
  }

  .nav-links,
  .nav-buttons{
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
    justify-content:flex-start !important;
    padding:2px 0 4px !important;
    scrollbar-width:none;
  }

  .nav-links::-webkit-scrollbar,
  .nav-buttons::-webkit-scrollbar{
    display:none;
  }

  .nav-search input{
    height:44px !important;
    font-size:14px !important;
    border-radius:12px !important;
    padding-left:42px !important;
  }

  .nav-search-results{
    border-radius:16px !important;
  }

  .page-title{
    margin:20px 0 26px !important;
    padding:0 16px !important;
    font-size:clamp(30px,9vw,40px) !important;
    line-height:1.08 !important;
  }

  .product-grid,
  #allProductsGrid,
  #bestsellersGrid,
  #specialProductsGrid,
  #comboContainer{
    grid-template-columns:1fr !important;
    gap:16px !important;
    margin:0 auto 84px !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .product-card{
    height:auto !important;
    min-height:0 !important;
    padding:0 !important;
  }

  .product-img{
    height:auto !important;
    min-height:250px !important;
    padding:18px 8px 0 !important;
  }

  .product-img img{
    width:100% !important;
    max-width:100% !important;
  }

  .product-info{
    margin-top:8px !important;
    padding:0 2px 8px !important;
  }

  .product-title-row{
    margin:0 12px 2px !important;
    align-items:flex-start !important;
    gap:8px !important;
  }

  .product-card h3{
    font-size:18px !important;
    line-height:1.25 !important;
    padding-top:0 !important;
  }

  .size{
    font-size:14px !important;
    transform:none !important;
    margin-top:2px !important;
  }

  .product-bottom{
    margin:0 12px 2px !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:10px !important;
  }

  .left{
    width:100% !important;
    justify-content:space-between !important;
    align-items:center !important;
  }

  .price{
    font-size:24px !important;
  }

  .qty-box{
    gap:6px !important;
    font-size:15px !important;
  }

  .qty-btn{
    width:24px !important;
    height:24px !important;
    font-size:13px !important;
    line-height:24px !important;
  }

  .cart-btn{
    width:100% !important;
    border-radius:14px !important;
    padding:13px 16px !important;
    font-size:14px !important;
    transform:none !important;
  }

  .gallery-nav{
    width:28px !important;
    height:28px !important;
  }

  .swadra-category-footer{
    margin-top:28px !important;
    padding:28px 18px 34px !important;
  }

  .swadra-category-footer p{
    font-size:16px !important;
  }

  .product-summary-card{
    border-radius:18px !important;
    padding:18px !important;
  }

  .product-summary-head{
    align-items:flex-start !important;
  }

  .product-summary-head h3{
    font-size:22px !important;
  }

  #stickyCart{
    gap:10px !important;
  }

  #stickyCart a{
    padding:10px 14px !important;
    border-radius:12px !important;
    font-size:13px !important;
  }

  .action-row,
  .toolbar,
  .support-strip,
  .success-actions,
  .button-row,
  .form-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  .action-row button,
  .toolbar button,
  .toolbar a,
  .support-strip a,
  .support-strip button,
  .success-actions a,
  .success-actions button,
  .button-row button,
  .button-row a,
  .form-actions button,
  .form-actions a{
    width:100% !important;
  }

  .order-card,
  .cart-card,
  .checkout-card,
  .address-card,
  .profile-card,
  .card{
    border-radius:14px !important;
  }

  table{
    display:block !important;
    width:100% !important;
    overflow-x:auto !important;
  }
}
