/* ==========================================================================
   MANSUR STOREFRONT — store.css
   Clean, business/retail, white surface + orange accent (matches the suite).
   Mobile-first; desktop layered on with min-width media queries.
   ========================================================================== */

:root{
  --orange:#ea580c; --orange-600:#ea580c; --orange-700:#c2410c;
  --orange-soft:#fff4ed; --orange-grad:linear-gradient(135deg,#fb923c 0%,#ea580c 100%);
  --ink:#0f172a; --ink-2:#334155; --muted:#64748b; --muted-2:#94a3b8;
  --line:#e8edf3; --line-2:#eef2f7; --bg:#f6f8fb; --card:#ffffff;
  --ok:#16a34a; --warn:#d97706; --info:#2563eb; --danger:#dc2626;
  --r:14px; --r-sm:10px; --r-lg:20px;
  --sh-sm:0 1px 2px rgba(15,23,42,.06),0 1px 3px rgba(15,23,42,.05);
  --sh:0 4px 14px rgba(15,23,42,.07),0 2px 6px rgba(15,23,42,.05);
  --sh-lg:0 18px 50px rgba(15,23,42,.16);
  --hd-h:60px;
  --font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --disp:'Jost','Inter',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html{scroll-behavior:smooth;}
body{font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.5;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
input,select,textarea{font-family:inherit;font-size:16px;}
body.mn-lock{position:fixed;left:0;right:0;width:100%;overflow:hidden;}
.mn-wrap{max-width:1280px;margin:0 auto;padding:0 14px;}
@media(min-width:900px){.mn-wrap{padding:0 24px;}}

/* ---- buttons ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;
  font-weight:700;border-radius:var(--r-sm);padding:9px 14px;font-size:.86rem;
  transition:transform .12s ease,box-shadow .2s ease,background .2s ease;white-space:nowrap;}
.btn:active{transform:translateY(1px) scale(.99);}
.btn-primary{background:var(--orange-grad);color:#fff;box-shadow:0 4px 12px rgba(234,88,12,.24);}
.btn-primary:hover{box-shadow:0 6px 16px rgba(234,88,12,.32);}
.btn-ghost{background:#fff;color:var(--ink);border:1.5px solid var(--line);}
.btn-ghost:hover{border-color:var(--orange);color:var(--orange);}
.btn-wa{background:#25d366;color:#fff;box-shadow:0 4px 12px rgba(37,211,102,.24);}
.btn-block{width:100%;}
.btn-lg{padding:11px 16px;font-size:.92rem;}
.btn-sm{padding:7px 11px;font-size:.8rem;}
.btn[disabled]{opacity:.55;cursor:not-allowed;box-shadow:none;}

.pill{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:700;
  padding:3px 9px;border-radius:999px;letter-spacing:.2px;}
.pill-orange{background:var(--orange-soft);color:var(--orange-700);}
.pill-gray{background:#f1f5f9;color:var(--muted);}
.pill-ok{background:#ecfdf5;color:var(--ok);}
.pill-warn{background:#fffbeb;color:var(--warn);}
.pill-info{background:#eff6ff;color:var(--info);}

/* ========================= HEADER ========================= */
.mn-hd{position:sticky;top:0;z-index:120;background:rgba(255,255,255,.92);
  backdrop-filter:saturate(180%) blur(10px);-webkit-backdrop-filter:saturate(180%) blur(10px);
  border-bottom:1px solid var(--line);}
.mn-hd-bar{display:flex;align-items:center;gap:10px;height:var(--hd-h);}
.mn-burger{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;
  background:#fff;border:1px solid var(--line);flex:0 0 auto;}
.mn-burger svg{width:20px;height:20px;}
.mn-logo{display:flex;align-items:center;gap:9px;flex:0 1 auto;min-width:0;overflow:hidden;}
.mn-logo img{width:34px;height:34px;border-radius:8px;object-fit:contain;flex:0 0 auto;}
.mn-logo>span{display:flex;flex-direction:column;justify-content:center;min-width:0;overflow:hidden;}
.mn-logo b{font-family:var(--disp);font-weight:800;font-size:1.04rem;letter-spacing:-.2px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;min-width:0;}
.mn-logo b span{color:var(--orange);}
.mn-logo small{display:block;font-size:.62rem;color:var(--muted);font-weight:600;letter-spacing:.6px;text-transform:uppercase;}
.mn-hd-search{flex:1;display:none;align-items:center;gap:8px;background:#f1f5f9;
  border:1.5px solid transparent;border-radius:12px;padding:0 12px;height:42px;}
.mn-hd-search:focus-within{background:#fff;border-color:var(--orange);box-shadow:0 0 0 3px rgba(234,88,12,.12);}
.mn-hd-search input{flex:1;border:none;background:none;outline:none;height:100%;font-size:.92rem;}
.mn-hd-search svg{width:18px;height:18px;color:var(--muted);flex:0 0 auto;}
.mn-hd-actions{display:flex;align-items:center;gap:4px;margin-left:auto;flex:0 0 auto;padding-left:6px;}
.mn-icon-btn{position:relative;width:42px;height:42px;border-radius:11px;display:grid;place-items:center;
  background:#fff;border:1px solid var(--line);}
.mn-icon-btn svg{width:20px;height:20px;}
.mn-icon-btn .mn-count{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;
  padding:0 4px;border-radius:9px;background:var(--orange);color:#fff;font-size:.66rem;
  font-weight:800;display:grid;place-items:center;border:2px solid #fff;}
.mn-count.is-zero{display:none;}

/* mobile search overlay (expand) */
.mn-msearch{display:flex;align-items:center;gap:8px;padding:8px 0 12px;}
.mn-msearch input{flex:1;height:44px;border:1.5px solid var(--line);border-radius:12px;
  padding:0 14px;outline:none;background:#fff;}
.mn-msearch input:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(234,88,12,.12);}

/* category nav → horizontal scrolling CHIPS (mobile + desktop, quick-commerce style) */
.mn-catnav{display:block;border-top:1px solid var(--line-2);background:#fff;}
.mn-catnav-row{display:flex;align-items:center;gap:8px;padding:9px 0;overflow-x:auto;
  -ms-overflow-style:none;scrollbar-width:none;}
.mn-catnav-row::-webkit-scrollbar{display:none;}
.mn-catnav a{font-size:.8rem;font-weight:700;color:var(--ink-2);padding:7px 14px;border-radius:999px;
  white-space:nowrap;background:#f1f5f9;border:1px solid transparent;flex:0 0 auto;}
.mn-catnav a:hover,.mn-catnav a:first-child{background:var(--orange-soft);color:var(--orange-700);}

@media(min-width:900px){
  .mn-hd-search{display:flex;}
  .mn-burger{display:none;}
  #mnSearchToggle{display:none;}   /* full search bar is visible → drop the toggle icon */
  .mn-catnav{display:block;}
  .mn-msearch{display:none !important;}
}

/* ========================= DRAWER (mobile nav) ========================= */
.mn-scrim{position:fixed;inset:0;background:rgba(15,23,42,.5);z-index:200;opacity:0;
  pointer-events:none;transition:opacity .25s ease;}
.mn-scrim.open{opacity:1;pointer-events:auto;}
.mn-drawer{position:fixed;top:0;left:0;bottom:0;width:84%;max-width:340px;background:#fff;
  z-index:210;transform:translateX(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);
  display:flex;flex-direction:column;box-shadow:var(--sh-lg);}
.mn-drawer.open{transform:translateX(0);}
.mn-drawer-hd{display:flex;align-items:center;justify-content:space-between;padding:16px;
  border-bottom:1px solid var(--line);background:var(--orange-grad);color:#fff;}
.mn-drawer-hd b{font-family:var(--disp);font-size:1.1rem;font-weight:800;}
.mn-drawer-x{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.18);color:#fff;}
.mn-drawer-body{flex:1;overflow-y:auto;padding:8px 0;}
.mn-drawer-link{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;
  font-weight:600;font-size:.95rem;border-bottom:1px solid var(--line-2);}
.mn-drawer-link .chev{color:var(--muted-2);transition:transform .2s;}
.mn-drawer-link.exp .chev{transform:rotate(90deg);}
.mn-drawer-sub{display:none;background:#f8fafc;}
.mn-drawer-sub.show{display:block;}
.mn-drawer-sub a{display:block;padding:11px 18px 11px 34px;font-size:.88rem;color:var(--ink-2);border-bottom:1px solid var(--line-2);}
.mn-drawer-ft{padding:14px 18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px;}

/* ========================= HERO / BANNER ========================= */
.mn-hero{position:relative;border-radius:var(--r-lg);overflow:hidden;margin-top:14px;
  background:var(--orange-grad);color:#fff;box-shadow:var(--sh);}
.mn-hero-slides{position:relative;width:100%;aspect-ratio:16/7;min-height:170px;}
.mn-hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;
  opacity:0;transition:opacity .8s ease;}
.mn-hero-slide.active{opacity:1;}
.mn-hero-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;
  padding:22px;background:linear-gradient(90deg,rgba(15,23,42,.55) 0%,rgba(15,23,42,.05) 70%);}
.mn-hero-overlay h1{font-family:var(--disp);font-weight:800;font-size:1.5rem;line-height:1.12;max-width:60%;text-shadow:0 2px 12px rgba(0,0,0,.4);}
.mn-hero-overlay p{margin-top:8px;font-size:.9rem;opacity:.95;max-width:55%;}
.mn-hero-overlay .btn{margin-top:14px;align-self:flex-start;}
.mn-hero-arrow{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;
  background:rgba(255,255,255,.85);color:var(--ink);display:grid;place-items:center;z-index:3;box-shadow:var(--sh-sm);}
.mn-hero-arrow.prev{left:10px;} .mn-hero-arrow.next{right:10px;}
.mn-hero-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:3;}
.mn-hero-dots i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.55);cursor:pointer;}
.mn-hero-dots i.on{background:#fff;width:18px;border-radius:4px;}
@media(min-width:900px){
  .mn-hero-overlay h1{font-size:2.4rem;max-width:55%;}
  .mn-hero-overlay p{font-size:1.05rem;}
  .mn-hero-slides{aspect-ratio:21/7;}
}

/* ========================= SECTION HEADINGS ========================= */
.mn-sec{margin-top:30px;}
.mn-sec-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.mn-sec-hd h2{font-family:var(--disp);font-weight:800;font-size:1.25rem;letter-spacing:-.3px;}
.mn-sec-hd h2 small{display:block;font-family:var(--font);font-weight:500;font-size:.8rem;color:var(--muted);letter-spacing:0;text-transform:none;}
.mn-sec-hd a{font-size:.84rem;font-weight:700;color:var(--orange-700);display:inline-flex;align-items:center;gap:4px;}
@media(min-width:900px){.mn-sec-hd h2{font-size:1.6rem;}}

/* ========================= CATEGORY TILES ========================= */
/* auto-FILL (not auto-fit): with only a few categories the tiles stay compact
   instead of stretching to fill the whole row (which made them enormous). */
.mn-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;}
@media(min-width:700px){.mn-cat-grid{grid-template-columns:repeat(auto-fill,minmax(150px,170px));}}
@media(min-width:900px){.mn-cat-grid{gap:16px;}}
.mn-cat-tile{background:var(--card);border:1px solid var(--line);border-radius:var(--r);
  overflow:hidden;box-shadow:var(--sh-sm);transition:transform .18s ease,box-shadow .2s ease;}
.mn-cat-tile:hover{transform:translateY(-3px);box-shadow:var(--sh);}
.mn-cat-thumb{aspect-ratio:4/3;background:#fff;display:grid;place-items:center;overflow:hidden;}
.mn-cat-thumb img{width:100%;height:100%;object-fit:contain;}
.mn-cat-thumb .ph{font-size:1.8rem;}
.mn-cat-tile .meta{padding:10px 11px;}
.mn-cat-tile .meta b{font-size:.86rem;font-weight:700;display:block;line-height:1.25;}
.mn-cat-tile .meta span{font-size:.74rem;color:var(--muted);}

/* ========================= PRODUCT GRID / CARD ========================= */
.mn-prod-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
@media(min-width:620px){.mn-prod-grid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:980px){.mn-prod-grid{grid-template-columns:repeat(4,1fr);gap:18px;}}
.mn-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;
  display:flex;flex-direction:column;box-shadow:var(--sh-sm);transition:transform .18s ease,box-shadow .2s ease;position:relative;}
.mn-card:hover{transform:translateY(-3px);box-shadow:var(--sh);}
.mn-card-imgwrap{position:relative;aspect-ratio:1/1;background:#fff;overflow:hidden;}
.mn-card-imgwrap img{width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .35s ease;}
.mn-card-imgwrap img.loaded{opacity:1;}
.mn-card-imgwrap .shim{position:absolute;inset:0;background:linear-gradient(90deg,#eef2f7 25%,#e2e8f0 37%,#eef2f7 63%);
  background-size:400% 100%;animation:mnShim 1.4s ease infinite;}
.mn-card-imgwrap img.loaded ~ .shim{display:none;}
@keyframes mnShim{0%{background-position:100% 0;}100%{background-position:0 0;}}
.mn-card-badge{position:absolute;top:8px;left:8px;z-index:2;}
.mn-card-fav{position:absolute;top:8px;right:8px;z-index:2;width:32px;height:32px;border-radius:50%;
  background:rgba(255,255,255,.92);display:grid;place-items:center;box-shadow:var(--sh-sm);}
.mn-card-fav svg{width:17px;height:17px;color:var(--muted);}
.mn-card-fav.on svg{color:var(--orange);fill:var(--orange);}
.mn-card-body{padding:10px 11px 12px;display:flex;flex-direction:column;flex:1;}
.mn-card-brand{font-size:.68rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--orange-700);}
.mn-card-title{font-size:.86rem;font-weight:600;line-height:1.3;margin:3px 0 7px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.3em;}
.mn-card-price{margin-top:auto;}
.mn-card-price .now{font-weight:800;font-size:1rem;color:var(--ink);}
.mn-card-price .gst{font-size:.7rem;color:var(--muted);}
.mn-card-price .mrp{font-size:.76rem;color:var(--muted-2);text-decoration:line-through;margin-left:5px;}
.mn-card-add{margin-top:9px;width:100%;}

/* load more */
.mn-loadmore{display:flex;flex-direction:column;align-items:center;gap:6px;margin:22px 0 6px;}
.mn-loadmore .rem{font-size:.78rem;color:var(--muted);}

/* ========================= FOOTER ========================= */
.mn-ft{margin-top:48px;background:var(--ink);color:#cbd5e1;}
.mn-ft-grid{display:grid;grid-template-columns:1fr;gap:26px;padding:36px 0;}
@media(min-width:760px){.mn-ft-grid{grid-template-columns:1.4fr 1fr 1fr;}}
.mn-ft h4{color:#fff;font-family:var(--disp);font-weight:700;font-size:1rem;margin-bottom:12px;}
.mn-ft a{display:block;padding:5px 0;font-size:.88rem;color:#94a3b8;}
.mn-ft a:hover{color:#fff;}
.mn-ft p{font-size:.88rem;color:#94a3b8;margin-bottom:6px;}
.mn-ft-bottom{border-top:1px solid #1e293b;padding:16px 0;text-align:center;font-size:.78rem;color:#64748b;}
.mn-ft-social{display:flex;gap:10px;margin-top:12px;}
.mn-ft-social a{width:38px;height:38px;border-radius:10px;background:#1e293b;display:grid;place-items:center;padding:0;}
.mn-ft-social svg{width:18px;height:18px;color:#cbd5e1;}

/* ========================= FLOATING WHATSAPP ========================= */
.mn-wa-fab{position:fixed;right:16px;bottom:18px;z-index:90;width:54px;height:54px;border-radius:50%;
  background:#25d366;display:grid;place-items:center;box-shadow:0 10px 28px rgba(37,211,102,.45);}
.mn-wa-fab svg{width:28px;height:28px;color:#fff;}
@media(min-width:900px){.mn-wa-fab{width:60px;height:60px;}}

/* ========================= TOAST ========================= */
#mnToast{position:fixed;left:0;right:0;bottom:84px;margin:0 auto;width:fit-content;max-width:92vw;box-sizing:border-box;transform:translateY(20px);z-index:400;
  background:var(--ink);color:#fff;padding:12px 18px;border-radius:12px;font-size:.88rem;font-weight:600;
  box-shadow:var(--sh-lg);opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease;text-align:center;}
#mnToast.show{opacity:1;transform:translateY(0);}
#mnToast.ok{background:#15803d;} #mnToast.err{background:#b91c1c;}

/* ========================= SKELETON / EMPTY / SPINNER ========================= */
.mn-skel{background:linear-gradient(90deg,#eef2f7 25%,#e2e8f0 37%,#eef2f7 63%);
  background-size:400% 100%;animation:mnShim 1.4s ease infinite;border-radius:var(--r);}
.mn-empty{text-align:center;padding:48px 20px;color:var(--muted);}
.mn-empty .ico{font-size:2.4rem;margin-bottom:10px;}
.mn-spin{width:34px;height:34px;border:3px solid var(--line);border-top-color:var(--orange);border-radius:50%;animation:mnRot 1s linear infinite;margin:30px auto;}
@keyframes mnRot{to{transform:rotate(360deg);}}

/* top progress bar (page-load smoothness) */
#mnTop{position:fixed;top:0;left:0;height:3px;width:0;z-index:500;background:var(--orange-grad);
  transition:width .25s ease,opacity .4s ease;box-shadow:0 0 8px rgba(234,88,12,.6);}

/* ========================= BREADCRUMB ========================= */
.mn-bc{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:.8rem;color:var(--muted);margin:14px 0 6px;}
.mn-bc a:hover{color:var(--orange-700);}
.mn-bc .sep{color:var(--muted-2);}
.mn-bc b{color:var(--ink);font-weight:700;}

/* ========================= SHOP LAYOUT ========================= */
.mn-shop{display:block;margin-top:8px;}
.mn-shop-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;flex-wrap:wrap;}
.mn-shop-top h1{font-family:var(--disp);font-weight:800;font-size:1.3rem;}
.mn-shop-top .cnt{font-size:.82rem;color:var(--muted);font-weight:600;}
.mn-shop-tools{display:flex;align-items:center;gap:8px;margin-left:auto;}
.mn-sort{height:40px;border:1.5px solid var(--line);border-radius:10px;padding:0 12px;background:#fff;font-size:.85rem;font-weight:600;outline:none;}
.mn-filter-btn{display:inline-flex;}
@media(min-width:980px){.mn-filter-btn{display:none;}}

.mn-shop-body{display:block;}
@media(min-width:980px){
  .mn-shop-body{display:grid;grid-template-columns:268px 1fr;gap:26px;align-items:start;}
}

/* facets */
.mn-facets{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:6px 0;box-shadow:var(--sh-sm);}
.mn-facet{border-bottom:1px solid var(--line-2);}
.mn-facet:last-child{border-bottom:none;}
.mn-facet-hd{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;font-weight:700;font-size:.92rem;cursor:pointer;}
.mn-facet-hd .chev{color:var(--muted-2);transition:transform .2s;}
.mn-facet.collapsed .chev{transform:rotate(-90deg);}
.mn-facet-body{padding:2px 16px 14px;}
.mn-facet.collapsed .mn-facet-body{display:none;}
.mn-facet-opt{display:flex;align-items:center;gap:9px;padding:6px 0;font-size:.86rem;cursor:pointer;color:var(--ink-2);}
.mn-facet-opt input{width:16px;height:16px;accent-color:var(--orange);flex:0 0 auto;}
.mn-facet-opt .nm{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mn-facet-opt .ct{font-size:.74rem;color:var(--muted-2);}
.mn-price-row{display:flex;align-items:center;gap:8px;margin-top:4px;}
.mn-price-row input{width:100%;height:38px;border:1.5px solid var(--line);border-radius:9px;padding:0 10px;outline:none;font-size:.85rem;}
.mn-price-row input:focus{border-color:var(--orange);}
.mn-chip{display:inline-flex;align-items:center;gap:6px;background:var(--orange-soft);color:var(--orange-700);
  font-size:.78rem;font-weight:700;padding:5px 10px;border-radius:999px;margin:0 6px 6px 0;}
.mn-chip button{color:var(--orange-700);font-weight:900;line-height:1;}
.mn-applied{margin-bottom:10px;}

/* facets as mobile bottom-sheet */
@media(max-width:979px){
  .mn-facets-wrap{position:fixed;inset:0;z-index:230;background:rgba(15,23,42,.5);opacity:0;pointer-events:none;transition:opacity .25s;}
  .mn-facets-wrap.open{opacity:1;pointer-events:auto;}
  .mn-facets{position:absolute;left:0;right:0;bottom:0;max-height:84vh;overflow-y:auto;border-radius:18px 18px 0 0;
    transform:translateY(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);padding-bottom:80px;}
  .mn-facets-wrap.open .mn-facets{transform:translateY(0);}
  .mn-facets-hd{position:sticky;top:0;background:#fff;display:flex;align-items:center;justify-content:space-between;
    padding:14px 16px;border-bottom:1px solid var(--line);z-index:2;}
  .mn-facets-hd b{font-family:var(--disp);font-size:1.1rem;}
  .mn-facets-apply{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:12px 16px;display:flex;gap:10px;}
}
@media(min-width:980px){.mn-facets-hd,.mn-facets-apply{display:none;}}

/* ========================= PDP ========================= */
.mn-pdp{display:block;margin-top:8px;}
@media(min-width:900px){.mn-pdp{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start;}}
.mn-gallery .main{aspect-ratio:1/1;background:#f3f5f9;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;position:relative;}
.mn-gallery .main img{width:100%;height:100%;object-fit:contain;cursor:zoom-in;}
.mn-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.9);display:grid;place-items:center;box-shadow:var(--sh-sm);z-index:2;}
.mn-gallery-arrow.prev{left:8px;}.mn-gallery-arrow.next{right:8px;}
.mn-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;padding-bottom:4px;}
.mn-thumbs img{width:62px;height:62px;flex:0 0 auto;border-radius:9px;object-fit:contain;background:#fff;border:2px solid var(--line);cursor:pointer;}
.mn-thumbs img.on{border-color:var(--orange);}
.mn-pdp-info{margin-top:18px;}
@media(min-width:900px){.mn-pdp-info{margin-top:0;}}
.mn-pdp-brand{font-size:.76rem;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--orange-700);}
.mn-pdp-info h1{font-family:var(--disp);font-weight:800;font-size:1.5rem;line-height:1.2;margin:5px 0 12px;}
.mn-pdp-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.mn-pdp-price .now{font-size:1.7rem;font-weight:800;}
.mn-pdp-price .mrp{font-size:1rem;color:var(--muted-2);text-decoration:line-through;}
.mn-pdp-price .gst{font-size:.82rem;color:var(--muted);}
.mn-pdp-note{font-size:.8rem;color:var(--muted);background:#f8fafc;border:1px dashed var(--line);border-radius:10px;padding:9px 12px;margin:12px 0;}
.mn-qtyrow{display:flex;align-items:center;gap:14px;margin:16px 0;}
.mn-qty{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:11px;overflow:hidden;}
.mn-qty button{width:42px;height:44px;font-size:1.3rem;font-weight:700;color:var(--orange-700);}
.mn-qty input{width:54px;height:44px;text-align:center;border:none;border-left:1px solid var(--line);border-right:1px solid var(--line);outline:none;font-weight:700;}
.mn-pdp-actions{display:flex;gap:10px;flex-wrap:wrap;}
.mn-pdp-actions .btn{flex:1;min-width:150px;}
.mn-specs{margin-top:22px;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;}
.mn-specs h3{background:#f8fafc;padding:11px 14px;font-size:.92rem;font-weight:700;border-bottom:1px solid var(--line);}
.mn-specs table{width:100%;border-collapse:collapse;}
.mn-specs td{padding:9px 14px;font-size:.86rem;border-bottom:1px solid var(--line-2);}
.mn-specs td:first-child{color:var(--muted);width:42%;font-weight:600;}
/* pure single-text specs — full width to the edge, then wrap */
.mn-specs .mn-spec-line{padding:9px 14px;font-size:.86rem;color:var(--ink-2);font-weight:600;line-height:1.5;border-bottom:1px solid var(--line-2);overflow-wrap:anywhere;word-break:normal;}
.mn-specs .mn-spec-line:last-child{border-bottom:none;}
.mn-desc{margin-top:18px;font-size:.92rem;color:var(--ink-2);line-height:1.7;white-space:pre-wrap;}
.mn-pdp-meta{margin-top:14px;font-size:.8rem;color:var(--muted);}
/* sticky mobile action bar */
.mn-pdp-stick{position:fixed;left:0;right:0;bottom:0;z-index:95;background:#fff;border-top:1px solid var(--line);
  padding:10px 14px;display:flex;gap:10px;box-shadow:0 -6px 20px rgba(15,23,42,.08);}
.mn-pdp-stick .btn{flex:1;}
@media(min-width:900px){.mn-pdp-stick{display:none;}}

/* lightbox */
.mn-lb{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.92);display:none;place-items:center;}
.mn-lb.open{display:grid;}
.mn-lb img{max-width:94vw;max-height:90vh;object-fit:contain;}
.mn-lb-x{position:absolute;top:16px;right:16px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;display:grid;place-items:center;}

/* ========================= CART / QUOTE ========================= */
.mn-steps{display:flex;align-items:center;justify-content:center;gap:8px;margin:18px 0 6px;}
.mn-step{display:flex;align-items:center;gap:7px;font-size:.82rem;font-weight:700;color:var(--muted-2);}
.mn-step .n{width:24px;height:24px;border-radius:50%;background:#e2e8f0;color:#fff;display:grid;place-items:center;font-size:.76rem;}
.mn-step.on{color:var(--orange-700);}.mn-step.on .n{background:var(--orange);}
.mn-step.done .n{background:var(--ok);}
.mn-step-sep{width:26px;height:2px;background:#e2e8f0;}
.mn-cart-layout{display:block;margin-top:14px;}
@media(min-width:900px){.mn-cart-layout{display:grid;grid-template-columns:1fr 340px;gap:26px;align-items:start;}}
.mn-cart-line{display:flex;gap:12px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:12px;margin-bottom:12px;box-shadow:var(--sh-sm);}
.mn-cart-line img{width:74px;height:74px;border-radius:10px;object-fit:contain;background:#fff;border:1px solid var(--line);flex:0 0 auto;}
.mn-cart-line .info{flex:1;min-width:0;}
.mn-cart-line .info b{font-size:.9rem;font-weight:700;display:block;line-height:1.3;}
.mn-cart-line .info .br{font-size:.72rem;color:var(--orange-700);font-weight:700;text-transform:uppercase;}
.mn-cart-line .info .pr{font-size:.84rem;color:var(--muted);margin-top:3px;}
.mn-cart-line .rm{color:var(--danger);font-size:.78rem;font-weight:700;margin-top:6px;}
.mn-cart-line .qty-mini{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:9px;overflow:hidden;margin-top:8px;}
.mn-cart-line .qty-mini button{width:32px;height:32px;font-weight:700;color:var(--orange-700);}
.mn-cart-line .qty-mini span{min-width:34px;text-align:center;font-weight:700;font-size:.86rem;}
.mn-summary{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px;box-shadow:var(--sh-sm);position:sticky;top:74px;}
.mn-summary h3{font-family:var(--disp);font-weight:800;font-size:1.1rem;margin-bottom:12px;}
.mn-summary .row{display:flex;justify-content:space-between;font-size:.88rem;padding:6px 0;color:var(--ink-2);}
.mn-summary .row.total{font-size:1.05rem;font-weight:800;color:var(--ink);border-top:1px solid var(--line);margin-top:6px;padding-top:12px;}
.mn-summary .note{font-size:.74rem;color:var(--muted);margin:10px 0;}
.mn-field{margin-bottom:12px;}
.mn-field label{display:block;font-size:.8rem;font-weight:700;color:var(--ink-2);margin-bottom:5px;}
.mn-field input,.mn-field textarea,.mn-field select{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:11px 13px;outline:none;background:#fff;}
.mn-field input:focus,.mn-field textarea:focus,.mn-field select:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(234,88,12,.12);}
.mn-field.bad input{border-color:var(--danger);}
.mn-field textarea{min-height:74px;resize:vertical;}

/* ========================= ACCOUNT / MY ORDERS ========================= */
.mn-auth-card{max-width:420px;margin:30px auto;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;box-shadow:var(--sh);}
.mn-auth-card h1{font-family:var(--disp);font-weight:800;font-size:1.4rem;text-align:center;}
.mn-auth-card p.sub{text-align:center;color:var(--muted);font-size:.88rem;margin:6px 0 20px;}
.mn-order-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;margin-bottom:12px;box-shadow:var(--sh-sm);}
.mn-order-card .top{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.mn-order-card .qid{font-weight:800;font-size:.96rem;}
.mn-order-card .dt{font-size:.78rem;color:var(--muted);}
.mn-order-card .lines{font-size:.84rem;color:var(--ink-2);margin:8px 0;}
.mn-order-card .ft{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;}
.mn-order-card .amt{font-weight:800;}

/* recaptcha holder */
#mnRecaptcha{display:flex;justify-content:center;margin:10px 0;}

/* ========================= MOBILE FIXES (2026-06) ========================= */
@media(max-width:640px){
  /* header: drop the long tagline + tighten so the cart icon never clips */
  .mn-logo small{display:none;}
  .mn-logo b{font-size:.98rem;}
  .mn-logo img{width:30px;height:30px;}
  .mn-hd-bar{gap:7px;}
  .mn-hd-actions{gap:3px;}
  .mn-icon-btn,.mn-burger{width:38px;height:38px;}
  .mn-icon-btn svg,.mn-burger svg{width:18px;height:18px;}
  .mn-wrap{padding:0 12px;}
}
@media(max-width:899px){
  /* hero: let it size to its content so the heading + button never get cut */
  .mn-hero-slides{aspect-ratio:auto;min-height:0;}
  .mn-hero-slide{position:relative;min-height:230px;}
  .mn-hero-slide:not(.active){display:none;}
  .mn-hero-overlay{position:absolute;inset:0;justify-content:center;padding:20px 18px;}
  .mn-hero-overlay h1{font-size:1.4rem;max-width:100%;line-height:1.18;}
  .mn-hero-overlay p{font-size:.86rem;max-width:100%;margin-top:7px;}
  .mn-hero-overlay .btn{margin-top:13px;}
  /* category tiles: shorter image area so empty tiles aren't huge */
  .mn-cat-thumb{aspect-ratio:4/3;}
  .mn-cat-thumb .ph{font-size:1.5rem;}
}

/* ========================= DEEP UI POLISH (2026-06) ========================= */
/* sticky summary must clear the FULL sticky header (bar 60 + catnav 46 on desktop) */
@media(min-width:900px){
  .mn-summary{top:118px;}
  #mnSearchToggle{display:none;}        /* desktop already has the inline search box */
}
/* PDP mobile: reserve space so the fixed bottom action bar never hides the footer */
@media(max-width:899px){
  body.mn-stickbar{padding-bottom:72px;}
}
/* product card: keep the Add button on one line on tiny screens */
@media(max-width:380px){
  .mn-card-add{font-size:.76rem;padding:7px 8px;}
  .mn-card-body{padding:9px 9px 11px;}
}
/* shop toolbar: let title + tools wrap cleanly on small screens */
@media(max-width:520px){
  .mn-shop-top h1{font-size:1.15rem;}
  .mn-shop-tools{width:100%;margin-left:0;}
  .mn-sort{flex:1;}
}
/* section headings: keep the "View all" link from crowding the title */
.mn-sec-hd h2{min-width:0;}
.mn-sec-hd a{flex:0 0 auto;white-space:nowrap;}

/* ========================= GENERIC MODAL (quick-view, order detail) ========================= */
.mn-modal{position:fixed;inset:0;z-index:450;background:rgba(15,23,42,.55);display:none;
  align-items:flex-end;justify-content:center;padding:0;}
.mn-modal.open{display:flex;}
@media(min-width:640px){.mn-modal{align-items:center;padding:16px;}}
.mn-modal-card{position:relative;background:#fff;width:100%;max-width:560px;max-height:92vh;overflow-y:auto;
  border-radius:18px 18px 0 0;box-shadow:var(--sh-lg);}
@media(min-width:640px){.mn-modal-card{border-radius:18px;}}
.mn-modal-x{position:absolute;top:10px;right:10px;z-index:3;width:34px;height:34px;border-radius:50%;
  background:rgba(255,255,255,.92);box-shadow:var(--sh-sm);display:grid;place-items:center;font-size:1.1rem;color:var(--ink);}
.mn-qv-img{aspect-ratio:1/1;background:#fff;display:grid;place-items:center;border-bottom:1px solid var(--line-2);}
.mn-qv-img img{width:100%;height:100%;object-fit:contain;}
.mn-qv-body{padding:16px 18px 20px;}
.mn-qv-body .br{font-size:.7rem;font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:var(--orange-700);}
.mn-qv-body h2{font-family:var(--disp);font-weight:800;font-size:1.2rem;line-height:1.25;margin:3px 0 8px;}
.mn-qv-price .now{font-size:1.4rem;font-weight:800;}
.mn-qv-price .mrp{font-size:.9rem;color:var(--muted-2);text-decoration:line-through;margin-left:8px;}
.mn-qv-price .gst{font-size:.76rem;color:var(--muted);display:block;}
.mn-qv-desc{font-size:.86rem;color:var(--ink-2);line-height:1.55;margin:10px 0;max-height:5.5em;overflow:hidden;}
.mn-qv-actions{display:flex;gap:10px;align-items:center;margin-top:12px;flex-wrap:wrap;}

/* status timeline (order detail) */
.mn-tl{display:flex;align-items:flex-start;gap:0;margin:14px 0;overflow-x:auto;padding-bottom:4px;}
.mn-tl-step{flex:1;min-width:64px;text-align:center;position:relative;}
.mn-tl-step .dot{width:24px;height:24px;border-radius:50%;background:#e2e8f0;color:#fff;display:grid;place-items:center;margin:0 auto 5px;font-size:.7rem;font-weight:800;position:relative;z-index:2;}
.mn-tl-step.done .dot{background:var(--ok);} .mn-tl-step.on .dot{background:var(--orange);}
.mn-tl-step .lb{font-size:.62rem;color:var(--muted);font-weight:700;line-height:1.15;}
.mn-tl-step.on .lb,.mn-tl-step.done .lb{color:var(--ink);}
.mn-tl-step:not(:first-child)::before{content:'';position:absolute;top:11px;left:-50%;width:100%;height:2px;background:#e2e8f0;z-index:1;}
.mn-tl-step.done::before,.mn-tl-step.on::before{background:var(--ok);}
.mn-od-line{display:flex;align-items:center;gap:9px;padding:7px 0;border-bottom:1px solid var(--line-2);font-size:.84rem;}
.mn-od-line img{width:36px;height:36px;border-radius:8px;object-fit:contain;background:#fff;border:1px solid var(--line);flex:0 0 auto;}
.mn-od-line .nm{flex:1;min-width:0;}
.mn-od-line .nm > div:first-child{font-weight:600;line-height:1.25;}
.mn-od-line .qt{color:var(--muted);font-size:.74rem;margin-top:1px;}
.mn-od-line .qt s{color:var(--muted-2);}
.mn-od-line .od-off{color:var(--ok);font-weight:800;}
.mn-od-line .od-amt{margin-left:auto;font-weight:800;font-size:.82rem;flex:0 0 auto;white-space:nowrap;align-self:center;}
/* order-detail modal — compact/sleek (2026-06) */
#mnOdCard h2{font-size:1.02rem!important;}
#mnOdCard .pill{font-size:.66rem;padding:2px 8px;}
#mnOdCard .mn-tl{margin:11px 0;}
#mnOdCard .btn{padding:8px 12px;font-size:.83rem;}

/* card quick-view button */
.mn-card-qv{position:absolute;top:46px;right:8px;z-index:2;width:32px;height:32px;border-radius:50%;
  background:rgba(255,255,255,.92);display:grid;place-items:center;box-shadow:var(--sh-sm);}
.mn-card-qv svg{width:17px;height:17px;color:var(--muted);}
.mn-card-qv:hover svg{color:var(--orange);}

/* ========================= BATCH D/E/F (2026-06) ========================= */
/* wider, edge-to-edge desktop */
.mn-wrap{max-width:1600px;}
@media(min-width:1200px){.mn-wrap{padding:0 32px;}}

/* category tiles: COMPACT + capped (auto-FILL so few categories never stretch huge) */
.mn-cat-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px;justify-content:start;}
.mn-cat-thumb{aspect-ratio:4/3;}
.mn-cat-tile .meta{padding:7px 8px;}
.mn-cat-tile .meta b{font-size:.8rem;}
.mn-cat-tile .meta span{font-size:.68rem;}
@media(min-width:700px){.mn-cat-grid{grid-template-columns:repeat(auto-fill,minmax(138px,148px));gap:12px;}}
.mn-sec{margin-top:22px;}
@media(min-width:900px){.mn-sec{margin-top:28px;}}

/* search clear (✕) button inside the search bars */
.mn-search-clear{flex:0 0 auto;width:26px;height:26px;border-radius:50%;display:none;
  place-items:center;background:#e2e8f0;color:#475569;font-size:.95rem;line-height:1;}
.mn-search-clear.show{display:grid;}
.mn-hd-search .mn-search-clear svg,.mn-msearch .mn-search-clear svg{width:13px;height:13px;}
.mn-msearch{position:relative;}
.mn-msearch .mn-search-clear{position:absolute;right:96px;top:50%;transform:translateY(-50%);}

/* product card inline qty stepper (Instamart style) */
.mn-card-ctl{margin-top:9px;}
.mn-card-step{display:flex;align-items:center;justify-content:space-between;border:1.5px solid var(--orange);border-radius:var(--r-sm);overflow:hidden;height:34px;}
.mn-card-step button{width:38px;height:100%;font-size:1.2rem;font-weight:800;color:var(--orange-700);background:var(--orange-soft);}
.mn-card-step span{font-weight:800;font-size:.9rem;color:var(--orange-700);}

/* product page action row — one line */
.mn-pdp-actions{flex-wrap:nowrap;}
.mn-pdp-actions .btn-icon{flex:0 0 auto;width:50px;padding:0;}
@media(max-width:520px){
  .mn-pdp-actions .btn-lg{padding:12px 10px;font-size:.92rem;}
  .mn-pdp-actions .btn-icon{width:46px;}
}

/* ===== mobile bottom nav (Instamart) ===== */
.mn-botnav{position:fixed;left:0;right:0;bottom:0;z-index:100;background:#fff;border-top:1px solid var(--line);
  display:none;justify-content:space-around;align-items:center;height:58px;box-shadow:0 -4px 16px rgba(15,23,42,.06);
  padding-bottom:env(safe-area-inset-bottom);}
.mn-botnav a{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.6rem;font-weight:700;color:var(--muted);flex:1;position:relative;}
.mn-botnav a.on{color:var(--orange-700);}
.mn-botnav a svg{width:22px;height:22px;}
.mn-botnav .mn-count{position:absolute;top:-3px;right:50%;margin-right:-22px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--orange);color:#fff;font-size:.6rem;font-weight:800;display:grid;place-items:center;border:1.5px solid #fff;}
.mn-botnav .mn-count.is-zero{display:none;}
@media(max-width:899px){
  .mn-botnav{display:flex;}
  body{padding-bottom:58px;}        /* room for bottom nav */
}

/* ===== sticky "view cart" bar (Instamart) — sits above bottom nav ===== */
.mn-cartbar{position:fixed;left:0;right:0;bottom:58px;z-index:99;display:none;padding:8px 12px;}
.mn-cartbar.show{display:block;}
.mn-cartbar-inner{background:var(--orange-grad);color:#fff;border-radius:14px;box-shadow:0 8px 24px rgba(234,88,12,.4);
  display:flex;align-items:center;justify-content:space-between;padding:11px 16px;gap:12px;}
.mn-cartbar-inner .l{font-size:.78rem;font-weight:700;line-height:1.2;}
.mn-cartbar-inner .l b{font-size:.95rem;}
.mn-cartbar-inner .r{font-weight:800;font-size:.92rem;display:flex;align-items:center;gap:6px;white-space:nowrap;}
@media(min-width:900px){
  .mn-cartbar{bottom:18px;left:auto;right:18px;max-width:340px;}
}
/* hide cart bar on the cart page itself */
body.mn-on-cart .mn-cartbar{display:none !important;}

/* PDP sticky bar should sit above the bottom nav on mobile */
@media(max-width:899px){ .mn-pdp-stick{bottom:58px;} body.mn-stickbar{padding-bottom:124px;} }

/* hide the floating cart bar on the product page (its own sticky bar is there) */
body.mn-stickbar .mn-cartbar{display:none !important;}


/* ========================= MODERN PRODUCT CARD (Instamart-style) 2026-06 ===== */
.mn-card{border-radius:16px;}
.mn-card-imgwrap{border-radius:16px 16px 0 0;}
.mn-card-imglink{position:absolute;inset:0;z-index:1;}
.mn-card-off{position:absolute;top:8px;left:8px;z-index:3;background:#dcfce7;color:#15803d;
  font-size:.64rem;font-weight:800;padding:3px 7px;border-radius:7px;letter-spacing:.2px;box-shadow:var(--sh-sm);}
/* the Add / qty control floats over the bottom-right of the image (Instamart) */
.mn-card .mn-card-ctl{position:absolute;right:8px;bottom:8px;z-index:4;margin:0;width:auto;}
.mn-card .mn-card-ctl .btn{background:#fff;color:var(--orange-700);border:1.5px solid var(--orange);
  box-shadow:0 6px 14px rgba(15,23,42,.14);font-weight:800;padding:8px 22px;border-radius:11px;font-size:.84rem;letter-spacing:.3px;}
.mn-card .mn-card-step{background:#fff;box-shadow:0 6px 14px rgba(15,23,42,.16);height:36px;min-width:104px;border-radius:11px;}
.mn-card-body{padding:9px 11px 12px;}
.mn-card-brand{font-size:.64rem;}
.mn-card-title{font-size:.85rem;font-weight:600;margin:3px 0 6px;min-height:2.2em;}
.mn-card-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;margin-top:0;}
.mn-card-price .now{font-weight:800;font-size:1.02rem;}
.mn-card-price .mrp{font-size:.76rem;color:var(--muted-2);text-decoration:line-through;}
.mn-card-price .off{font-size:.72rem;color:#15803d;font-weight:800;}
.mn-card-body .gst{font-size:.64rem;color:var(--muted);margin-top:3px;}

/* tighter mobile grid + compact hero */
@media(max-width:620px){
  .mn-prod-grid{gap:10px;}
  .mn-card-title{font-size:.8rem;min-height:2.1em;}
  .mn-card-price .now{font-size:.95rem;}
  .mn-hero-slides{aspect-ratio:16/8;min-height:150px;}
  .mn-hero-overlay{padding:16px;}
  .mn-hero-overlay h1{font-size:1.25rem;max-width:72%;}
  .mn-hero-overlay p{font-size:.8rem;max-width:78%;margin-top:5px;}
  .mn-hero-overlay .btn{margin-top:10px;padding:9px 16px;font-size:.85rem;}
  .mn-sec-hd h2{font-size:1.12rem;}
}


/* ========================= MODERN QUOTE CART (Swiggy-style) 2026-06 ========= */
.mn-save-ban{background:linear-gradient(90deg,#ecfdf5,#d1fae5);color:#15803d;font-weight:700;
  font-size:.86rem;padding:11px 14px;border-radius:12px;margin-bottom:12px;border:1px solid #a7f3d0;}
.mn-save-ban b{font-weight:800;}
.mn-cart-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh-sm);
  padding:6px 14px;margin-bottom:12px;}
.mn-cart-cardhd{display:flex;align-items:center;justify-content:space-between;padding:12px 0 8px;border-bottom:1px solid var(--line-2);}
.mn-cart-cardhd b{font-size:.92rem;font-weight:800;}
.cl-clear{color:var(--danger);font-size:.78rem;font-weight:700;}
.mn-cline{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line-2);}
.mn-cline:last-of-type{border-bottom:none;}
.mn-cline img{width:56px;height:56px;border-radius:10px;object-fit:contain;background:#fff;border:1px solid var(--line);flex:0 0 auto;}
.mn-cline .cl-info{flex:1;min-width:0;}
.mn-cline .cl-br{font-size:.66rem;color:var(--orange-700);font-weight:800;text-transform:uppercase;letter-spacing:.3px;}
.mn-cline .cl-info b{display:block;font-size:.86rem;font-weight:600;line-height:1.3;margin:1px 0 4px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.mn-cline .cl-rm{color:var(--danger);font-size:.74rem;font-weight:700;}
.mn-cline .cl-right{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:6px;}
.cl-step{display:inline-flex;align-items:center;border:1.5px solid var(--orange);border-radius:9px;overflow:hidden;box-shadow:var(--sh-sm);}
.cl-step button{width:30px;height:30px;font-weight:800;font-size:1.05rem;color:#fff;background:var(--orange);}
.cl-step span{min-width:30px;text-align:center;font-weight:800;font-size:.85rem;color:var(--orange-700);background:#fff;}
.cl-price{text-align:right;line-height:1.2;}
.cl-price b{font-weight:800;font-size:.92rem;}
.cl-price s{display:block;font-size:.72rem;color:var(--muted-2);}
.cl-price .cl-pc{display:block;font-size:.7rem;color:var(--muted-2);font-weight:600;}
.mn-cline .cl-pp{font-size:.78rem;color:var(--muted);font-weight:600;margin:0 0 5px;display:flex;align-items:center;gap:5px;flex-wrap:wrap;}
.mn-cline .cl-pp s{color:var(--muted-2);font-weight:500;}
.mn-cline .cl-pp .cl-off{color:var(--ok);font-weight:800;font-size:.72rem;}
.mn-cline .cl-pp .cl-pc{color:var(--muted-2);font-weight:600;}
.mn-addmore{display:block;text-align:center;padding:12px 0 14px;font-weight:800;font-size:.86rem;color:var(--orange-700);}
.mn-billcard{padding:14px;}
.mn-billcard .bill-hd{font-weight:800;font-size:.92rem;margin-bottom:8px;}
.mn-billcard .bill-row{display:flex;justify-content:space-between;font-size:.85rem;padding:5px 0;color:var(--ink-2);}
.mn-billcard .bill-row.save{color:var(--ok);font-weight:700;}
.mn-billcard .bill-row.total{font-weight:800;font-size:1rem;color:var(--ink);border-top:1px solid var(--line);margin-top:5px;padding-top:10px;}
.mn-billcard .bill-note{font-size:.72rem;color:var(--muted);margin-top:8px;}
/* the bill card duplicates the desktop summary, so hide it on desktop */
@media(min-width:900px){ .mn-billcard{display:none;} }
/* on mobile the right-rail summary is replaced by the bill card + sticky bar */
@media(max-width:899px){ .mn-cart-side{display:none;} }

/* sticky bottom proceed bar */
.mn-quotebar{position:fixed;left:0;right:0;bottom:58px;z-index:101;display:none;
  background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 20px rgba(15,23,42,.1);
  padding:10px 14px;align-items:center;justify-content:space-between;gap:12px;}
.mn-quotebar.show{display:flex;}
.mn-quotebar .qb-l{display:flex;flex-direction:column;line-height:1.15;}
.mn-quotebar .qb-amt{font-weight:800;font-size:1.05rem;}
.mn-quotebar .qb-sub{font-size:.7rem;color:var(--muted);}
.mn-quotebar .qb-btn{background:var(--orange-grad);color:#fff;font-weight:800;font-size:.95rem;
  padding:13px 22px;border-radius:12px;box-shadow:0 6px 16px rgba(234,88,12,.32);white-space:nowrap;}
body.mn-has-quotebar{padding-bottom:130px;}
@media(min-width:900px){
  .mn-quotebar{display:none !important;}   /* desktop uses the summary button */
  body.mn-has-quotebar{padding-bottom:0;}
}


/* ===== hide native number-input up/down spinners site-wide (we use +/-) ===== */
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
input[type=number]{-moz-appearance:textfield;appearance:textfield;}

/* PDP unified Add → −/qty/+ control (matches the card / inventory model) */
.mn-pdp-step{display:flex;align-items:center;justify-content:space-between;border:1.6px solid var(--orange);
  border-radius:var(--r-sm);overflow:hidden;height:48px;background:#fff;box-shadow:0 4px 12px rgba(234,88,12,.18);}
.mn-pdp-step.big{height:50px;}
.mn-pdp-step button{width:50px;height:100%;font-size:1.35rem;font-weight:800;color:#fff;background:var(--orange-grad);}
.mn-pdp-step span{flex:1;text-align:center;font-weight:800;font-size:1.05rem;color:var(--orange-700);}


/* ========================= CARD ADD CONTROL → IN BODY (not over image) ====== */
.mn-card .mn-card-ctl{position:static;right:auto;bottom:auto;margin-top:8px;width:100%;z-index:auto;}
.mn-card .mn-card-ctl .btn{display:block;width:100%;background:var(--orange-grad);color:#fff;
  border:none;box-shadow:none;font-weight:800;padding:9px 12px;border-radius:10px;font-size:.84rem;letter-spacing:.2px;}
.mn-card .mn-card-step{display:flex;width:100%;min-width:0;height:36px;border-radius:10px;
  border:1.5px solid var(--orange);box-shadow:none;background:#fff;}
.mn-card .mn-card-step button{flex:0 0 38px;background:var(--orange-soft);}
.mn-card .mn-card-step span{flex:1;}

/* ========================= COMPACT / SLEEK PASS (2026-06) =================== */
.mn-wrap{padding:0 10px;}
@media(min-width:900px){.mn-wrap{padding:0 18px;}}
.mn-sec{margin-top:16px;}
@media(min-width:900px){.mn-sec{margin-top:22px;}}
.mn-sec-hd{margin-bottom:10px;}
.mn-hero{margin-top:10px;}
.mn-prod-grid{gap:9px;}
@media(min-width:980px){.mn-prod-grid{gap:14px;}}
.mn-card-body{padding:8px 9px 9px;}
.mn-card-title{margin:2px 0 5px;min-height:2em;}
.mn-card-body .gst{margin-top:1px;}
.mn-cat-grid{gap:8px;}
.mn-cat-tile .meta{padding:6px 8px;}
/* tighter trust tiles */
#mnTrust .mn-cat-tile{padding:10px 12px !important;}
/* footer a touch tighter */
.mn-ft-grid{padding:26px 0;gap:20px;}
/* product page: tighter */
.mn-pdp-note{padding:8px 11px;margin:10px 0;}
.mn-bc{margin:10px 0 4px;}


/* PDP unified control must fill its slot (was cramped / narrow) */
#pAddWrap, #pAddWrap2{display:flex;}
#pAddWrap .btn, #pAddWrap2 .btn{width:100%;}
.mn-pdp-step{width:100%;}


/* ========================= PDP ACTION ROW — DEFINITIVE FIX (no overflow) ===== */
/* The old `.mn-pdp-actions .btn{min-width:150px}` forced the WhatsApp/Save/Share
   icon buttons to 150px each → they overflowed off the screen. Reset cleanly. */
.mn-pdp-actions{display:flex;gap:8px;flex-wrap:nowrap;align-items:stretch;}
.mn-pdp-actions > #pAddWrap{flex:1 1 auto;min-width:0;}
.mn-pdp-actions > #pAddWrap .btn{width:100%;min-width:0;}
.mn-pdp-actions .btn-icon{flex:0 0 auto !important;width:48px !important;min-width:0 !important;padding:0 !important;}
.mn-pdp-actions .mn-pdp-step{width:100%;height:48px;}

/* sticky bottom bar: compact WhatsApp + dominant Add/stepper, no overflow */
.mn-pdp-stick{display:flex;gap:8px;align-items:stretch;}
.mn-pdp-stick > #pWa2{flex:0 0 auto;width:auto;min-width:0;padding:0 18px;}
.mn-pdp-stick > #pAddWrap2{flex:1 1 auto;min-width:0;display:flex;}
.mn-pdp-stick > #pAddWrap2 .btn{width:100%;min-width:0;}
.mn-pdp-stick .mn-pdp-step{width:100%;}


/* ===== PDP: NO DOUBLE CONTROLS — mobile uses ONLY the sticky bar ===== */
@media(max-width:899px){ .mn-pdp-actions{display:none !important;} }
.mn-pdp-stick > #pAddWrap2{flex:1 1 auto;min-width:0;display:flex;}
.mn-pdp-stick > #pAddWrap2 .btn{width:100%;}
.mn-pdp-stick .mn-pdp-step{width:100%;}
.mn-pdp-stick .btn-icon{flex:0 0 auto !important;width:46px !important;min-width:0 !important;padding:0 !important;}


/* ===== PDP sticky bar — COMPACT/SLEEK (mobile only; desktop untouched) ===== */
.mn-pdp-stick{padding:7px 12px;gap:7px;align-items:center;}
.mn-pdp-stick .mn-pdp-step{height:40px;border-radius:9px;box-shadow:none;border-width:1.4px;}
.mn-pdp-stick .mn-pdp-step button{width:40px;font-size:1.1rem;}
.mn-pdp-stick .mn-pdp-step span{font-size:.92rem;}
.mn-pdp-stick .btn-icon{width:40px !important;height:40px;border-radius:9px;}
.mn-pdp-stick .btn-icon svg{width:18px;height:18px;}
.mn-pdp-stick > #pAddWrap2 .btn{height:40px;padding:0;font-size:.88rem;}
@media(max-width:899px){ body.mn-stickbar{padding-bottom:110px;} }


/* ===== editable qty inputs inside steppers (card / PDP / cart) ===== */
.mn-step-inp{border:none;background:#fff;text-align:center;font-weight:800;color:var(--orange-700);outline:none;padding:0;}
.mn-card-step .mn-step-inp{flex:1;min-width:0;width:100%;height:100%;font-size:.9rem;}
.mn-pdp-step .mn-step-inp{flex:1;min-width:0;width:100%;height:100%;font-size:1rem;}
.cl-step .mn-step-inp{width:32px;height:30px;font-size:.85rem;}

/* hide the floating "View Cart" bar on the HOME page (kept on shop/wishlist) */
body.mn-on-home .mn-cartbar{display:none !important;}

/* drawer footer buttons — compact (WhatsApp was oversized) */
.mn-drawer-ft{padding:12px 16px;gap:8px;}
.mn-drawer-ft .btn{padding:11px 12px;font-size:.88rem;}
.mn-drawer-ft .btn svg{width:18px;height:18px;}


/* ===== footer link columns side-by-side on mobile (compact) ===== */
@media(max-width:759px){
  .mn-ft-grid{grid-template-columns:1fr 1fr;gap:14px 18px;padding:22px 0 24px;}
  .mn-ft-grid > div:first-child{grid-column:1 / -1;}   /* company info spans full width */
  .mn-ft h4{margin-bottom:8px;font-size:.95rem;}
  .mn-ft a{padding:4px 0;font-size:.85rem;}
  .mn-ft p{margin-bottom:4px;}
}


/* ========================= SHOP: Swiggy-style search + sticky tools ========= */
.mn-shop-sticky{position:sticky;top:58px;z-index:80;background:var(--bg);padding:8px 0 6px;}
.mn-shop-search{display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--line);
  border-radius:12px;padding:0 12px;height:44px;box-shadow:var(--sh-sm);}
.mn-shop-search:focus-within{border-color:var(--orange);box-shadow:0 0 0 3px rgba(234,88,12,.12);}
.mn-shop-search svg{width:18px;height:18px;color:var(--muted);flex:0 0 auto;}
.mn-shop-search input{flex:1;min-width:0;border:none;background:none;outline:none;height:100%;font-size:.95rem;}
.mn-shop-search .mn-search-clear{position:static;transform:none;flex:0 0 auto;}
.mn-chips{display:flex;gap:8px;overflow-x:auto;padding:8px 0 2px;-ms-overflow-style:none;scrollbar-width:none;}
.mn-chips::-webkit-scrollbar{display:none;}
.mn-chip-b{flex:0 0 auto;background:#fff;border:1.5px solid var(--line);border-radius:999px;
  padding:6px 14px;font-size:.8rem;font-weight:700;color:var(--ink-2);white-space:nowrap;}
.mn-chip-b.on{background:var(--orange-soft);border-color:var(--orange);color:var(--orange-700);}
.mn-shop-sticky .mn-shop-top{margin-bottom:6px;}
#mnCatSelect{max-width:150px;}
@media(max-width:520px){
  .mn-shop-sticky .mn-shop-tools{flex-wrap:wrap;}
  #mnCatSelect,.mn-shop-tools .mn-sort{font-size:.8rem;padding:0 8px;height:38px;}
}
/* sticky filters bottom-sheet & desktop facets must clear the new sticky bar — they already scroll independently */


/* ===== Shop search image suggestion tiles (Swiggy-style) ===== */
.mn-chips{gap:12px;padding:10px 0 4px;}
.mn-sugg{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:4px;width:64px;background:none;border:none;padding:0;}
.mn-sugg .th{width:56px;height:56px;border-radius:14px;background:#fff;border:1.5px solid var(--line);display:grid;place-items:center;overflow:hidden;}
.mn-sugg .th img{width:100%;height:100%;object-fit:contain;}
.mn-sugg .th .ph{font-size:1.4rem;}
.mn-sugg.on .th{border-color:var(--orange);box-shadow:0 0 0 2px var(--orange-soft);}
.mn-sugg .lb{font-size:.68rem;font-weight:700;color:var(--ink-2);text-align:center;line-height:1.12;max-width:64px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.mn-sugg.on .lb{color:var(--orange-700);}


/* ========================= SLEEK DRAWER (2026-06) ========================= */
.mn-drawer{max-width:318px;}
.mn-drawer-hd{background:#fff;color:var(--ink);padding:13px 14px;border-bottom:1px solid var(--line);}
.mn-drawer-brand{display:flex;align-items:center;gap:10px;min-width:0;}
.mn-drawer-brand img{width:34px;height:34px;border-radius:9px;object-fit:contain;flex:0 0 auto;}
.mn-drawer-brand b{font-family:var(--disp);font-size:1rem;font-weight:800;display:block;line-height:1.05;color:var(--ink);}
.mn-drawer-brand span{font-size:.6rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px;}
.mn-drawer-hd .mn-drawer-x{background:#f1f5f9;color:var(--ink);width:34px;height:34px;border-radius:9px;flex:0 0 auto;}
.mn-drawer-hd .mn-drawer-x svg{width:18px;height:18px;}
.mn-drawer-quick{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line-2);}
.mn-drawer-quick a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 2px;border-radius:11px;background:#f6f8fb;font-size:.64rem;font-weight:700;color:var(--ink-2);}
.mn-drawer-quick a:hover{background:var(--orange-soft);color:var(--orange-700);}
.mn-drawer-quick svg{width:18px;height:18px;}
.mn-drawer-lbl{padding:12px 16px 2px;font-size:.64rem;font-weight:800;letter-spacing:.7px;text-transform:uppercase;color:var(--muted-2);}
.mn-drawer-body{padding:2px 0 6px;}
.mn-drawer-link{padding:9px 14px;font-weight:600;font-size:.9rem;border-bottom:1px solid var(--line-2);gap:10px;}
.mn-drawer-link .mn-dl-ico{width:30px;height:30px;border-radius:8px;background:#f8fafc;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden;flex:0 0 auto;}
.mn-drawer-link .mn-dl-ico img{width:100%;height:100%;object-fit:contain;}
.mn-drawer-link .mn-dl-ico .ph{font-size:.95rem;}
.mn-drawer-link .nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mn-drawer-sub a{padding:9px 16px 9px 56px;font-size:.85rem;}
.mn-drawer-ft{padding:10px 14px;border-top:1px solid var(--line);}
.mn-drawer-ft .btn{padding:11px;font-size:.86rem;}


/* ===== shop refinements: count in breadcrumb, slim search, smaller tiles ===== */
.mn-bc{margin:8px 0 2px;}
.mn-bc-cnt{margin-left:auto;font-size:.74rem;color:var(--muted);font-weight:600;flex:0 0 auto;}
/* slimmer, sleeker search bar */
.mn-shop-sticky{padding:6px 0 4px;}
.mn-shop-search{height:40px;border-radius:11px;}
.mn-shop-search input{font-size:.9rem;}
/* smaller category suggestion tiles → more per row (scrolls horizontally when many) */
.mn-chips{gap:10px;padding:8px 0 4px;}
.mn-sugg{width:56px;}
.mn-sugg .th{width:48px;height:48px;border-radius:12px;}
.mn-sugg .th .ph{font-size:1.25rem;}
.mn-sugg .lb{font-size:.63rem;max-width:56px;}


/* ===== shop polish: breadcrumb count right, sleeker search, smaller cat tiles ===== */
.mn-bc{align-items:center;}
.mn-bc .mn-bc-cnt{margin-left:auto;color:var(--muted);font-weight:600;font-size:.78rem;white-space:nowrap;}
/* sleeker search bar (less vertical padding) */
.mn-shop-sticky{padding:6px 0 5px;}
.mn-shop-search{height:40px;border-radius:11px;}
.mn-shop-search input{font-size:.9rem;}
/* smaller category suggestion tiles → more fit per row + scrolls when many */
.mn-chips{gap:10px;}
.mn-sugg{width:52px;}
.mn-sugg .th{width:44px;height:44px;border-radius:12px;}
.mn-sugg .lb{font-size:.63rem;max-width:52px;}


/* PDP: SKU / Category / Barcode — stacked lines right under the product name */
.mn-pdp-sku{font-size:.78rem;color:var(--muted);font-weight:600;margin:6px 0 10px;}
.mn-pdp-sku div{padding:1px 0;}
.mn-pdp-sku b{color:var(--ink-2);font-weight:800;}


/* ===== image loading shimmer (PDP gallery, quick-view, anywhere with .mn-imgwrap-load) ===== */
.mn-imgwrap-load{position:relative;}
.mn-imgwrap-load:not(.ld){background:linear-gradient(90deg,#eef2f7 25%,#e2e8f0 37%,#eef2f7 63%)!important;background-size:400% 100%;animation:mnShim 1.4s ease infinite;}
.mn-imgwrap-load img{opacity:0;transition:opacity .35s ease;}
.mn-imgwrap-load.ld img{opacity:1;}


/* ===== shop: filter bar removed → product grid spans full width ===== */
.mn-shop-body{display:block !important;}
/* keep the last product row clear of the floating "View Cart" bar (mobile) */
@media(max-width:899px){ body.mn-cartbar-on{padding-bottom:130px;} }


/* ===== compact Filters pill (brand + price), combines with category chips ===== */
.mn-shop-filtrow{display:flex;justify-content:flex-end;padding:6px 0 2px;}
.mn-filtpill{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid var(--line);
  border-radius:999px;padding:7px 16px;font-size:.82rem;font-weight:700;color:var(--ink-2);box-shadow:var(--sh-sm);}
.mn-filtpill:hover{border-color:var(--orange);color:var(--orange-700);}
/* filters as a bottom-sheet on ALL widths (grid sidebar removed) */
.mn-facets-wrap{position:fixed;inset:0;z-index:230;background:rgba(15,23,42,.5);opacity:0;pointer-events:none;transition:opacity .25s;}
.mn-facets-wrap.open{opacity:1;pointer-events:auto;}
.mn-facets-wrap .mn-facets{position:absolute;left:0;right:0;bottom:0;max-height:84vh;overflow-y:auto;
  border-radius:18px 18px 0 0;transform:translateY(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);padding-bottom:80px;}
.mn-facets-wrap.open .mn-facets{transform:translateY(0);}
.mn-facets-wrap .mn-facets-hd,.mn-facets-wrap .mn-facets-apply{display:flex;}
@media(min-width:760px){.mn-facets-wrap .mn-facets{max-width:520px;left:50%;right:auto;transform:translate(-50%,100%);}.mn-facets-wrap.open .mn-facets{transform:translate(-50%,0);}}

/* ===== card heart (wishlist) — clearer, solid, not faint ===== */
.mn-card-fav{background:#fff;box-shadow:0 2px 7px rgba(15,23,42,.16);width:33px;height:33px;}
.mn-card-fav svg{width:18px;height:18px;color:#475569;stroke-width:2.1;}
.mn-card-fav.on svg{color:var(--orange);fill:var(--orange);}
.mn-card-qv{background:#fff;box-shadow:0 2px 7px rgba(15,23,42,.16);}
.mn-card-qv svg{color:#475569;}

/* ===== quick-view stepper — clean boxed control (never overflows) ===== */
.mn-qv-actions{display:block;margin-top:14px;}
#mnQvCtl{width:100%;min-width:0;}
#mnQvCtl .btn{width:100%;}
.mn-qv-step{display:flex;align-items:stretch;width:100%;box-sizing:border-box;
  border:1.5px solid var(--orange);border-radius:11px;overflow:hidden;height:44px;
  background:#fff;box-shadow:0 2px 10px rgba(234,88,12,.12);}
.mn-qv-step button{flex:0 0 46px;font-size:1.1rem;font-weight:700;color:#fff;
  background:var(--orange-grad);display:grid;place-items:center;border:none;transition:filter .12s ease;}
.mn-qv-step button:active{filter:brightness(.92);}
.mn-qv-step .mn-step-inp{flex:1 1 auto;min-width:0;width:auto;height:auto;border:none;
  text-align:center;font-size:1rem;font-weight:800;color:var(--ink);background:#fff;outline:none;}
/* sleeker quick-view body spacing */
.mn-qv-body{padding:18px 18px 22px;}
.mn-qv-body h2{margin:4px 0 10px;}
.mn-qv-actions + .btn-block{margin-top:10px;}


/* heart/quick-view buttons: guarantee they render fully (no clipping) */
.mn-card{overflow:hidden;}
.mn-card-imgwrap{border-radius:16px 16px 0 0;}
.mn-card-fav,.mn-card-qv{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;}
.mn-card-fav svg,.mn-card-qv svg{display:block;width:17px;height:17px;}


/* ===== applied-filter chip sits on the SAME line as the Filters button ===== */
.mn-shop-filtrow{display:flex;align-items:center;gap:8px;justify-content:flex-start;flex-wrap:nowrap;overflow:hidden;}
.mn-shop-filtrow .mn-applied{flex:1 1 auto;min-width:0;margin:0;display:flex;align-items:center;gap:6px;flex-wrap:nowrap;overflow:hidden;}
.mn-shop-filtrow .mn-filtpill{flex:0 0 auto;}
.mn-applied .mn-chip{flex:0 1 auto;min-width:0;max-width:100%;display:inline-flex;align-items:center;gap:5px;font-size:.74rem;}
.mn-applied .mn-chip .lbl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;}
.mn-applied .mn-chip[data-clr="all"]{flex:0 0 auto;}
.mn-applied .mn-chip button{flex:0 0 auto;}


/* ===== filter row: sleek, compact, rectangular (fits more text) ===== */
.mn-shop-filtrow{gap:6px;padding:5px 0 2px;}
.mn-filtpill{padding:4px 10px;font-size:.74rem;font-weight:700;border-radius:7px;gap:4px;box-shadow:none;}
.mn-applied .mn-chip{font-size:.74rem;font-weight:700;padding:4px 8px;border-radius:7px;gap:4px;}
.mn-applied .mn-chip button{font-size:.85rem;line-height:1;}
.mn-applied .mn-chip[data-clr="all"]{background:#fee2e2;color:#b91c1c;}


/* ===== filter row: equal height + true vertical centering ===== */
.mn-shop-filtrow{align-items:center;}
.mn-shop-filtrow .mn-applied{align-items:center;}
.mn-shop-filtrow .mn-chip,
.mn-shop-filtrow .mn-filtpill{height:30px;display:inline-flex;align-items:center;line-height:1;box-sizing:border-box;}
.mn-shop-filtrow .mn-chip .lbl{line-height:1;}
.mn-shop-filtrow .mn-chip button{display:inline-flex;align-items:center;height:100%;}


/* ===== desktop product grid: smaller, more per row (up to 6) ===== */
@media(min-width:620px){ .mn-prod-grid{grid-template-columns:repeat(4,1fr);gap:12px;} }
@media(min-width:980px){ .mn-prod-grid{grid-template-columns:repeat(5,1fr);gap:12px;} }
@media(min-width:1240px){ .mn-prod-grid{grid-template-columns:repeat(6,1fr);gap:12px;} }
@media(min-width:980px){
  .mn-card-body{padding:8px 9px 9px;}
  .mn-card-title{font-size:.82rem;}
  .mn-card-price .now{font-size:.95rem;}
}


/* ===== on-screen skeleton loader (while a page's data loads) ===== */
.mn-skel-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;}
.mn-skel-img{aspect-ratio:1/1;}
.mn-skel-img,.mn-skel-line,.mn-skel-btn{background:linear-gradient(90deg,#eef2f7 25%,#e2e8f0 37%,#eef2f7 63%);background-size:400% 100%;animation:mnShim 1.4s ease infinite;}
.mn-skel-line{height:11px;margin:9px 10px 0;border-radius:6px;}
.mn-skel-line.w90{width:90%}.mn-skel-line.w50{width:50%}.mn-skel-line.w35{width:35%}
.mn-skel-btn{height:32px;margin:10px 10px 12px;border-radius:10px;}


/* ============================================================================
   STOREFRONT REFINEMENTS (2026-06): sleeker hero, compact category tiles,
   filters as a right-side slide-in drawer (category lives inside it now).
   ============================================================================ */

/* --- Hero: cleaner, high-contrast CTA, no overlapping arrows on mobile --- */
.mn-hero{border-radius:16px;margin-top:10px;}
.mn-hero-overlay{background:transparent;}
.mn-hero-overlay h1{font-weight:800;line-height:1.15;text-shadow:0 2px 10px rgba(0,0,0,.45);}
.mn-hero-overlay .btn-primary{background:#fff;color:var(--ink);box-shadow:0 4px 14px rgba(0,0,0,.18);}
.mn-hero-overlay .btn-primary:hover{box-shadow:0 6px 18px rgba(0,0,0,.24);}
.mn-hero-arrow{width:32px;height:32px;}
@media(max-width:899px){
  .mn-hero{border-radius:14px;}
  .mn-hero-slides{aspect-ratio:auto;min-height:0;}
  .mn-hero-slide{min-height:150px;}
  .mn-hero-arrow{display:none;}            /* dots + auto-slide only on mobile (no overlap) */
  .mn-hero-overlay{padding:14px 16px;justify-content:flex-end;}
  .mn-hero-overlay h1{font-size:1.12rem;max-width:88%;}
  .mn-hero-overlay p{font-size:.76rem;max-width:92%;margin-top:4px;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
  .mn-hero-overlay .btn{margin-top:10px;padding:7px 14px;font-size:.8rem;}
  .mn-hero-dots{bottom:8px;}
}

/* --- Category tiles: compact (more per row, square thumbs) --- */
.mn-cat-grid{grid-template-columns:repeat(auto-fill,minmax(98px,1fr));gap:10px;}
.mn-cat-thumb{aspect-ratio:1/1;}
.mn-cat-tile .meta{padding:7px 9px;}
.mn-cat-tile .meta b{font-size:.78rem;}
.mn-cat-tile .meta span{font-size:.66rem;}
@media(min-width:700px){.mn-cat-grid{grid-template-columns:repeat(auto-fill,minmax(120px,138px));gap:12px;}}

/* --- Filters: right-side slide-in drawer on ALL widths (category + brand + price) --- */
.mn-facets-wrap{position:fixed;inset:0;z-index:230;background:rgba(15,23,42,.5);opacity:0;pointer-events:none;transition:opacity .25s;display:block;}
.mn-facets-wrap.open{opacity:1;pointer-events:auto;}
.mn-facets{position:absolute;top:0;right:0;bottom:0;left:auto;width:86%;max-width:360px;max-height:none;
  overflow-y:auto;border:none;border-radius:0;transform:translateX(100%);
  transition:transform .3s cubic-bezier(.4,0,.2,1);padding:0 0 88px;box-shadow:var(--sh-lg);}
.mn-facets-wrap.open .mn-facets{transform:translateX(0);}
.mn-facets-hd,.mn-facets-apply{display:flex !important;}
.mn-facets-hd{position:sticky;top:0;background:#fff;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line);z-index:2;}
.mn-facets-apply{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:12px 16px;gap:10px;}
.mn-facet-opt.mn-facet-sub{padding-left:18px;}
.mn-facet-opt.mn-facet-sub .nm{font-size:.82rem;color:var(--muted);}


/* --- Search: kill the browser's NATIVE clear (×) so only our custom ✕ shows
       (they were appearing together = double-X) --- */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none;}
input[type="search"]{-webkit-appearance:none;appearance:none;}

/* --- On the shop page, hide the header search (the page has its own search
       bar right below) so customers use that one, not two --- */
body.mn-on-shop .mn-hd-search,
body.mn-on-shop #mnSearchToggle,
body.mn-on-shop #mnMSearch{display:none !important;}


/* --- Filters rendered INSIDE the shared sidebar drawer (#mnDrawerBody) --- */
.mn-drawer-body .mn-facet{border-bottom:1px solid var(--line-2);}
.mn-drawer-body .mn-facet-hd{padding:13px 16px;font-weight:700;font-size:.92rem;}
.mn-drawer-body .mn-facet-body{padding:2px 16px 14px;}
.mn-facets-actions{display:flex;gap:10px;padding:14px 16px 18px;position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);}
.mn-facets-actions .btn{flex:1;}


/* --- Category list inside the filter drawer (shared look with the nav drawer) --- */
.mn-facet-lbl{padding:13px 16px 6px;font-weight:800;font-size:.92rem;color:var(--ink);}
.mn-drawer-cats{padding-bottom:4px;border-bottom:1px solid var(--line-2);}
.mn-drawer-cats .mn-drawer-link{cursor:pointer;}
.mn-drawer-link.on{background:var(--orange-soft);}
.mn-drawer-link.on .nm{color:var(--orange-700);font-weight:800;}
.mn-dl-ct{margin-left:auto;font-size:.72rem;color:var(--muted-2);font-weight:700;flex:0 0 auto;}
.mn-drawer-link.mn-dl-sub{padding-left:30px!important;font-size:.86rem;}


/* --- Compact the Price + Brand facet blocks in the filter drawer (categories
       are fine; only these two were too tall). They stay expanded at start. --- */
.mn-drawer-body .mn-facet-hd{padding:9px 16px 6px;font-size:.84rem;}
.mn-drawer-body .mn-facet-body{padding:0 16px 8px;}
.mn-drawer-body .mn-facet-opt{padding:3px 0;font-size:.84rem;}
.mn-drawer-body .mn-price-row{margin-top:2px;gap:6px;}
.mn-drawer-body .mn-price-row input{height:32px;font-size:.82rem;}
.mn-drawer-body #fpapply{margin-top:6px !important;padding:6px 12px;}
.mn-facets-actions{padding:10px 16px 14px;}


/* --- Unified drawer category block (home + shop): compact SQUARE list --- */
.mn-facet-lbl{padding:12px 16px 6px;font-weight:800;font-size:.92rem;color:var(--ink);letter-spacing:-.2px;}
.mn-drawer-cats{margin:0 12px 12px;padding:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 3px 12px rgba(15,23,42,.05);}
.mn-drawer-cats .mn-drawer-link{padding:5px 12px;border-bottom:1px solid var(--line-2);border-radius:0;gap:11px;transition:background .15s ease;}
.mn-drawer-cats .mn-drawer-link:last-child{border-bottom:none;}
.mn-drawer-cats .mn-drawer-link:hover{background:#f8fafc;}
.mn-drawer-cats .mn-drawer-link.on{background:var(--orange-soft);}
.mn-drawer-cats .mn-drawer-link.on .nm{color:var(--orange-700);font-weight:800;}
.mn-drawer-cats .nm{font-weight:600;font-size:.9rem;}
.mn-drawer-cats .mn-dl-ct{font-size:.75rem;color:var(--muted-2);font-weight:700;}
.mn-drawer-cats .mn-dl-ico{width:44px;height:44px;border-radius:0;overflow:hidden;background:#f1f5f9;border:1px solid var(--line-2);padding:0;flex:0 0 auto;}
.mn-drawer-cats .mn-dl-ico img{width:100%;height:100%;object-fit:cover;display:block;}
.mn-drawer-cats .mn-dl-ico .ph{font-size:1.2rem;}
.mn-drawer-cats .mn-drawer-link.mn-dl-sub{padding-left:22px;}
.mn-drawer-cats .mn-drawer-link.mn-dl-sub .mn-dl-ico{display:none;}


/* --- Auto-sliding image thumbnails (category tiles + product cards) --- */
.mn-slider{position:relative;width:100%;height:100%;}
.mn-slider img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease;}
.mn-slider img.on{opacity:1;}
.mn-cat-thumb{position:relative;}
.mn-cat-thumb .mn-slider{position:absolute;inset:0;}
.mn-cat-thumb .mn-slider img{object-fit:cover;}
.mn-card-imgwrap .mn-slider{position:absolute;inset:0;z-index:1;}
.mn-card-imgwrap .mn-slider img{object-fit:contain;}

/* mobile: slightly more compact category tiles */
@media(max-width:560px){
  .mn-cat-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;}
  .mn-cat-tile .meta{padding:6px 7px;}
  .mn-cat-tile .meta b{font-size:.74rem;line-height:1.2;}
  .mn-cat-tile .meta span{font-size:.64rem;}
}

/* --- Brand tiles (home "Shop by Brand"): smaller than categories, name only, centered --- */
.mn-cat-grid.mn-brand-grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px;}
@media(min-width:700px){.mn-cat-grid.mn-brand-grid{grid-template-columns:repeat(auto-fill,minmax(100px,112px));gap:12px;}}
@media(max-width:560px){.mn-cat-grid.mn-brand-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;}}
.mn-brand-tile .mn-cat-thumb{aspect-ratio:1/1;}
.mn-brand-tile .meta{padding:6px 6px;text-align:center;}
.mn-brand-tile .meta b{font-size:.72rem;line-height:1.2;}
@media(max-width:560px){.mn-brand-tile .meta b{font-size:.66rem;}}

/* --- Card text: darken the grey detail lines so MRP / GST / off are readable --- */
.mn-card-price .gst,.mn-card-body .gst{color:#334155!important;}      /* slate-700 */
.mn-card-price .mrp{color:#475569!important;}                          /* slate-600 strike */
.mn-card-brand{color:var(--orange-700);}

/* --- Filter drawer: category list scrolls, Price+Brand+actions PINNED at bottom --- */
#mnDrawerBody.mn-filter-host{padding:0;overflow:hidden;display:flex;}
.mn-filt{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;}
.mn-filt-scroll{flex:1 1 auto;overflow-y:auto;min-height:0;-webkit-overflow-scrolling:touch;}
.mn-filt-foot{flex:0 0 auto;border-top:1px solid var(--line);background:#fff;max-height:55%;overflow-y:auto;}
.mn-filt-scroll .mn-drawer-cats{margin-bottom:6px;}

/* --- Thumbnails show the FULL image (contain) — no crop, no zoom — fit the
       block edge-to-edge. Applies to category + brand tiles, sliders, and the
       drawer category icons. (Product CARD images were already contain.) --- */
.mn-slider img{object-fit:contain!important;}
.mn-cat-thumb img,.mn-cat-thumb .mn-slider img{object-fit:contain!important;}
.mn-drawer-cats .mn-dl-ico img{object-fit:contain!important;}

/* --- Brand row: exactly 4 tiles per row at every width --- */
.mn-cat-grid.mn-brand-grid{grid-template-columns:repeat(4,1fr)!important;gap:8px;}
@media(min-width:700px){.mn-cat-grid.mn-brand-grid{gap:12px;}}
.mn-brand-tile .mn-cat-thumb{aspect-ratio:1/1;}
@media(min-width:700px){.mn-brand-tile .mn-cat-thumb{aspect-ratio:auto;height:140px;}}

/* --- Slider shimmer: animated placeholder until the (first) image loads --- */
.mn-slider .mn-shim{position:absolute;inset:0;z-index:0;
  background:linear-gradient(90deg,#eef2f7 25%,#e2e8f0 37%,#eef2f7 63%);
  background-size:400% 100%;animation:mnShim 1.4s ease infinite;}
.mn-slider img{z-index:1;}
.mn-slider img.ld ~ .mn-shim{display:none;}

/* --- Collections / Range showcase (home, landscape cards) --- */
.mn-showcase-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
@media(min-width:620px){.mn-showcase-grid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:980px){.mn-showcase-grid{grid-template-columns:repeat(4,1fr);gap:16px;}}
.mn-showcase-card{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--r);
  overflow:hidden;box-shadow:var(--sh-sm);transition:transform .18s ease,box-shadow .2s ease;}
.mn-showcase-card:hover{transform:translateY(-3px);box-shadow:var(--sh);}
.mn-showcase-img{position:relative;aspect-ratio:4/3;background:#fff;overflow:hidden;}
.mn-showcase-img .mn-slider img{object-fit:cover!important;}   /* landscape range pics fill the card */
.mn-showcase-cap{padding:9px 11px;text-align:center;font-weight:700;font-size:.86rem;color:var(--ink);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
@media(max-width:560px){.mn-showcase-cap{font-size:.78rem;padding:7px 8px;}}

/* --- Collections showcase = horizontal LANDSCAPE carousel (not a tight grid) --- */
.mn-showcase-grid{display:flex!important;grid-template-columns:none!important;gap:12px;
  overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 10px;-webkit-overflow-scrolling:touch;}
.mn-showcase-card{flex:0 0 auto;width:82%;max-width:380px;scroll-snap-align:start;}
@media(min-width:700px){.mn-showcase-card{width:340px;}}
@media(min-width:980px){.mn-showcase-card{width:380px;}}
/* image stays 4:3 to exactly match the crop editor output (WYSIWYG) */

/* --- Showcase: fill the width EDGE-TO-EDGE (single card = full width, no wasted
       space), shorter 16:9 banner. Overrides the earlier carousel layout. --- */
.mn-showcase-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))!important;
  gap:12px;overflow:visible!important;padding:0!important;}
@media(min-width:980px){.mn-showcase-grid{gap:16px;}}
.mn-showcase-card{flex:none!important;width:auto!important;max-width:none!important;}
.mn-showcase-img{aspect-ratio:16/9!important;}
.mn-showcase-cap{padding:8px 11px;}

/* --- Brand tiles: restored to original (square on mobile, 140px on desktop) --- */
.mn-brand-tile .mn-cat-thumb{aspect-ratio:1/1!important;}
@media(min-width:700px){.mn-brand-tile .mn-cat-thumb{aspect-ratio:auto!important;height:140px!important;}}

/* === Unified image loader: shimmer + CENTERED round spinner, no alt-text flash ===
   The slider's first image is visible before it loads, so the browser was painting
   the alt text (big "TRAMONTINA" etc.) over the shimmer. Hide alt text on all store
   images and show a centered round spinner inside the shimmer until the image loads. */
.mn-slider img,.mn-card-imgwrap img{color:transparent!important;font-size:0!important;}
.mn-slider .mn-shim,.mn-card-imgwrap .shim{display:block;}
.mn-slider .mn-shim::after,.mn-card-imgwrap .shim::after{
  content:"";position:absolute;top:50%;left:50%;width:26px;height:26px;margin:-13px 0 0 -13px;
  border:3px solid rgba(148,163,184,.4);border-top-color:var(--orange,#ea580c);border-radius:50%;
  animation:mnRot .9s linear infinite;z-index:1;}
/* every generic round loader sits CENTERED in its block (never top/left corner) */
.mn-spin{margin-left:auto!important;margin-right:auto!important;}

/* --- Small thumbnail loader (cart / account lines): shimmer + centered spinner --- */
.mn-tl{position:relative;display:inline-block;overflow:hidden;background:#fff;flex:0 0 auto;}
.mn-tl::before{content:"";position:absolute;inset:0;z-index:0;
  background:linear-gradient(90deg,#eef2f7 25%,#e2e8f0 37%,#eef2f7 63%);background-size:400% 100%;animation:mnShim 1.4s ease infinite;}
.mn-tl::after{content:"";position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;z-index:1;
  border:2px solid rgba(148,163,184,.4);border-top-color:var(--orange,#ea580c);border-radius:50%;animation:mnRot .9s linear infinite;}
.mn-tl.done::before,.mn-tl.done::after{display:none;}
.mn-tl img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;border:0;border-radius:0;background:transparent;opacity:0;transition:opacity .3s ease;}
.mn-tl img.ld{opacity:1;}
.mn-cline .mn-tl{width:56px;height:56px;border:1px solid var(--line);border-radius:10px;}
.mn-od-line .mn-tl{width:36px;height:36px;border:1px solid var(--line);border-radius:8px;}

/* --- Showcase on desktop: 2 cards side-by-side (a single card no longer
       stretches full-width / huge). Mobile stays 1-up (untouched). 16:9 kept. --- */
@media(min-width:760px){
  .mn-showcase-grid{grid-template-columns:repeat(2,1fr)!important;}
}

/* --- Shop by Brand: small uniform tiles on desktop (was 4 huge). Mobile keeps 4-up. --- */
@media(min-width:700px){
  .mn-cat-grid.mn-brand-grid{grid-template-columns:repeat(auto-fill,minmax(104px,128px))!important;justify-content:start;gap:12px;}
  .mn-brand-tile .mn-cat-thumb{aspect-ratio:1/1!important;height:auto!important;}
}

/* --- Icon buttons with a tiny black label underneath (PDP wishlist/share) --- */
.btn-icon.mn-iconlbl{flex-direction:column;width:auto;min-width:46px;gap:1px;padding:5px 9px;line-height:1;}
.btn-icon.mn-iconlbl .ic{font-size:1.05rem;line-height:1;}
.btn-icon.mn-iconlbl .bil{font-size:.56rem;font-weight:800;color:#0f172a;text-transform:uppercase;letter-spacing:.2px;white-space:nowrap;}
#pFav .ic,#pFav2 .ic{color:var(--orange,#ea580c);}

/* --- Cart line: product name/image link to the product page (looks unchanged) --- */
.mn-cline a.cl-name-link{color:inherit;text-decoration:none;}
.mn-cline a.cl-name-link:hover b{color:var(--orange-700);}
.mn-cline a.cl-thumb-link{display:block;flex:0 0 auto;}

/* --- Shop by Brand: exactly 9 per row on wide desktop (6 on small desktop) --- */
@media(min-width:700px) and (max-width:1023px){
  .mn-cat-grid.mn-brand-grid{grid-template-columns:repeat(6,1fr)!important;}
}
@media(min-width:1024px){
  .mn-cat-grid.mn-brand-grid{grid-template-columns:repeat(9,1fr)!important;justify-content:stretch;}
}

/* --- Collections: full image, never cropped, edge-to-edge; slightly shorter
       on desktop by capping the card width (keeps 16:9, no crop). --- */
.mn-showcase-img .mn-slider img{object-fit:contain!important;}
@media(min-width:760px){
  .mn-showcase-grid{grid-template-columns:repeat(3,1fr)!important;justify-content:stretch;}
}

/* ================= ADMIN-CONFIGURABLE LAYOUT & THEME (CSS vars) =================
   These win the cascade (appended last, !important). Column counts, image fit,
   colours, radius etc. are driven by web_settings/appearance via store-core. */
.mn-cat-grid{grid-template-columns:repeat(var(--cat-cols-m,3),1fr)!important;}
@media(min-width:760px){.mn-cat-grid{grid-template-columns:repeat(var(--cat-cols-d,6),1fr)!important;}}
.mn-cat-grid.mn-brand-grid{grid-template-columns:repeat(var(--brand-cols-m,4),1fr)!important;}
@media(min-width:700px){.mn-cat-grid.mn-brand-grid{grid-template-columns:repeat(var(--brand-cols-d,9),1fr)!important;justify-content:stretch;}}
.mn-showcase-grid{grid-template-columns:repeat(var(--coll-cols-m,1),1fr)!important;}
@media(min-width:760px){.mn-showcase-grid{grid-template-columns:repeat(var(--coll-cols-d,3),1fr)!important;justify-content:stretch;}}
.mn-prod-grid,#mnGrid{grid-template-columns:repeat(var(--prod-cols-m,2),1fr)!important;}
@media(min-width:980px){.mn-prod-grid,#mnGrid{grid-template-columns:repeat(var(--prod-cols-d,4),1fr)!important;}}

/* image fit (collection cover photos vs product card images) */
.mn-showcase-img .mn-slider img{object-fit:var(--coll-fit,cover)!important;}
.mn-card-imgwrap img,.mn-card-imgwrap .mn-slider img{object-fit:var(--prod-fit,contain)!important;}

/* theme extras */
body{background:var(--page-bg,#f6f8fb);}
.mn-hd{background:var(--header-bg,#fff);}
.mn-card-price .now{color:var(--price-color,var(--ink));}
.mn-card-price .gst,.mn-card-body .gst{display:var(--gst-display,block);}
.mn-card-title{-webkit-line-clamp:var(--card-title-lines,2);}
.mn-hero{min-height:var(--hero-h,0px);}

/* smaller WISHLIST / SHARE labels (one size down) */
.btn-icon.mn-iconlbl .bil{font-size:.48rem;}

/* ============ ADVANCED THEME ENGINE — variable & class consumers ============ */
html{font-size:var(--base-font,16px);}
.mn-wrap{max-width:var(--wrap-max,1280px);}
.mn-sec{margin-top:var(--sec-gap,22px);}
.mn-prod-grid,#mnGrid{gap:var(--grid-gap,12px);}
@media(min-width:980px){.mn-prod-grid,#mnGrid{gap:var(--grid-gap,18px);}}
/* accent (links/badges) */
.mn-card-brand{color:var(--accent,var(--orange-700));}
a:hover{color:var(--link-color,inherit);}
/* header / footer colours */
.mn-hd{background:var(--header-bg,#fff);}
.mn-hd .mn-logo b,.mn-hd .mn-icon-btn,.mn-hd .mn-burger{color:var(--header-text,var(--ink));}
.mn-ft{background:var(--footer-bg,var(--ink));}
.mn-ft p,.mn-ft a{color:var(--footer-text,#94a3b8);}
/* price + mrp + off badge */
.mn-card-price .now{color:var(--price-color,var(--ink));font-size:var(--price-size,1rem);}
.mn-card-price .mrp{color:var(--mrp-color,var(--muted-2));}
.mn-card-off{background:var(--offbadge-bg,var(--orange));color:var(--offbadge-text,#fff);}
/* card look */
.mn-card,.mn-cat-tile,.mn-showcase-card{box-shadow:var(--card-shadow,var(--sh-sm));}
.mn-card-title{text-align:var(--card-title-align,left);font-size:var(--card-title-size,.86rem);}
.mn-cat-thumb,.mn-cat-tile{border-radius:var(--tile-radius,var(--r));}
.mn-card-imgwrap{aspect-ratio:var(--card-img-aspect,1/1);}
.mn-no-cardborder .mn-card,.mn-no-cardborder .mn-cat-tile,.mn-no-cardborder .mn-showcase-card{border-color:transparent;}
.mn-card-hover-zoom .mn-card:hover .mn-card-imgwrap img{transform:scale(1.06);transition:transform .35s ease;}
/* hero */
.mn-hero{border-radius:var(--hero-radius,0);}
.mn-hero-overlay{align-items:var(--hero-align,flex-start);text-align:var(--hero-text-align,left);}
.mn-hero-slide::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,var(--hero-overlay,0));pointer-events:none;}
.mn-hero-overlay{position:relative;z-index:1;}
.mn-hero-overlay h1,.mn-hero-overlay p{color:var(--hero-text,#fff);}
/* flat buttons */
.mn-flat-btn .btn-primary{background:var(--orange)!important;box-shadow:none!important;}
.btn-primary{color:var(--btn-text,#fff);}
/* announcement bar — STRICTLY one line; scrolls (marquee) if it overflows */
.mn-announce{background:var(--announce-bg,var(--orange));color:var(--announce-text,#fff);
  font-size:.8rem;font-weight:700;letter-spacing:.2px;height:32px;line-height:32px;
  overflow:hidden;white-space:nowrap;text-align:center;padding:0;}
.mn-announce-track{display:inline-flex;white-space:nowrap;}
.mn-announce-seg{display:inline-block;padding:0 16px;}
.mn-announce-seg.dup{display:none;}
.mn-announce-scroll{text-align:left;}
.mn-announce-scroll .mn-announce-track{animation:mnMarquee linear infinite;will-change:transform;}
.mn-announce-scroll .mn-announce-seg.dup{display:inline-block;}
@keyframes mnMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion: reduce){ .mn-announce-scroll .mn-announce-track{animation:none;} }
/* show / hide toggles */
.mn-hide-cardbrand .mn-card-brand{visibility:hidden;}
.mn-hide-offbadge .mn-card-off,.mn-hide-offbadge .mn-card-price .off{display:none!important;}
.mn-hide-qv .mn-card-qv{display:none!important;}
.mn-hide-cardfav .mn-card-fav{display:none!important;}
.mn-hide-gst .mn-card-price .gst,.mn-hide-gst .mn-card-body .gst{display:none!important;}
.mn-hide-search .mn-hd-search,.mn-hide-search #mnSearchToggle,.mn-hide-search #mnMSearch{display:none!important;}
.mn-hide-botnav .mn-botnav{display:none!important;}
.mn-hide-cartbar .mn-cartbar{display:none!important;}
.mn-upper-head .mn-sec-hd h2{text-transform:uppercase;letter-spacing:.4px;}

/* ============================================================================
   PDP FIX — the sticky "Add to Quote" bar is MOBILE-ONLY. On desktop the
   in-page action row (.mn-pdp-actions) is used, so the fixed bottom bar must
   stay hidden — otherwise it floats over "You may also like" and blocks the
   related cards' Add buttons + scrolling. (A later unconditional display:flex
   rule was overriding the original desktop hide; this re-asserts it last.)
   ========================================================================== */
@media(min-width:900px){
  .mn-pdp-stick{display:none !important;}
  body.mn-stickbar{padding-bottom:0 !important;}
}

/* ============================================================================
   MANAGE → APPEARANCE TAB — polished theme-editor UI (manage.html only)
   Grouped cards, labelled controls, a help note under every control, and
   on/off toggle switches. Scoped under .mg-* so it never touches the storefront.
   ========================================================================== */
.mg-app-intro{background:linear-gradient(135deg,#fff7ed,#ffffff);border:1px solid #fed7aa;
  border-radius:14px;padding:14px 16px;font-size:.84rem;color:#7c2d12;line-height:1.5;margin-bottom:18px;}
.mg-app-grp{background:#fff;border:1px solid #e8edf3;border-radius:14px;padding:13px 14px;margin-bottom:13px;
  box-shadow:0 2px 10px rgba(15,23,42,.04);}
.mg-app-grp-hd{display:flex;gap:11px;align-items:flex-start;margin-bottom:12px;padding-bottom:10px;border-bottom:1px dashed #e8edf3;}
.mg-app-grp-hd .ico{flex:0 0 auto;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;
  font-size:1.1rem;background:#f1f5f9;}
.mg-app-grp-hd .t h4{margin:0;font-size:1rem;font-weight:800;color:#0f172a;}
.mg-app-grp-hd .t p{margin:3px 0 0;font-size:.78rem;color:#64748b;line-height:1.45;}
.mg-app-swatches{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px;}
.mg-app-swatches .lbl{font-size:.76rem;color:#64748b;font-weight:600;margin-right:2px;}
.mg-app-swatches .app-swatch{width:26px;height:26px;border-radius:50%;border:2px solid #fff;
  box-shadow:0 0 0 1px #cbd5e1;cursor:pointer;transition:transform .12s;}
.mg-app-swatches .app-swatch:hover{transform:scale(1.15);}
.mg-app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:11px 12px;}
.mg-app-full{grid-column:1 / -1;}
.mg-app-fld{display:flex;flex-direction:column;gap:5px;min-width:0;}
.mg-app-lab{font-size:.8rem;font-weight:700;color:#1e293b;}
.mg-app-hint{font-size:.71rem;color:#94a3b8;line-height:1.4;}
.mg-app-inp{width:100%;padding:8px 10px;border:1px solid #d8e0e9;border-radius:9px;font-size:.84rem;background:#fff;color:#0f172a;}
.mg-app-inp:focus{outline:none;border-color:var(--orange,#ea580c);box-shadow:0 0 0 3px rgba(234,88,12,.12);}
.mg-app-color{display:flex;gap:7px;align-items:center;}
.mg-app-color .mg-app-sw{width:44px;height:38px;padding:2px;border:1px solid #d8e0e9;border-radius:9px;cursor:pointer;background:#fff;}
.mg-app-color .mg-app-hex{flex:1;min-width:0;padding:8px 10px;border:1px solid #d8e0e9;border-radius:9px;font-size:.82rem;}
/* toggle fields */
.mg-app-bool{flex-direction:row;align-items:flex-start;gap:11px;cursor:pointer;background:#f8fafc;
  border:1px solid #eef2f7;border-radius:11px;padding:11px 12px;}
.mg-app-bool .mg-app-boolmain{display:flex;flex-direction:column;gap:3px;}
.mg-sw{flex:0 0 auto;position:relative;width:42px;height:24px;display:inline-block;margin-top:1px;}
.mg-sw input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:2;}
.mg-sw-track{position:absolute;inset:0;background:#cbd5e1;border-radius:999px;transition:background .18s;}
.mg-sw-track::after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;
  border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .18s;}
.mg-sw input:checked + .mg-sw-track{background:var(--orange,#ea580c);}
.mg-sw input:checked + .mg-sw-track::after{transform:translateX(18px);}
@media(max-width:520px){ .mg-app-grid{grid-template-columns:1fr 1fr;} }
@media(max-width:330px){ .mg-app-grid{grid-template-columns:1fr;} }
.mg-app-loading{padding:40px 12px;text-align:center;color:#94a3b8;font-size:.9rem;}
/* trust-strip editor rows — aligned grid (icon + title on row 1, subtext full-width on phones) */
.mg-trust-row{display:grid;grid-template-columns:54px 1fr 1fr;gap:7px;margin-bottom:7px;align-items:center;}
.mg-trust-row input{padding:8px 9px;border:1px solid #d8e0e9;border-radius:9px;font-size:.84rem;min-width:0;background:#fff;color:#0f172a;}
.mg-trust-row input:focus{outline:none;border-color:var(--orange,#ea580c);box-shadow:0 0 0 3px rgba(234,88,12,.12);}
.mg-trust-row .mg-trust-ico{text-align:center;padding-left:4px;padding-right:4px;}
@media(max-width:560px){
  .mg-trust-row{grid-template-columns:54px 1fr;}
  .mg-trust-row .mg-trust-sub{grid-column:1 / -1;}
}

/* extra theme-engine consumers (section title size, card padding, page side padding) */
/* FLUID section titles: scale smoothly with screen width so they never look huge
   on small screens or wrap awkwardly. The manage "Section title size" sets the MAX. */
.mn-sec-hd h2{font-size:clamp(1.15rem, 4.2vw, var(--sec-title-size,1.6rem));}
.mn-sec-hd h2 small{font-size:clamp(.72rem, 2.4vw, .85rem);}
.mn-card-body{padding:var(--card-pad,10px) calc(var(--card-pad,10px) + 1px) calc(var(--card-pad,10px) + 2px);}
.mn-wrap{padding-left:var(--wrap-pad,16px);padding-right:var(--wrap-pad,16px);}

/* FLUID, fit-to-area tile labels — category + brand names auto-shrink and wrap to
   2 lines so long names (TRAMONTINA / WONDERCHEF) are never hard-cut. The manage
   "Tile label size" sets the MAX. */
.mn-cat-tile .meta b{
  font-size:clamp(.7rem, 3vw, var(--tile-label,.86rem));
  white-space:normal; word-break:break-word; line-height:1.18;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  min-height:2.36em;   /* reserve 2 lines so every category tile is the same height */
}
/* Brand names: ONE line, smaller uniform base + ellipsis fallback; JS
   (MNStore.fitBrandLabels) then sets ONE shared size so the longest fits and all
   match. nowrap so words never break mid-word. */
.mn-brand-tile .meta b{
  font-size:var(--tile-label,.64rem);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; display:block; line-height:1.2;
}
/* product card titles also scale a touch with width (kept within the line-clamp). */
.mn-card-title{font-size:clamp(.78rem, 2.6vw, var(--card-title-size,.86rem));}

/* hero banner shimmer while the background image loads */
.mn-hero-shim{position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#eef2f7 25%,#e2e8f0 37%,#eef2f7 63%);background-size:400% 100%;animation:mnShim 1.4s ease infinite;}
.mn-hero-slide.img-ok .mn-hero-shim{display:none;}
.mn-hero-slide.has-img:not(.img-ok)::after{display:none;}   /* no dark overlay over the shimmer */

/* Hero "Height (px)": BLANK = the original responsive look (an aspect-ratio that
   scales nicely with screen width — the recommended default, shows the full image).
   A NUMBER = that exact fixed pixel height. When blank, --hero-h is undefined so
   height resolves to auto and the aspect-ratio takes over; a number sets a hard height. */
.mn-hero-slides{height:var(--hero-h); min-height:0;}
@media(max-width:899px){
  .mn-hero-slide{min-height:var(--hero-h,150px);}
}

/* ===== Mobile: edge-to-edge minimal spacing + kill the left/right page slide =====
   overflow-x:hidden stops any stray element from making the whole page scroll
   sideways on phones; inner scrollers (e.g. the Collections carousel) keep their
   own scroll. Side padding is trimmed so content uses the full width. */
html, body { overflow-x: hidden; max-width: 100%; }
@media (max-width: 560px) {
  .mn-wrap { padding-left: 9px; padding-right: 9px; }
  .mn-sec { margin-top: 18px; }
  .mn-cat-grid { gap: 8px; }
}
/* brand tile labels: centred + single line (JS gives them ONE uniform size) */
.mn-brand-tile .meta { text-align: center; }
.mn-brand-tile .meta b { text-align: center; }

/* ===================== SLEEK UNIFORM HEADER (2026-06, v2 — fits every device) =====
   ONE authoritative header block, appended last so it wins the cascade over every
   earlier header + theme-engine rule. Layout contract that holds from a 320px phone
   up to desktop:
     • burger + action icons are flex:0 0 auto → they NEVER shrink or clip;
     • the logo block is the ONLY flexible item (min-width:0) and its brand text +
       tagline ellipsis-truncate instead of pushing the icons off-screen;
     • on desktop the search bar takes the middle and the logo only as wide as needed.
   Heights/sizes/padding are tuned per breakpoint for a slim, consistent bar. */
:root{ --hd-h:56px; }
.mn-hd-bar{ gap:8px;min-width:0; }
.mn-burger,.mn-icon-btn{ width:38px;height:38px;border-radius:10px;flex:0 0 auto; }
.mn-burger svg,.mn-icon-btn svg{ width:19px;height:19px; }
.mn-logo{ gap:8px;flex:0 1 auto;min-width:0;overflow:hidden; }
.mn-logo img{ width:30px;height:30px;border-radius:8px;flex:0 0 auto; }
.mn-logo>span{ min-width:0;overflow:hidden; }
.mn-logo b{ font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%; }
.mn-logo small{ white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%; }
.mn-hd-actions{ gap:5px;flex:0 0 auto; }
/* slim count badge tuned to the smaller cart icon */
.mn-icon-btn .mn-count{ min-width:16px;height:16px;font-size:.62rem;top:-4px;right:-4px; }

@media(min-width:900px){
  :root{ --hd-h:60px; }
  .mn-hd-search{ margin:0 6px; }            /* breathing room around the centre search */
}
@media(max-width:899px){
  /* tablet / large phone — burger shows, full search bar hidden; keep it tidy */
  .mn-hd-bar{ gap:7px; }
}
@media(max-width:640px){
  :root{ --hd-h:52px; }
  .mn-wrap{ padding-left:12px;padding-right:12px; }   /* sleeker side padding, all pages */
  .mn-hd-bar{ gap:6px; }
  .mn-burger,.mn-icon-btn{ width:34px;height:34px;border-radius:9px; }
  .mn-burger svg,.mn-icon-btn svg{ width:17px;height:17px; }
  .mn-logo{ gap:6px; }
  .mn-logo img{ width:26px;height:26px;border-radius:6px; }
  .mn-logo b{ font-size:.9rem;letter-spacing:-.2px; }
  .mn-logo small{ display:none; }
  .mn-hd-actions{ gap:3px; }
}
@media(max-width:360px){
  /* very small phones — trim a touch more so all icons + the full name fit */
  .mn-hd-bar{ gap:5px; }
  .mn-burger,.mn-icon-btn{ width:32px;height:32px; }
  .mn-burger svg,.mn-icon-btn svg{ width:16px;height:16px; }
  .mn-logo img{ width:24px;height:24px; }
  .mn-logo b{ font-size:.84rem; }
}

/* ===================== CARD CTL + CART BAR + TOAST-UNDO SLIM PASS (2026-06) =====
   Appended last → wins the cascade. Slims the bulky card "Add" button + qty
   stepper (and stops the qty NUMBER from clipping by hiding the native number
   spinners), trims the floating "View Cart" bar's vertical padding, and styles
   the new add-to-cart Undo toast + the cart-count pop animation. */
.mn-card .mn-card-ctl .btn{ padding:7px 12px;font-size:.82rem;border-radius:9px; }
.mn-card .mn-card-step{ height:32px;border-radius:9px; }
.mn-card .mn-card-step button{ flex:0 0 32px;font-size:1.05rem; }
/* qty number must NEVER clip — kill the native number-input spinners (they ate
   the right edge of 2-3 digit quantities) and give the field a touch of room. */
.mn-step-inp::-webkit-outer-spin-button,.mn-step-inp::-webkit-inner-spin-button{ -webkit-appearance:none;margin:0; }
.mn-step-inp{ -moz-appearance:textfield;appearance:textfield; }
.mn-card-step .mn-step-inp{ font-size:.82rem;padding:0 2px; }

/* floating "View Cart" bar — sleeker, less up/down padding */
.mn-cartbar{ padding:5px 10px; }
.mn-cartbar-inner{ padding:8px 16px;border-radius:13px; }
.mn-cartbar-inner .l{ font-size:.74rem; }
.mn-cartbar-inner .l b{ font-size:.9rem; }
.mn-cartbar-inner .r{ font-size:.88rem; }
@media(max-width:899px){ body.mn-cartbar-on{ padding-bottom:118px; } }

/* add-to-cart Undo toast */
#mnToast.has-act{ display:flex;align-items:center;gap:14px;text-align:left;padding:10px 12px 10px 18px; }
.mn-toast-act{ background:rgba(255,255,255,.16);color:#fff;border:1.5px solid rgba(255,255,255,.55);
  border-radius:9px;padding:5px 14px;font-weight:800;font-size:.82rem;cursor:pointer;flex:0 0 auto;letter-spacing:.3px; }
.mn-toast-act:active{ transform:scale(.96); }

/* cart-count pop on change */
@keyframes mnCountPop{ 0%{transform:scale(1)} 40%{transform:scale(1.5)} 100%{transform:scale(1)} }
.mn-count.pop{ animation:mnCountPop .36s ease; }

/* ===================== HOME HERO — crossfade on every width (2026-06) =========
   Desktop already crossfades (absolute slides + opacity). On mobile the slides
   were display:none-toggled, so there was no fade. Make them crossfade on mobile
   too: absolute stacking + opacity transition, with the slides box keeping a
   definite height (the fixed height from the Home tab is applied inline by
   store-home.js; otherwise this aspect-ratio gives it a box) so it never collapses. */
@media(max-width:899px){
  .mn-hero-slides{ position:relative; aspect-ratio:16/9; min-height:0; }
  .mn-hero-slide{ position:absolute; inset:0; min-height:0; opacity:0; transition:opacity .7s ease; }
  .mn-hero-slide:not(.active){ display:block; }   /* keep in flow for the fade (was display:none) */
  .mn-hero-slide.active{ opacity:1; }
}

/* Desktop hero: the banner shape is driven by its aspect-ratio (default 1600×550),
   so no height cap is needed — it shows the full uploaded banner edge-to-edge. (2026-06) */

/* PDP desktop: cap the product image column so it isn't oversized/bulky — the
   image stays a sensible ~440px, the details take the rest. Mobile unchanged. (2026-06) */
@media(min-width:900px){
  .mn-pdp{ grid-template-columns:minmax(0,440px) 1fr; }
}

/* ===================== TILE GAP TIGHTENING (2026-06) ==========================
   Appended last → wins the cascade. The category/brand column COUNTS are fixed
   (var-driven repeat(N,1fr)), so a SMALLER grid gap + a SMALLER page side padding
   + tighter label padding all make each tile WIDER → the label text gets more
   room and stops truncating ("Commercial…", "Juicer Mixer…", "WONDERCH…"). */
.mn-cat-grid{ gap:5px!important; }
@media(min-width:700px){ .mn-cat-grid{ gap:9px!important; } }
@media(min-width:900px){ .mn-cat-grid{ gap:9px!important; } }
@media(max-width:560px){ .mn-cat-grid{ gap:4px!important; } }

.mn-cat-grid.mn-brand-grid{ gap:5px!important; }
@media(min-width:700px){ .mn-cat-grid.mn-brand-grid{ gap:7px!important; } }
@media(max-width:560px){ .mn-cat-grid.mn-brand-grid{ gap:4px!important; } }

/* page side padding (left/right) trimmed on phones so the tile row uses more
   width — overrides the earlier ≤560 (9px) and the header ≤640 (12px) rules. */
@media(max-width:640px){ .mn-wrap{ padding-left:7px!important; padding-right:7px!important; } }
@media(max-width:560px){ .mn-wrap{ padding-left:6px!important; padding-right:6px!important; } }

/* tile label padding trimmed → the name gets more horizontal room before it
   wraps/clips (category names wrap to 2 lines; brand names stay 1-line). */
.mn-cat-tile .meta{ padding-left:5px!important; padding-right:5px!important; }
@media(max-width:560px){ .mn-cat-tile .meta{ padding-left:4px!important; padding-right:4px!important; } }
.mn-brand-tile .meta{ padding-left:3px!important; padding-right:3px!important; }

/* manage Appearance — image upload field (e.g. "All Products" tile image) */
.mg-app-img{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.mg-app-img-prev{position:relative;width:56px;height:56px;border-radius:10px;overflow:hidden;border:1px solid var(--line,#e2e8f0);flex:0 0 auto;background:#f8fafc;}
.mg-app-img-prev img{width:100%;height:100%;object-fit:cover;display:block;}
.mg-app-img-x{position:absolute;top:2px;right:2px;width:18px;height:18px;border:none;border-radius:50%;background:rgba(15,23,42,.72);color:#fff;font-size:11px;line-height:1;cursor:pointer;padding:0;}
.mg-app-img-busy{font-size:.74rem;color:var(--muted,#64748b);}

/* Home section toggles (2026-06) — hide a section DEACTIVATED in the admin panel
   before first paint. The class is applied by the inline <head> bootstrap (from
   the cached mn_store_cls), so a disabled section never flashes on screen. */
html.mn-hide-cats #mnCatSec,
html.mn-hide-featured #mnFeaturedSec,
html.mn-hide-brands #mnBrandSec,
html.mn-hide-showcase #mnShowcaseSec,
html.mn-hide-trust #mnTrust { display:none !important; }

/* shop center loading spinner (shown until products render) */
.mn-grid-loading{grid-column:1/-1;display:flex;align-items:center;justify-content:center;padding:60px 0;min-height:40vh;}
.mn-spin-lg{width:44px;height:44px;border-radius:50%;border:4px solid rgba(234,88,12,.18);border-top-color:#ea580c;animation:mnSpinLg .8s linear infinite;}
@keyframes mnSpinLg{to{transform:rotate(360deg)}}

/* --- Hidden-price "on request" remark (quote-only catalogue, 2026-06) --- */
.mn-price-req{display:inline-block;font-weight:800;font-size:.82rem;color:#0f766e;
  background:rgba(16,185,129,.10);border:1px solid rgba(16,185,129,.30);
  border-radius:999px;padding:2px 10px;line-height:1.35;}
.mn-card-price.req,.mn-qv-price.req,.mn-pdp-price.req{display:block;margin-top:auto;}
.mn-pdp-price.req .mn-price-req{font-size:1rem;padding:4px 14px;}
.mn-qv-price.req .mn-price-req{font-size:.9rem;}


/* ===== type-ahead search suggestions (Amazon/Flipkart style) 2026-06 ===== */
.mn-suggest{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:300;background:#fff;
  border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 34px rgba(15,23,42,.16);
  overflow:hidden;max-height:62vh;overflow-y:auto;-webkit-overflow-scrolling:touch;}
.mn-sug-item{display:flex;align-items:center;gap:10px;padding:8px 11px;text-decoration:none;
  color:var(--ink);border-bottom:1px solid #f1f5f9;}
.mn-sug-item:hover,.mn-sug-item:active{background:#f8fafc;}
.mn-sug-item img{width:42px;height:42px;border-radius:8px;object-fit:contain;background:#fff;
  border:1px solid #f1f5f9;flex:0 0 auto;}
.mn-sug-tx{min-width:0;display:flex;flex-direction:column;}
.mn-sug-tx b{font-size:.84rem;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mn-sug-tx small{font-size:.66rem;font-weight:700;letter-spacing:.3px;text-transform:uppercase;color:var(--orange-700);}
.mn-sug-all{display:block;padding:10px 12px;text-align:center;font-size:.8rem;font-weight:700;
  color:var(--orange-700);text-decoration:none;background:#fff;}
.mn-sug-all:hover,.mn-sug-all:active{background:#fff7ed;}

/* product card: clicking the IMAGE opens the PDP — let image-area clicks fall
   through to the invisible .mn-card-imglink (the ♡/👁 buttons sit OUTSIDE the
   image wrap, so they keep working). */
.mn-card-imgwrap .mn-slider,.mn-card-imgwrap > img{pointer-events:none;}


/* ===== mobile search overlay (#mnMSearch) — compact + no overflow (2026-06) =====
   The input lacked min-width:0, so it refused to shrink and pushed the "Close"
   button off the right edge. min-width:0 lets it shrink; sizes trimmed sleeker. */
.mn-msearch{gap:6px;padding:6px 0 8px;}
.mn-msearch input{flex:1 1 auto;min-width:0;height:36px;border-radius:10px;padding:0 34px 0 11px;font-size:.85rem;}
.mn-msearch #mnMSearchClose{flex:0 0 auto;padding:0 10px;height:36px;font-size:.78rem;font-weight:700;white-space:nowrap;border-radius:9px;color:var(--muted);}
.mn-msearch .mn-search-clear{right:64px;width:20px;height:20px;}
.mn-msearch .mn-search-clear svg{width:11px;height:11px;}


/* ===== sleeker shop + PDP search bar (2026-06) ===== */
.mn-shop-search{height:38px;border-radius:10px;box-shadow:none;}
.mn-shop-search input{font-size:.86rem;}
.mn-shop-search svg{width:16px;height:16px;}
.mn-shop-search .mn-search-clear{width:20px;height:20px;}
.mn-shop-sticky{padding:6px 0 4px;}


/* ===== PDP main image: slightly shorter on phones (less chunky, more of the
   page visible below) — desktop two-column layout keeps its 1:1 (2026-06) ===== */
@media(max-width:899px){
  .mn-gallery .main{aspect-ratio:1/0.9;}
}


/* ===== breadcrumb: keep on ONE line; the current/last item (e.g. the product
   name) truncates with … when too long (2026-06) ===== */
.mn-bc{flex-wrap:nowrap;overflow:hidden;}
.mn-bc a,.mn-bc .sep,.mn-bc .mn-bc-cnt{flex:0 0 auto;white-space:nowrap;}
.mn-bc b{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}


/* ===== PDP sticky bar — icon-only emoji + all 3 COMPACT (no padding) (2026-06) ===== */
.mn-iconlbl .bil{display:none;}
.mn-pdp-stick{padding:4px 11px;gap:6px;align-items:center;}
.mn-pdp-stick .btn,.mn-pdp-stick .btn-block,.mn-pdp-stick .mn-pdp-step{height:29px!important;min-height:0!important;}
.mn-pdp-stick .btn-primary.btn-block{border-radius:8px;font-size:.85rem;padding:0 12px;}
.mn-pdp-stick .mn-pdp-step{border-radius:8px;}
.mn-pdp-stick .mn-pdp-step button{width:36px;font-size:1rem;}
.mn-pdp-stick .mn-pdp-step span{font-size:.88rem;}
.mn-pdp-stick .btn-icon{width:29px!important;height:29px!important;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0!important;}
.mn-pdp-stick .btn-icon .ic{font-size:.95rem;line-height:1;}
.mn-pdp-actions .btn-icon{display:flex;align-items:center;justify-content:center;}
.mn-pdp-actions .btn-icon .ic{font-size:1.05rem;line-height:1;}


/* ===== manage.html Analytics dashboard (2026-06) ===== */
.mg-an-range{padding:7px 10px;border:1px solid var(--line,#e2e8f0);border-radius:8px;font-weight:700;font-size:.8rem;background:#fff;}
.mg-an-load,.mg-an-empty{padding:18px;color:#94a3b8;font-weight:700;font-size:.85rem;text-align:center;}
.mg-an-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px;}
@media(max-width:560px){.mg-an-kpis{grid-template-columns:repeat(2,1fr);}}
.mg-an-kpi{background:#f8fafc;border:1px solid #eef2f7;border-radius:10px;padding:10px;}
.mg-an-kpi .k-l{font-size:.6rem;font-weight:800;color:#94a3b8;text-transform:uppercase;letter-spacing:.3px;}
.mg-an-kpi .k-v{font-size:1.25rem;font-weight:900;margin-top:2px;}
.mg-an-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:12px;margin-bottom:12px;box-shadow:0 1px 3px rgba(15,23,42,.04);}
.mg-an-h{font-size:.7rem;font-weight:800;color:#475569;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px;}
.mg-an-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media(max-width:720px){.mg-an-grid{grid-template-columns:1fr;}}
.mg-an-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-top:1px solid #f1f5f9;font-size:.82rem;}
.mg-an-row:first-child{border-top:none;}
.mg-an-row .r-rank{width:20px;height:20px;flex:0 0 20px;background:#eef2ff;color:#4338ca;border-radius:50%;font-size:.66rem;font-weight:800;display:flex;align-items:center;justify-content:center;}
.mg-an-row .r-nm{flex:1;min-width:0;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mg-an-row .r-v{font-weight:800;color:#2563eb;}
.mg-an-brk{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:.78rem;}
.mg-an-brk .b-l{flex:0 0 92px;font-weight:700;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mg-an-brk .b-bar{flex:1;height:8px;background:#eef2f7;border-radius:99px;overflow:hidden;}
.mg-an-brk .b-bar span{display:block;height:100%;background:linear-gradient(90deg,#60a5fa,#2563eb);border-radius:99px;}
.mg-an-brk .b-v{flex:0 0 auto;font-weight:700;color:#64748b;font-size:.72rem;white-space:nowrap;}


/* --- Language picker inside the storefront drawer (2026-06, multi-language) --- */
.mn-lang-box{margin:8px 12px 12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 3px 12px rgba(15,23,42,.05);}
.mn-lang-lbl{font-size:.7rem;font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:var(--muted-2);margin-bottom:8px;display:flex;align-items:center;gap:5px;}
.mn-lang-pills{display:flex;flex-wrap:wrap;gap:6px;}
.mn-lang-pill{flex:1 1 calc(50% - 6px);min-width:80px;padding:8px 6px;border:1.5px solid var(--line);border-radius:999px;background:#f8fafc;font-weight:700;font-size:.82rem;color:var(--ink);cursor:pointer;transition:all .15s ease;}
.mn-lang-pill:hover{border-color:var(--orange-300,#fed7aa);}
.mn-lang-pill.on{background:var(--orange-soft,#fff7ed);border-color:var(--orange-600,#ea580c);color:var(--orange-700,#c2410c);}
