/* লেআউট: ঘোষণা বার, হেডার, ফুটার, কার্ট ড্রয়ার, টোস্ট */
[hidden]{display:none!important}
.announce{background:var(--acc);color:#fff;text-align:center;font-weight:700;font-size:15px;padding:6px 12px}
.site-header{position:sticky;top:0;z-index:30;background:var(--dark);color:#fff;padding-top:env(safe-area-inset-top,0)}
.site-header .wrap{display:flex;align-items:center;gap:20px;min-height:64px}
.brand{font:800 24px var(--f-head);letter-spacing:1px;text-decoration:none;color:#fff;line-height:1}.brand b{color:var(--tan)}
.brand small{display:block;font:400 12px var(--f-script);letter-spacing:0;color:var(--tan);margin-top:3px}
.nav{display:flex;gap:26px;margin-inline:auto}.nav a{color:#eadfd2;text-decoration:none;font-weight:600;padding:8px 0;position:relative}
.nav a::after{content:"";position:absolute;left:0;bottom:2px;height:2px;width:0;background:var(--acc);transition:width .2s}.nav a:hover::after,.nav a[aria-current]::after{width:100%}
.icon-btn{position:relative;background:none;border:0;color:#fff;font-size:22px;min-width:46px;min-height:46px;cursor:pointer;border-radius:50%}
.icon-btn:hover{background:rgba(255,255,255,.1)}.badge{position:absolute;top:2px;right:0;background:var(--acc);color:#fff;font:800 12px var(--f-head);min-width:20px;height:20px;border-radius:99px;display:grid;place-items:center;padding:0 5px}
.badge.bump{animation:bump .4s}@keyframes bump{50%{transform:scale(1.5)}}
.burger{display:none}
@media (max-width:860px){.burger{display:block}.site-header .wrap{gap:6px}.brand{margin-right:auto}
 .nav{position:absolute;left:0;right:0;top:100%;background:var(--dark);flex-direction:column;gap:0;padding:6px 18px 14px;display:none;border-top:1px solid #3b2c21}.nav.open{display:flex}.nav a{padding:12px 0}}
.site-footer{background:var(--dark);color:#d9cbbd;padding:50px 0 0;margin-top:70px}
.f-cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr 1.3fr;gap:28px}
.site-footer h3{font-size:17px;color:var(--tan);margin-bottom:10px}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li,.site-footer p{margin:0 0 7px;font-size:16px}
.site-footer a{color:#d9cbbd;text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}
.f-brand .brand{display:block;margin-bottom:8px;font-size:26px}
.soc{display:flex;gap:10px;flex-wrap:wrap}.soc a{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;transition:.2s}
.soc a:hover{background:var(--acc);transform:translateY(-3px)}.soc svg{width:21px;height:21px;fill:#fff}
.copy{border-top:1px solid rgba(255,255,255,.14);margin-top:34px;padding:16px 0;text-align:center;font-size:14px;opacity:.85}
@media (max-width:1000px){.f-cols{grid-template-columns:1fr 1fr}}@media (max-width:560px){.f-cols{grid-template-columns:1fr}}
.wa{position:fixed;left:14px;bottom:calc(14px + env(safe-area-inset-bottom,0));z-index:25;display:flex;align-items:center;gap:8px;background:#25d366;color:#fff;text-decoration:none;font:800 15px var(--f-head);padding:11px 16px;border-radius:99px;box-shadow:0 10px 24px -8px rgba(0,0,0,.5)}
.wa:hover{filter:brightness(1.07)}@media (max-width:560px){.wa span{display:none}.wa{padding:13px}}
/* কার্ট ড্রয়ার (ডান পাশে) */
.scrim{position:fixed;inset:0;background:rgba(10,5,0,.55);z-index:40;opacity:0;pointer-events:none;transition:opacity .25s}.scrim.on{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);z-index:41;background:var(--card);color:var(--ink);display:flex;flex-direction:column;transform:translateX(105%);transition:transform .3s cubic-bezier(.2,.8,.2,1);box-shadow:-20px 0 50px -20px rgba(0,0,0,.6);padding-bottom:env(safe-area-inset-bottom,0)}
.drawer.on{transform:none}.drawer header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}.drawer h2{margin:0;font-size:20px}
.dr-body{flex:1;overflow:auto;padding:14px 18px}.dr-foot{border-top:1px solid var(--line);padding:14px 18px;display:grid;gap:10px}
.cart-line{display:flex;gap:12px;align-items:center;background:var(--soft);border-radius:14px;padding:8px 10px;margin-bottom:10px}.cart-line img{width:62px;flex:none;border-radius:8px}
.cart-line .d{min-width:0;flex:1}.cart-line b{display:block;overflow-wrap:anywhere;line-height:1.25}.cart-line small{color:var(--mut);display:block}
.qty{display:flex;align-items:center;gap:8px;margin-top:4px}.qty button{width:32px;height:32px;border-radius:50%;border:2px solid var(--line);background:var(--card);color:var(--ink);font-weight:800;cursor:pointer}.qty .rm{width:auto;border:0;background:none;color:var(--acc);text-decoration:underline;font:inherit;margin-left:4px}
.empty{text-align:center;color:var(--mut);padding:30px 10px}.empty .big{font-size:46px}
.progress{height:10px;background:var(--soft);border-radius:99px;overflow:hidden}.progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--tan),var(--acc));border-radius:99px;transition:width .4s}
.prog-note{font-size:14px;color:var(--mut);margin:0 0 6px}.row-total{display:flex;justify-content:space-between;font:800 20px var(--f-head)}
.toast{position:fixed;left:50%;bottom:calc(22px + env(safe-area-inset-bottom,0));transform:translate(-50%,20px);background:var(--dark);color:#fff;padding:10px 20px;border-radius:99px;opacity:0;pointer-events:none;transition:.25s;z-index:60;max-width:92vw;text-align:center}.toast.on{opacity:1;transform:translate(-50%,0)}
.confetti{position:fixed;inset:0;pointer-events:none;z-index:70}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s,transform .6s}.reveal.in{opacity:1;transform:none}
.drawer:not(.on){box-shadow:none;visibility:hidden;transition:transform .3s,visibility 0s .3s}
