@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
/* Shop Mobile — Mobile + Performance + UX Pack */
:root{
  --sm-radius-lg:22px;
  --sm-radius-md:16px;
  --sm-shadow-soft:0 18px 50px rgba(15,23,42,.10);
  --sm-ring:rgba(99,102,241,.28);
}
img{max-width:100%;height:auto;}
img[loading="lazy"]{content-visibility:auto;}
.sm-skeleton{position:relative;overflow:hidden;background:rgba(148,163,184,.14)!important;border-radius:inherit;}
.sm-skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);animation:smShimmer 1.2s infinite;}
@keyframes smShimmer{100%{transform:translateX(100%);}}
.sm-fade-in{animation:smFadeIn .22s ease both;}@keyframes smFadeIn{from{opacity:.25;transform:translateY(4px)}to{opacity:1;transform:none}}
.card,.stat-card,.metric-card,.dashboard-card,.settings-card,.checkout-card,.cart-card,.product-card,.store-product-card,.admin-card,.merchant-card{border-radius:var(--sm-radius-lg)!important;box-shadow:var(--sm-shadow-soft);}
button,a.btn,.btn,.checkout-btn,.cart-btn{transition:transform .18s ease, box-shadow .18s ease, filter .18s ease!important;}
button:hover,a.btn:hover,.btn:hover,.checkout-btn:hover,.cart-btn:hover{transform:translateY(-1px);filter:saturate(1.05);}
input,select,textarea{font-size:16px!important;}
input:focus,select:focus,textarea:focus{outline:none!important;box-shadow:0 0 0 4px var(--sm-ring)!important;}
/* Tables become cards on mobile */
@media(max-width:760px){
  table.responsive-table, .table-responsive table{border:0!important;width:100%!important;}
  table.responsive-table thead, .table-responsive table thead{display:none!important;}
  table.responsive-table tr, .table-responsive table tr{display:block!important;margin:0 0 14px!important;padding:12px!important;border:1px solid rgba(148,163,184,.22)!important;border-radius:18px!important;background:var(--sm-card,rgba(255,255,255,.86))!important;box-shadow:0 10px 30px rgba(15,23,42,.08)!important;}
  table.responsive-table td, .table-responsive table td{display:flex!important;justify-content:space-between!important;gap:14px!important;border:0!important;padding:9px 0!important;text-align:right!important;}
  table.responsive-table td:before, .table-responsive table td:before{content:attr(data-label);font-weight:800;color:var(--sm-muted,#64748b);text-align:left!important;}
  .hide-mobile{display:none!important;}
  .mobile-stack{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;}
  .mobile-full{width:100%!important;max-width:100%!important;}
  .mobile-sticky-action{position:sticky!important;bottom:12px!important;z-index:30!important;box-shadow:0 18px 45px rgba(0,0,0,.24)!important;}
}
/* Store UX */
.store-search,.shop-search,.product-search{position:relative;}
.store-search input,.shop-search input,.product-search input{padding-left:44px!important;border-radius:999px!important;}
.store-search:before,.shop-search:before,.product-search:before{content:'🔎';position:absolute;left:16px;top:50%;transform:translateY(-50%);opacity:.6;z-index:1;}
.favorite-btn,.sm-favorite{border:0;border-radius:999px;width:38px;height:38px;display:inline-grid;place-items:center;background:rgba(255,255,255,.88);box-shadow:0 10px 24px rgba(15,23,42,.12);cursor:pointer;}
.favorite-btn.is-active,.sm-favorite.is-active{color:#ef4444;background:#fff1f2;}
/* Checkout/cart mobile polish */
@media(max-width:860px){
  .checkout-layout,.cart-layout,.checkout-grid,.cart-grid{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;}
  .checkout-summary,.cart-summary,.order-summary{position:relative!important;top:auto!important;width:100%!important;}
  .checkout-actions,.cart-actions{position:sticky!important;bottom:0!important;padding:12px!important;margin:0 -12px!important;background:linear-gradient(180deg,transparent,var(--sm-bg,#fff) 28%)!important;z-index:20!important;}
}
/* Dark mode readability */
[data-theme="dark"] table.responsive-table tr,[data-theme="dark"] .table-responsive table tr{background:rgba(15,23,42,.86)!important;border-color:rgba(148,163,184,.22)!important;}
[data-theme="dark"] .sm-skeleton:after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);} 

*{font-family:'Inter',sans-serif !important;}
