:root {
  --primary:#16a34a;--primary-dark:#15803d;--primary-light:#dcfce7;
  --accent:#f59e0b;--radius-card:20px;--radius-pill:9999px;
  --glass-bg:rgba(255,255,255,0.12);--glass-bg-hover:rgba(255,255,255,0.22);
  --glass-border:rgba(255,255,255,0.25);--glass-shadow:0 8px 32px rgba(0,0,0,.10);
  --transition:all .28s cubic-bezier(.34,1.56,.64,1);
  --transition-fast:all .18s ease;
}
.glass{background:var(--glass-bg);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:var(--transition)}
.glass:hover{background:var(--glass-bg-hover);box-shadow:0 16px 48px rgba(0,0,0,.18);transform:translateY(-2px)}
.product-card-glass{background:#fff;border-radius:var(--radius-card);border:1px solid rgba(22,163,74,.08);box-shadow:0 2px 12px rgba(0,0,0,.06);transition:var(--transition);overflow:hidden;position:relative}
.product-card-glass::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.5) 0%,rgba(255,255,255,0) 60%);pointer-events:none;opacity:0;transition:opacity .3s;z-index:1}
.product-card-glass:hover{transform:translateY(-6px) scale(1.015);box-shadow:0 20px 48px rgba(22,163,74,.15),0 4px 12px rgba(0,0,0,.08);border-color:rgba(22,163,74,.2)}
.product-card-glass:hover::before{opacity:1}
.header-glass{background:rgba(255,255,255,.92);backdrop-filter:blur(20px) saturate(200%);-webkit-backdrop-filter:blur(20px) saturate(200%);border-bottom:1px solid rgba(22,163,74,.1);box-shadow:0 2px 20px rgba(0,0,0,.06)}
.btn-glass-primary{background:linear-gradient(135deg,#16a34a,#15803d);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-pill);padding:.65rem 1.5rem;font-weight:700;font-size:.875rem;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:.4rem;box-shadow:0 4px 16px rgba(22,163,74,.3)}
.btn-glass-primary:hover{box-shadow:0 8px 32px rgba(22,163,74,.4);transform:translateY(-2px) scale(1.02)}
.btn-glass-primary:active{transform:scale(.97)}
.nav-pill{background:rgba(255,255,255,.7);backdrop-filter:blur(12px);border:1px solid rgba(22,163,74,.12);color:#374151;border-radius:var(--radius-pill);padding:.4rem 1rem;font-size:.78rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:var(--transition-fast);text-decoration:none;display:inline-flex;align-items:center;gap:.3rem}
.nav-pill:hover,.nav-pill.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 4px 16px rgba(22,163,74,.25)}
.gradient-bg{background:linear-gradient(-45deg,#f0fdf4,#fefce8,#ecfdf5,#f0f9ff);background-size:400% 400%;animation:gradientShift 12s ease infinite}
@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:12px}
@keyframes shimmer{0%{background-position:200%}100%{background-position:-200%}}
.cat-card{background:rgba(255,255,255,.85);backdrop-filter:blur(12px);border:1px solid rgba(22,163,74,.08);border-radius:18px;transition:var(--transition);cursor:pointer;text-decoration:none;display:flex;flex-direction:column;align-items:center;padding:.75rem .5rem;gap:.4rem}
.cat-card:hover{background:var(--primary);border-color:var(--primary);transform:translateY(-4px) scale(1.04);box-shadow:0 12px 28px rgba(22,163,74,.25)}
.cat-card:hover .cat-emoji{filter:brightness(10)}
.cat-card:hover .cat-name{color:#fff}
.cat-name{font-size:.7rem;font-weight:600;color:#374151;text-align:center;line-height:1.2}
.weight-pill{background:rgba(22,163,74,.08);border:1.5px solid rgba(22,163,74,.2);border-radius:var(--radius-pill);padding:.35rem .875rem;font-size:.78rem;font-weight:600;color:#374151;cursor:pointer;transition:var(--transition-fast)}
.weight-pill:hover,.weight-pill.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 12px rgba(22,163,74,.3)}
.discount-badge{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:.65rem;font-weight:800;padding:.2rem .5rem;border-radius:var(--radius-pill)}
.new-badge{background:linear-gradient(135deg,#16a34a,#15803d);color:#fff;font-size:.65rem;font-weight:800;padding:.2rem .5rem;border-radius:var(--radius-pill)}
.bestseller-badge{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:.65rem;font-weight:800;padding:.2rem .5rem;border-radius:var(--radius-pill)}
.offer-card{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.6));backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.4);border-radius:20px;box-shadow:0 4px 24px rgba(0,0,0,.08);transition:var(--transition);overflow:hidden}
.offer-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.14)}
.trust-badge{background:rgba(255,255,255,.8);backdrop-filter:blur(12px);border:1px solid rgba(22,163,74,.12);border-radius:16px;padding:1rem;text-align:center;transition:var(--transition)}
.trust-badge:hover{border-color:rgba(22,163,74,.3);box-shadow:0 8px 24px rgba(22,163,74,.1);transform:translateY(-3px)}
.cart-bar-glass{background:rgba(22,163,74,.95);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.2);border-radius:20px;box-shadow:0 8px 32px rgba(22,163,74,.4),0 2px 8px rgba(0,0,0,.1)}
.bottom-nav-glass{background:rgba(255,255,255,.92);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid rgba(0,0,0,.06);box-shadow:0 -4px 24px rgba(0,0,0,.08)}
.input-glass{background:rgba(255,255,255,.7);backdrop-filter:blur(8px);border:1.5px solid rgba(0,0,0,.1);border-radius:14px;padding:.75rem 1rem;font-size:.9rem;outline:none;transition:var(--transition-fast);width:100%}
.input-glass:focus{border-color:var(--primary);background:rgba(255,255,255,.95);box-shadow:0 0 0 3px rgba(22,163,74,.12)}
.toast-glass{background:rgba(17,24,39,.9);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:var(--radius-pill);padding:.65rem 1.25rem;font-size:.84rem;font-weight:500;box-shadow:0 8px 24px rgba(0,0,0,.2)}
.ripple{position:relative;overflow:hidden}
.ripple::after{content:'';position:absolute;inset:50%;background:rgba(255,255,255,.35);border-radius:50%;transform:translate(-50%,-50%) scale(0);transition:transform .5s,opacity .5s;opacity:0}
.ripple:active::after{transform:translate(-50%,-50%) scale(3);opacity:1;transition:0s}
.hide-scroll::-webkit-scrollbar{display:none}
.hide-scroll{-ms-overflow-style:none;scrollbar-width:none}
.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes pulse-green{0%,100%{box-shadow:0 0 0 0 rgba(22,163,74,.4)}70%{box-shadow:0 0 0 8px rgba(22,163,74,0)}}
.pulse-green{animation:pulse-green 2s infinite}
.stars{color:#f59e0b}
