html{scroll-behavior:smooth}
header a,header span,header button{white-space:nowrap}
header>div:first-child{overflow:hidden}
header{transition:box-shadow .3s,background-color .3s}header.hdr-s{box-shadow:0 8px 24px -12px rgba(13,76,60,.35)}
.fx-bump{animation:fxb .45s ease}@keyframes fxb{40%{transform:scale(1.18)}}
.rvl{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.rvl.in{opacity:1;transform:none}
.acc-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s ease}.open>.acc-body{grid-template-rows:1fr}.acc-in{overflow:hidden}
.acc-ic{margin-inline-start:auto;transition:transform .3s}.open .acc-ic{transform:rotate(180deg)}
#storyModal:not(.hidden){animation:fxi .3s ease}@keyframes fxi{from{opacity:0}}
#storyModal:not(.hidden)>*{animation:fxs .4s cubic-bezier(.2,.7,.2,1)}@keyframes fxs{from{opacity:0;transform:scale(.94) translateY(14px)}}
#cart-items>*{animation:fxl .4s ease both}@keyframes fxl{from{opacity:0;transform:translateX(16px)}}
#cart-items>*:nth-child(2){animation-delay:.05s}#cart-items>*:nth-child(3){animation-delay:.1s}#cart-items>*:nth-child(n+4){animation-delay:.15s}
button:active{transition-duration:.1s}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rvl{opacity:1;transform:none}html{scroll-behavior:auto}}
html{scroll-padding-top:128px}
#mobileMenu{position:fixed;top:0;right:0;height:100%;width:18rem;max-width:80vw;background:#FAF9F6;box-shadow:-10px 0 40px rgba(0,0,0,.25);display:flex;flex-direction:column;padding:22px 18px;overflow-y:auto;transform:translateX(100%);visibility:hidden;transition:transform .3s ease,visibility 0s .3s;z-index:130}
#mobileMenu.open{transform:translateX(0);visibility:visible;transition:transform .3s ease,visibility 0s}
#mobileMenuOverlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:129;opacity:0;pointer-events:none;transition:opacity .3s ease}
#mobileMenuOverlay.open{opacity:1;pointer-events:auto}
.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding:2px 6px 18px;margin-bottom:10px;border-bottom:1px solid #00000012}
.mobile-menu-brand{color:#0D4C3C}
.mobile-menu-close{width:34px;height:34px;border-radius:50%;border:none;background:#f0eee8;color:#1c1c18;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease}.mobile-menu-close:hover{background:#ebe8e2}
.mobile-menu-links{display:flex;flex-direction:column;gap:2px}
.mobile-menu-links a{display:flex;align-items:center;gap:14px;padding:13px 10px;border-radius:14px;font-size:15px;font-weight:500;color:#1c1c18;transition:background .15s ease}
.mobile-menu-links a:hover,.mobile-menu-links a:active{background:#f0eee8}
.mobile-menu-links a .material-symbols-outlined{font-size:21px;color:#2D5A4A}
.mobile-menu-divider{height:1px;background:#00000012;margin:12px 4px}
.mobile-menu-account{display:flex;align-items:center;gap:14px;padding:13px 10px;border-radius:14px;color:#0D4C3C;font-weight:700;transition:background .15s ease}.mobile-menu-account:hover{background:#f0eee8}.mobile-menu-account .material-symbols-outlined{font-size:21px}
#mobileMenu.open .mobile-menu-links a{animation:menuItemIn .35s ease both}
#mobileMenu.open .mobile-menu-links a:nth-child(1){animation-delay:.02s}#mobileMenu.open .mobile-menu-links a:nth-child(2){animation-delay:.07s}#mobileMenu.open .mobile-menu-links a:nth-child(3){animation-delay:.12s}#mobileMenu.open .mobile-menu-links a:nth-child(4){animation-delay:.17s}#mobileMenu.open .mobile-menu-links a:nth-child(5){animation-delay:.22s}#mobileMenu.open .mobile-menu-links a:nth-child(6){animation-delay:.27s}
@keyframes menuItemIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.mobile-tabbar{display:none}
@media(max-width:820px){
.mobile-tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:90;background:rgba(250,249,246,.98);border-top:1px solid #00000012;padding:8px 6px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -8px 20px -12px rgba(13,76,60,.3)}
.mobile-tabbar a,.mobile-tabbar button{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;background:none;border:none;font-family:'Vazirmatn',sans-serif;font-size:11px;color:#404945;padding:6px 2px;cursor:pointer;transition:color .2s ease,transform .2s ease;position:relative}
.mobile-tabbar a::before,.mobile-tabbar button::before{content:'';position:absolute;top:0;left:50%;width:4px;height:4px;border-radius:50%;background:#2D5A4A;transform:translateX(-50%) scale(0);transition:transform .2s ease}
.mobile-tabbar a.active,.mobile-tabbar button.active{color:#0D4C3C}
.mobile-tabbar a.active::before,.mobile-tabbar button.active::before{transform:translateX(-50%) scale(1)}
.mobile-tabbar a.active svg,.mobile-tabbar button.active svg{transform:translateY(-1px)}
.mobile-tabbar svg{width:21px;height:21px;transition:transform .2s ease}
.mobile-tabbar a:active,.mobile-tabbar button:active{transform:scale(.9)}
.mobile-tabbar .tab-badge{position:absolute;top:0;left:50%;transform:translateX(6px);background:#0D4C3C;color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 3px}
body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
#toastNotification,#inst{bottom:calc(84px + env(safe-area-inset-bottom))!important}}
@media(max-width:639px){#hdr-acct{display:none}}

/* ===== product card (Beni-style) ===== */
#productsGrid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:24px!important}
@media(max-width:1024px){#productsGrid{grid-template-columns:repeat(2,1fr)!important}}
.pcard{position:relative;aspect-ratio:3/4.3;border-radius:26px;background:linear-gradient(160deg,#1f5f4c,#0D4C3C);color:#F4F1EB;cursor:pointer;box-shadow:0 10px 26px -12px rgba(13,76,60,.45);transition:transform .2s ease,box-shadow .2s ease}
.pcard:hover{transform:translateY(-6px);box-shadow:0 20px 36px -14px rgba(13,76,60,.55)}
.pcard:hover .product-image{transform:scale(1.07)}
.pcard:focus-visible{outline:3px solid #7AA05A;outline-offset:4px}
.product-media{position:absolute;inset:0;border-radius:inherit;overflow:hidden;z-index:0}
.product-media .product-icon{position:absolute;top:38%;left:50%;width:72px;height:72px;transform:translate(-50%,-50%);color:#F4F1EB;opacity:.35}
.pcard::before{content:"";position:absolute;inset:0;border-radius:inherit;z-index:1;background:linear-gradient(to top,rgba(6,32,26,.94) 0%,rgba(6,32,26,.7) 34%,rgba(6,32,26,0) 62%);pointer-events:none}
.pcard::after{content:"";position:absolute;inset:-7px;border-radius:32px;border:2px dashed #7AA05A;opacity:0;transform:scale(.94);transition:opacity .3s ease,transform .3s ease;pointer-events:none}
.pcard:hover::after{opacity:.65;transform:scale(1)}
.product-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#ebe8e2;transition:transform .45s ease}
.pcard .price{position:absolute;top:14px;right:14px;z-index:2;font-size:13px;font-weight:700;color:#0D4C3C;background:rgba(244,241,235,.9);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:999px;padding:8px 14px}
.fav-btn,.share-btn{position:absolute;top:14px;z-index:2;width:36px;height:36px;border-radius:50%;border:0;background:rgba(244,241,235,.88);color:#0D4C3C;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,transform .15s ease}
.fav-btn{left:14px}.share-btn{left:58px}
.fav-btn:hover,.share-btn:hover{background:#ebe8e2}.fav-btn:active{transform:scale(.9)}
.fav-btn.active{color:#ba1a1a}.fav-btn.active svg{animation:heartPop .38s ease}
@keyframes heartPop{0%{transform:scale(1)}35%{transform:scale(1.4)}100%{transform:scale(1)}}
.stock-badge{position:absolute;top:58px;right:14px;z-index:2;background:rgba(13,76,60,.9);color:#F4F1EB;font-size:11px;font-weight:600;padding:4px 12px;border-radius:999px}
.product-info{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:18px}
.pcard h3{font-size:18px;margin:0 0 6px;font-family:'Vazirmatn',sans-serif;font-weight:700;color:#fff;line-height:1.5}
.pcard p{font-size:13px;color:rgba(244,241,235,.8);margin:0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.add-to-cart{display:block;width:100%;background:#F4F1EB;color:#0D4C3C;border:none;margin-top:12px;padding:12px;border-radius:999px;font-family:'Vazirmatn',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease}
.add-to-cart:hover{background:#fff}.add-to-cart.added{background:#7AA05A;color:#fff}
@media(max-width:820px){
#productsGrid{display:flex!important;grid-template-columns:none!important;overflow-x:auto;gap:14px!important;padding:6px 4px 16px;scroll-snap-type:x mandatory;scrollbar-width:none}
#productsGrid::-webkit-scrollbar{display:none}
#productsGrid .pcard{min-width:72%;flex:0 0 auto;scroll-snap-align:center;opacity:.55;transform:scale(.92);transition:opacity .15s ease,transform .15s ease}
#productsGrid .pcard.in-view{opacity:1;transform:scale(1)}
#productsGrid .pcard::after{transition:none!important}}
input[type=password]::-ms-reveal,input[type=password]::-ms-clear{display:none}
