:root{
  --bg:#fbfaf8;
  --surface:#ffffff;
  --ink:#171717;
  --muted:#77716b;
  --line:#e9e3dd;
  --soft:#f2ece7;
  --accent:#7a4c3a;
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"DM Sans",sans-serif}
button,input,select{font:inherit}
button{cursor:pointer}
a{text-decoration:none;color:inherit}
.announcement{min-height:34px;padding:8px 16px;background:#171717;color:#fff;display:flex;gap:10px;align-items:center;justify-content:center;font-size:12px;letter-spacing:.04em;flex-wrap:wrap}
.site-header{position:sticky;top:0;z-index:20;background:rgba(251,250,248,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(233,227,221,.7)}
.header-inner{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:16px 24px}
.brand{display:flex;align-items:center;gap:11px}
.brand-mark{width:42px;height:42px;border-radius:50%;background:#171717;color:white;display:grid;place-items:center;font-family:"Playfair Display",serif;font-size:15px}
.brand-name{font-weight:700}
.brand-sub{font-size:10px;letter-spacing:.22em;color:var(--muted)}
.header-actions{display:flex;gap:8px}
.icon-btn,.cart-btn,.close-btn{border:1px solid var(--line);background:white;color:var(--ink)}
.icon-btn{width:44px;height:44px;border-radius:50%;font-size:22px}
.cart-btn{height:44px;padding:0 16px;border-radius:999px;font-weight:600}
.cart-btn span{display:inline-grid;place-items:center;background:#171717;color:white;border-radius:50%;min-width:21px;height:21px;margin-left:5px;font-size:11px}
.hero{max-width:1240px;margin:26px auto 0;padding:0 24px;display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.hero-copy,.hero-visual{min-height:520px;border-radius:34px;padding:54px}
.hero-copy{background:#ece3dc;display:flex;flex-direction:column;justify-content:center}
.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:700;color:var(--muted);margin:0 0 12px}
h1,h2{font-family:"Playfair Display",serif}
h1{font-size:clamp(54px,7vw,92px);line-height:.92;margin:0 0 24px;letter-spacing:-.045em}
.hero-text{max-width:500px;font-size:17px;line-height:1.7;color:#5e5853}
.primary-btn,.secondary-btn,.whatsapp-btn{border:none;border-radius:999px;padding:14px 20px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.primary-btn{background:#171717;color:white;width:max-content}
.primary-btn.full{width:100%;margin-top:24px}
.secondary-btn{background:var(--soft);color:var(--ink)}
.whatsapp-btn{background:#171717;color:white;width:100%;padding:16px}
.hero-visual{background:linear-gradient(145deg,#b9c1ad,#e6dfd4);position:relative;overflow:hidden;display:grid;place-items:center}
.hero-visual p{position:absolute;left:34px;bottom:25px;font-size:12px;letter-spacing:.18em}
.lens-disc{width:min(70%,390px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 50%,#141414 0 8%,#6c8472 9% 23%,#b6c2b3 24% 42%,rgba(255,255,255,.45) 43% 50%,rgba(255,255,255,.1) 51% 64%,rgba(255,255,255,.45) 65%);box-shadow:0 30px 80px rgba(0,0,0,.12);position:relative}
.lens-ring{position:absolute;inset:15%;border:1px solid rgba(255,255,255,.5);border-radius:50%}
.hero-orb{position:absolute;border-radius:50%;filter:blur(2px);background:rgba(255,255,255,.26)}
.orb-one{width:220px;height:220px;top:-50px;right:-30px}
.orb-two{width:120px;height:120px;bottom:80px;left:-20px}
.benefits{max-width:1240px;margin:22px auto;padding:0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px}
.benefits div{background:white;border:1px solid var(--line);padding:25px 26px;display:flex;flex-direction:column;gap:4px}
.benefits div:first-child{border-radius:18px 0 0 18px}.benefits div:last-child{border-radius:0 18px 18px 0}
.benefits span{color:var(--muted);font-size:13px}
.shop-section{max-width:1240px;margin:100px auto;padding:0 24px}
.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:26px}
.section-heading h2,.how-order h2,.cart-header h2{font-size:clamp(34px,5vw,54px);margin:0;letter-spacing:-.025em}
.results-text{color:var(--muted);font-size:13px}
.shop-tools{display:grid;grid-template-columns:1fr 220px;gap:12px}
.search-box{height:52px;background:white;border:1px solid var(--line);border-radius:999px;display:flex;align-items:center;gap:10px;padding:0 18px}
.search-box input{width:100%;border:none;outline:none;background:transparent}
.shop-tools select,.modal select{height:52px;background:white;border:1px solid var(--line);border-radius:999px;padding:0 16px;outline:none}
.category-scroller{display:flex;gap:9px;overflow:auto;padding:18px 0 24px;scrollbar-width:none}
.category-scroller::-webkit-scrollbar{display:none}
.category-chip{white-space:nowrap;border:1px solid var(--line);background:white;border-radius:999px;padding:10px 15px;color:#59534e}
.category-chip.active{background:#171717;color:#fff;border-color:#171717}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 14px}
.product-card{cursor:pointer}
.product-image{aspect-ratio:4/5;border-radius:20px;background:var(--soft);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.product-image::before{content:"";width:58%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#1c1c1c 0 11%,var(--iris,#8d9a88) 12% 35%,rgba(255,255,255,.28) 36% 51%,rgba(255,255,255,.04) 52%);opacity:.85;box-shadow:0 20px 60px rgba(0,0,0,.1)}
.product-image.bag::before{width:55%;height:45%;border-radius:18px 18px 25px 25px;background:var(--iris,#8d6f5d);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.product-image.beauty::before{width:35%;height:65%;border-radius:999px;background:linear-gradient(#f8d7d4,var(--iris,#b47876));}
.badge{position:absolute;top:12px;left:12px;background:white;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.04em}
.quick-add{position:absolute;right:12px;bottom:12px;width:40px;height:40px;border-radius:50%;border:none;background:white;font-size:20px}
.product-info{padding:12px 4px 0}
.product-category{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.product-title{font-size:15px;font-weight:600;margin:5px 0 6px;line-height:1.35}
.product-price{font-weight:700}
.how-order{max-width:1192px;margin:110px auto 70px;background:#171717;color:white;border-radius:34px;padding:60px}
.how-order .eyebrow{color:#aaa}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:46px}
.steps span{color:#aaa;font-size:12px}.steps h3{font-size:24px;margin:10px 0 8px}.steps p{color:#bbb;margin:0;line-height:1.6}
footer{max-width:1240px;margin:auto;padding:28px 24px 50px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted)}
footer .brand-name{color:var(--ink)}
.footer-note{text-align:right;font-size:13px}
.modal-backdrop,.drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:40}
.modal-backdrop{display:grid;place-items:center;padding:20px}
.modal{position:relative;background:var(--bg);width:min(900px,100%);border-radius:28px;overflow:hidden}
.product-modal-card{display:grid;grid-template-columns:1fr 1fr}
.modal-product-image{min-height:580px;background:#eee8e2;display:grid;place-items:center}
.modal-product-image::before{content:"";width:62%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#1b1b1b 0 10%,var(--iris,#859085) 11% 34%,rgba(255,255,255,.25) 35% 50%,rgba(255,255,255,.08) 51%)}
.modal-content{padding:60px 42px 40px}
.modal-content h2{font-size:42px;line-height:1.05;margin:7px 0 14px}
.modal-price{font-size:19px;font-weight:700}.modal-desc{color:var(--muted);line-height:1.65}
.field-label{display:block;font-size:12px;font-weight:700;margin:18px 0 8px}
.modal select{width:100%}
.qty-control{display:grid;grid-template-columns:45px 1fr 45px;height:48px;border:1px solid var(--line);background:white;border-radius:999px;overflow:hidden}
.qty-control button{border:none;background:transparent;font-size:20px}
.qty-control input{border:none;outline:none;text-align:center;width:100%}
.close-btn{width:40px;height:40px;border-radius:50%;font-size:22px;display:grid;place-items:center}
.modal>.close-btn{position:absolute;top:14px;right:14px;z-index:2}
.cart-drawer{position:fixed;z-index:50;top:0;right:0;width:min(440px,100%);height:100dvh;background:var(--bg);transform:translateX(102%);transition:.25s ease;display:flex;flex-direction:column;padding:26px}
.cart-drawer.open{transform:translateX(0)}
.drawer-backdrop{z-index:45}
.cart-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:20px}
.cart-header h2{font-size:38px}
.cart-items{overflow:auto;flex:1;padding:10px 0}
.cart-item{display:grid;grid-template-columns:72px 1fr auto;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.cart-thumb{width:72px;height:86px;border-radius:12px;background:var(--soft);display:grid;place-items:center}
.cart-thumb::before{content:"";width:45px;height:45px;border-radius:50%;background:radial-gradient(circle,#111 0 10%,var(--iris,#889688) 11% 36%,rgba(255,255,255,.3) 37% 51%,transparent 52%)}
.cart-item h4{margin:0 0 5px;font-size:14px}.cart-item p{margin:0 0 5px;color:var(--muted);font-size:12px}.remove-item{border:none;background:none;color:var(--muted);font-size:12px;padding:0}
.cart-empty{text-align:center;margin:auto;padding:40px}.cart-summary{border-top:1px solid var(--line);padding-top:20px}
.summary-row{display:flex;justify-content:space-between;font-size:18px}.shipping-note{font-size:12px;color:var(--muted)}
.empty-state{text-align:center;padding:80px 20px}.hidden{display:none!important}
.toast{position:fixed;z-index:80;bottom:22px;left:50%;transform:translateX(-50%);background:#171717;color:white;padding:12px 18px;border-radius:999px;font-size:13px}
@media (max-width:900px){
  .hero{grid-template-columns:1fr}.hero-copy,.hero-visual{min-height:430px;padding:38px}.benefits{grid-template-columns:1fr}.benefits div,.benefits div:first-child,.benefits div:last-child{border-radius:16px;margin-bottom:8px}.product-grid{grid-template-columns:repeat(2,1fr)}.product-modal-card{grid-template-columns:1fr;max-height:92dvh;overflow:auto}.modal-product-image{min-height:330px}.steps{grid-template-columns:1fr}.how-order{margin-left:18px;margin-right:18px;padding:38px}.modal-content{padding:34px 24px}
}
@media (max-width:600px){
  .header-inner{padding:12px 16px}.brand-name{font-size:14px}.brand-mark{width:38px;height:38px}
  .hero{padding:0 12px;margin-top:12px;gap:12px}.hero-copy,.hero-visual{border-radius:24px;min-height:390px;padding:28px}.hero-text{font-size:15px}.hero-visual{min-height:360px}
  .benefits,.shop-section{padding-left:14px;padding-right:14px}.shop-section{margin-top:70px}.shop-tools{grid-template-columns:1fr}.shop-tools select{display:none}.product-grid{gap:22px 10px}.product-image{border-radius:16px}.product-title{font-size:13px}.product-price{font-size:14px}
  .section-heading{align-items:flex-end}.section-heading h2{font-size:38px}.results-text{font-size:11px}.how-order h2{font-size:38px}
  footer{flex-direction:column;gap:16px}.footer-note{text-align:left}.announcement{font-size:10px}
}


.delivery-form{
  display:grid;
  gap:12px;
  margin:18px 0 16px;
}
.delivery-form label{
  display:grid;
  gap:6px;
}
.delivery-form label span{
  font-size:11px;
  font-weight:700;
  color:var(--muted);
  letter-spacing:.04em;
}
.delivery-form input,
.delivery-form select,
.delivery-form textarea{
  width:100%;
  border:1px solid var(--line);
  background:white;
  color:var(--ink);
  border-radius:14px;
  padding:12px 13px;
  outline:none;
}
.delivery-form select{
  height:46px;
}
.delivery-form textarea{
  resize:vertical;
  min-height:78px;
}
.delivery-form input:focus,
.delivery-form select:focus,
.delivery-form textarea:focus{
  border-color:#a99f96;
}
.form-error{
  margin:2px 0 0;
  font-size:12px;
  color:#a33838;
  font-weight:600;
}


/* Clearer shopping bag items */
.cart-items{
  padding:14px 0;
}
.cart-item{
  display:grid;
  grid-template-columns:86px 1fr;
  gap:14px;
  padding:14px;
  margin:10px 0;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.04);
}
.cart-thumb{
  width:86px;
  height:100px;
  border-radius:14px;
  background:var(--soft);
  display:grid;
  place-items:center;
}
.cart-thumb::before{
  content:"";
  width:56px;
  height:56px;
  border-radius:50%;
  background:radial-gradient(circle,#111 0 10%,var(--iris,#889688) 11% 36%,rgba(255,255,255,.3) 37% 51%,transparent 52%);
}
.cart-item-main{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.cart-item-main h4{
  margin:0 0 9px;
  font-size:16px;
  line-height:1.3;
}
.cart-meta{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.cart-meta span{
  display:inline-flex;
  padding:5px 8px;
  border-radius:999px;
  background:var(--soft);
  color:#5f5954;
  font-size:11px;
  font-weight:600;
}
.cart-item-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.cart-item-bottom strong{
  font-size:16px;
}
.remove-item{
  border:none;
  background:none;
  color:#9b3f3f;
  font-size:12px;
  font-weight:600;
  padding:4px 0;
}
.cart-btn{
  position:relative;
}
.cart-btn span{
  font-weight:700;
}
.toast{
  max-width:calc(100vw - 28px);
  text-align:center;
  box-shadow:0 10px 30px rgba(0,0,0,.18);
}


/* ===== CART VISIBILITY FIX =====
   Let the whole drawer scroll so the long address form
   never squeezes the product list into a tiny strip.
*/
.cart-drawer{
  overflow-y:auto;
  overflow-x:hidden;
  display:block;
  padding:26px;
}

.cart-header{
  position:sticky;
  top:-26px;
  z-index:4;
  background:var(--bg);
  padding-top:26px;
  margin-top:-26px;
}

.cart-items{
  overflow:visible;
  flex:none;
  display:block;
  padding:14px 0 20px;
  min-height:auto;
}

.cart-item{
  display:grid;
  grid-template-columns:86px minmax(0,1fr);
  gap:14px;
  width:100%;
  padding:14px;
  margin:10px 0;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 6px 20px rgba(0,0,0,.05);
  overflow:visible;
}

.cart-thumb{
  width:86px;
  height:100px;
  flex:none;
}

.cart-item-main{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.cart-item-main h4{
  display:block;
  margin:0 0 9px;
  font-size:16px;
  line-height:1.3;
  color:var(--ink);
  white-space:normal;
  overflow:visible;
}

.cart-meta{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-bottom:12px;
}

.cart-meta span{
  display:inline-flex;
  padding:5px 9px;
  border-radius:999px;
  background:var(--soft);
  color:#5f5954;
  font-size:11px;
  font-weight:700;
}

.cart-item-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.cart-item-bottom strong{
  font-size:16px;
  color:var(--ink);
}

.remove-item{
  color:#a13d3d;
  font-weight:700;
}

.cart-summary{
  border-top:1px solid var(--line);
  padding-top:22px;
  padding-bottom:34px;
}

@media (max-width:600px){
  .cart-drawer{
    padding:18px;
  }

  .cart-header{
    top:-18px;
    padding-top:18px;
    margin-top:-18px;
  }

  .cart-item{
    grid-template-columns:78px minmax(0,1fr);
    padding:12px;
  }

  .cart-thumb{
    width:78px;
    height:92px;
  }
}

.bag-items-label{
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted);
  padding:4px 2px 8px;
}


/* ===== LANGUAGE SWITCH: EN / MYANMAR ===== */
.lang-switch{
  display:flex;
  align-items:center;
  padding:3px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  flex:none;
}
.lang-btn{
  border:0;
  background:transparent;
  border-radius:999px;
  padding:8px 10px;
  font-size:11px;
  line-height:1;
  font-weight:800;
  color:var(--muted);
}
.lang-btn.active{
  background:#171717;
  color:#fff;
}
html[lang="my"] body,
html[lang="my"] button,
html[lang="my"] input,
html[lang="my"] select,
html[lang="my"] textarea{
  font-family:"Noto Sans Myanmar","DM Sans",sans-serif;
}
html[lang="my"] h1,
html[lang="my"] h2,
html[lang="my"] h3{
  font-family:"Noto Sans Myanmar",sans-serif;
  letter-spacing:0;
}
html[lang="my"] h1{
  line-height:1.35;
}
@media (max-width:600px){
  .lang-switch{padding:2px}
  .lang-btn{padding:7px 7px;font-size:9px}
  .header-actions{gap:5px}
}


/* ===== V9: DEFAULT MYANMAR FONT + COLOR FILTERS ===== */
body,
button,
input,
select,
textarea{
  font-family:"Noto Sans Myanmar","DM Sans",sans-serif;
}

h1,h2,h3{
  font-family:"Noto Sans Myanmar","Playfair Display",serif;
}

.filter-block{
  margin-top:18px;
}
.filter-title-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:18px;
}
.category-title-row{
  margin-top:2px;
}
.filter-title{
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted);
}
.clear-filter-btn{
  border:0;
  background:transparent;
  color:var(--muted);
  font-size:12px;
  font-weight:700;
}
.color-scroller{
  display:flex;
  gap:10px;
  overflow:auto;
  padding:12px 0 14px;
  scrollbar-width:none;
}
.color-scroller::-webkit-scrollbar{display:none}
.color-chip{
  flex:none;
  border:1px solid var(--line);
  background:#fff;
  border-radius:999px;
  padding:8px 12px 8px 9px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#554f4a;
  font-size:12px;
  font-weight:700;
}
.color-chip.active{
  border-color:#171717;
  box-shadow:inset 0 0 0 1px #171717;
}
.color-dot{
  width:18px;
  height:18px;
  border-radius:50%;
  border:1px solid rgba(0,0,0,.13);
  background:var(--dot);
}
.color-chip[data-color="clear"] .color-dot{
  background:linear-gradient(135deg,#fff 0 45%,#d7e6ed 46% 54%,#fff 55%);
}
.color-chip[data-color="yellow"] .color-dot{background:#d8bd52}
.color-chip[data-color="black"] .color-dot{background:#171717}
.color-chip[data-color="pink"] .color-dot{background:#d79aaa}
.color-chip[data-color="purple"] .color-dot{background:#8e76a8}
.color-chip[data-color="red"] .color-dot{background:#a65252}
.color-chip[data-color="blue"] .color-dot{background:#6989a8}
.color-chip[data-color="green"] .color-dot{background:#718a76}
.color-chip[data-color="brown"] .color-dot{background:#92705b}
.color-chip[data-color="gray"] .color-dot{background:#8e969a}

html[lang="my"] .eyebrow,
html[lang="my"] .filter-title{
  letter-spacing:.02em;
}


/* ===== V10: STOCK / PRE-ORDER ===== */
.stock-scroller{
  display:flex;
  gap:10px;
  overflow:auto;
  padding:12px 0 14px;
  scrollbar-width:none;
}
.stock-scroller::-webkit-scrollbar{display:none}
.stock-chip{
  flex:none;
  border:1px solid var(--line);
  background:#fff;
  border-radius:999px;
  padding:9px 14px;
  font-size:12px;
  font-weight:800;
  color:#554f4a;
}
.stock-chip.active{
  background:#171717;
  border-color:#171717;
  color:#fff;
}
.stock-status{
  position:absolute;
  right:12px;
  top:12px;
  padding:7px 10px;
  border-radius:999px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.03em;
  background:#171717;
  color:#fff;
}
.stock-status.preorder{
  background:#fff;
  color:#171717;
  border:1px solid var(--line);
}
.preorder-note{
  margin-top:7px;
  font-size:11px;
  font-weight:700;
  color:var(--muted);
}
.modal-stock-info{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:6px 0 12px;
}
.modal-stock-pill{
  display:inline-flex;
  padding:7px 10px;
  border-radius:999px;
  background:#171717;
  color:#fff;
  font-size:11px;
  font-weight:800;
}
.modal-stock-pill.preorder{
  background:var(--soft);
  color:#171717;
}
.modal-waiting{
  font-size:12px;
  font-weight:700;
  color:var(--muted);
}


/* ===== V11 CLEAN HOME =====
   Remove visual clutter and bring filters/categories above the fold.
*/
.hero-clean{
  display:block;
  max-width:1240px;
  margin:18px auto 0;
  padding:0 24px;
}
.hero-copy-clean{
  min-height:0;
  padding:34px 40px;
  border-radius:24px;
  text-align:center;
  align-items:center;
}
.hero-copy-clean h1{
  font-size:clamp(34px,5vw,58px);
  line-height:1.2;
  margin-bottom:12px;
}
.hero-copy-clean .hero-text{
  max-width:680px;
  margin:0 auto 18px;
  font-size:14px;
  line-height:1.6;
}
.hero-copy-clean .primary-btn{
  margin:auto;
}
.shop-section{
  margin-top:34px;
}
@media(max-width:600px){
  .hero-clean{
    padding:0 12px;
    margin-top:10px;
  }
  .hero-copy-clean{
    min-height:0;
    padding:24px 18px;
    border-radius:20px;
  }
  .hero-copy-clean h1{
    font-size:30px;
    margin-bottom:8px;
  }
  .hero-copy-clean .hero-text{
    font-size:12px;
    line-height:1.55;
    margin-bottom:14px;
  }
  .shop-section{
    margin-top:22px;
  }
}


/* ===== V14 REAL PRODUCT PHOTO SUPPORT ===== */
.product-image.has-real-image::before{display:none!important}
.real-product-image{width:100%;height:100%;object-fit:cover;display:block}
.modal-product-image.has-real-image::before{display:none!important}
.modal-real-image{width:100%;height:100%;min-height:580px;object-fit:cover;display:block}
@media(max-width:900px){.modal-real-image{min-height:330px}}


/* ===== V15 CART REAL PRODUCT PHOTO ===== */
.cart-thumb.has-cart-image::before{
  display:none !important;
}
.cart-real-image{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  border-radius:14px;
}


/* ==========================================================
   V21 CATEGORY-FIRST SHOP LAYOUT
   - No customer Availability filter
   - Default Contact Lenses
   - Colors shown only for Contact Lenses
   - One stock status label only (top-right)
========================================================== */

.category-title-row{
  margin-top:22px;
}

.category-scroller{
  padding-top:12px;
  padding-bottom:12px;
}

/* Color area drops below categories */
#colorFilterBlock{
  margin-top:4px;
}

/* Single product status label: top-right only */
.stock-status{
  position:absolute;
  top:12px;
  right:12px;
  left:auto;
  z-index:3;
  padding:7px 10px;
  border-radius:999px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.03em;
  background:#171717;
  color:#fff;
  border:1px solid #171717;
}

.stock-status.preorder{
  background:#fff;
  color:#171717;
  border:1px solid var(--line);
}

.stock-status.outofstock{
  background:#ececec;
  color:#666;
  border:1px solid #d9d9d9;
}

/* Out-of-stock modal status */
.modal-stock-pill.outofstock{
  background:#ececec;
  color:#666;
  border:1px solid #d9d9d9;
}

/* Out-of-stock product stays visible but looks unavailable */
.product-card:has(.stock-status.outofstock) .product-image{
  opacity:.68;
}

/* Add to Bag is disabled for out-of-stock items */
#addToCartBtn:disabled{
  background:#d9d9d9;
  color:#777;
  opacity:1;
  cursor:not-allowed;
  pointer-events:none;
}

/* 10-product pagination */
.load-more-wrap{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:34px 0 8px;
}

.load-more-btn{
  min-width:150px;
}

.load-more-btn:disabled{
  opacity:.55;
  cursor:wait;
}

.load-more-info{
  margin:0;
  font-size:11px;
  color:var(--muted);
}

/* Old left-side badge is intentionally not used anymore */
.product-card .badge{
  display:none !important;
}

@media(max-width:600px){
  .category-title-row{
    margin-top:18px;
  }

  .stock-status{
    top:9px;
    right:9px;
    padding:6px 8px;
    font-size:9px;
  }

  .load-more-wrap{
    padding-top:26px;
  }
}


/* ===== V22 TOTAL PRODUCT COUNT ===== */
.total-products-text{
  margin:8px 0 0;
  font-size:13px;
  color:var(--muted);
}
@media(max-width:600px){
  .total-products-text{
    margin-top:6px;
    font-size:11px;
  }
}


/* ===== V23 NO SEARCH ===== */
.shop-tools-no-search{
  display:flex;
  justify-content:flex-end;
}

.shop-tools-no-search #sortSelect{
  width:220px;
}

@media(max-width:600px){
  .shop-tools-no-search{
    justify-content:stretch;
  }

  .shop-tools-no-search #sortSelect{
    width:100%;
    display:block;
  }
}


/* ===== V24 SPEED OPTIMIZATION =====
   Keeps the same design while reducing image/render work. */

/* Browser can skip layout/paint work for off-screen cards. */
.product-card{
  content-visibility:auto;
  contain-intrinsic-size:320px 440px;
}

/* Prevent image layout jumps and keep rendering isolated. */
.product-image{
  contain:layout paint;
  background:var(--soft);
}

.real-product-image{
  opacity:0;
  transition:opacity .16s ease;
  backface-visibility:hidden;
}

.real-product-image.is-loaded{
  opacity:1;
}

/* If JS is disabled or the browser restores an image from cache,
   still show it once it has completed loading. */
.real-product-image[complete]{
  opacity:1;
}

/* Keep modal/cart rendering lightweight. */
.modal-real-image,
.cart-real-image{
  backface-visibility:hidden;
}

/* Reduce work for long pages below the fold. */
.how-order,
footer{
  content-visibility:auto;
  contain-intrinsic-size:400px;
}

/* Respect users who prefer less motion. */
@media (prefers-reduced-motion: reduce){
  .real-product-image{
    transition:none;
  }
}


/* ==========================================================
   V26 CLEAN HEADER
========================================================== */

.header-inner-clean{
  min-height:72px;
}

.brand-script{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-width:0;
}

.brand-script-text{
  font-family:"Allura",cursive;
  font-size:34px;
  line-height:1;
  font-weight:400;
  color:var(--ink);
  white-space:nowrap;
}

.brand-heart{
  color:#ef8da1;
  font-size:14px;
  line-height:1;
  transform:translateY(-7px);
}

.header-actions-clean{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:nowrap;
}

.font-toggle-btn{
  width:40px;
  height:40px;
  border:0;
  background:transparent;
  border-radius:50%;
  font-family:"DM Sans",sans-serif;
  font-size:15px;
  font-weight:700;
  display:grid;
  place-items:center;
  padding:0;
}

.font-toggle-btn:hover,
.font-toggle-btn.active{
  background:var(--soft);
}

.cart-icon-btn{
  position:relative;
  width:42px;
  height:42px;
  border:0;
  background:transparent;
  border-radius:50%;
  display:grid;
  place-items:center;
  padding:7px;
}

.cart-icon-btn:hover{
  background:var(--soft);
}

.cart-icon-btn svg{
  width:27px;
  height:27px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.cart-count-badge{
  position:absolute;
  top:0;
  right:-1px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:999px;
  background:#ef5f82;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:10px;
  font-weight:800;
  line-height:1;
  border:2px solid #fff;
}

body.alt-font{
  font-family:"DM Sans","Noto Sans Myanmar",sans-serif;
}

body:not(.alt-font){
  font-family:"Noto Sans Myanmar","DM Sans",sans-serif;
}

.shop-section{
  padding-top:28px;
}

@media(max-width:600px){
  .header-inner-clean{
    min-height:64px;
    gap:10px;
  }

  .brand-script-text{
    font-size:28px;
  }

  .brand-heart{
    font-size:12px;
    transform:translateY(-6px);
  }

  .header-actions-clean{
    gap:4px;
  }

  .font-toggle-btn{
    width:36px;
    height:36px;
    font-size:14px;
  }

  .cart-icon-btn{
    width:38px;
    height:38px;
    padding:7px;
  }

  .cart-icon-btn svg{
    width:25px;
    height:25px;
  }

  .shop-section{
    padding-top:22px;
  }
}

@media(max-width:380px){
  .brand-script-text{
    font-size:24px;
  }
}


/* ==========================================================
   V29 CATEGORY-FIRST COMPACT SHOP
========================================================== */

.section-heading,
.shop-tools,
#sortSelect{
  display:none !important;
}

.shop-section{
  margin-top:0 !important;
  padding-top:18px !important;
}

.compact-category-section{
  margin:0 0 14px;
}

.compact-category-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:10px;
}

.compact-category-heading .filter-title{
  font-size:15px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:0;
}

.category-scroller.compact-category-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  width:100%;
  overflow:visible !important;
  padding:0 0 12px !important;
}

.compact-category-card{
  min-width:0 !important;
  width:100% !important;
  min-height:88px;
  padding:10px 6px !important;
  border:1px solid var(--line) !important;
  border-radius:16px !important;
  background:#fff !important;
  color:var(--ink) !important;
  white-space:normal !important;
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  text-align:center;
  box-shadow:none;
}

.compact-category-card:nth-child(1){
  background:#fff5f7 !important;
}

.compact-category-card:nth-child(2){
  background:#f6fbff !important;
}

.compact-category-card:nth-child(3){
  background:#fbf7ff !important;
}

.compact-category-card.active{
  border-color:#171717 !important;
  box-shadow:inset 0 0 0 1px #171717;
}

.category-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  flex:none;
}

.category-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:2.1;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.category-label{
  display:block;
  font-size:11px;
  font-weight:700;
  line-height:1.25;
}

#colorFilterBlock{
  margin-top:4px !important;
}

@media(max-width:600px){
  .shop-section{
    padding-left:12px !important;
    padding-right:12px !important;
    padding-top:14px !important;
  }

  .category-scroller.compact-category-grid{
    gap:6px !important;
  }

  .compact-category-card{
    min-height:80px;
    padding:8px 4px !important;
    border-radius:14px !important;
  }

  .category-icon{
    width:30px;
    height:30px;
  }

  .category-label{
    font-size:10px;
  }
}

@media(max-width:360px){
  .compact-category-card{
    min-height:76px;
  }

  .category-label{
    font-size:9px;
  }
}


/* ==========================================================
   V31 REALISTIC CONTACT-LENS COLOR ICONS
   Keeps existing chip layout and size.
========================================================== */

.color-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

/* Replace plain circles with realistic lens-style irises */
.color-dot{
  --lens-a:#8b6a52;
  --lens-b:#5f4738;
  --lens-c:#bca18c;

  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  border-radius:50%;
  position:relative;
  overflow:hidden;
  flex:none;

  border:1px solid rgba(0,0,0,.12);
  box-shadow:
    0 1px 4px rgba(0,0,0,.10),
    inset 0 0 0 2px rgba(255,255,255,.72),
    inset 0 0 0 5px rgba(255,255,255,.16);

  background:
    radial-gradient(
      circle at 50% 50%,
      #fff 0 22%,
      rgba(255,255,255,.95) 23% 25%,
      transparent 26%
    ),
    repeating-conic-gradient(
      from 0deg,
      var(--lens-a) 0deg 4deg,
      var(--lens-b) 4deg 7deg,
      var(--lens-c) 7deg 10deg
    );
}

/* soft limbal ring + transparent contact center */
.color-dot::before{
  content:"";
  position:absolute;
  inset:2px;
  border-radius:50%;
  box-shadow:
    inset 0 0 0 1px rgba(0,0,0,.20),
    inset 0 0 8px rgba(0,0,0,.18),
    0 0 0 1px rgba(255,255,255,.35);
}

/* glossy highlights */
.color-dot::after{
  content:"";
  position:absolute;
  width:7px;
  height:5px;
  border-radius:50%;
  top:5px;
  left:7px;
  background:rgba(255,255,255,.72);
  filter:blur(.2px);
  box-shadow:7px 2px 0 -2px rgba(255,255,255,.45);
}

/* Per-color iris palettes */
.lens-color-brown{
  --lens-a:#9a6b45;
  --lens-b:#5f3e2e;
  --lens-c:#c69462;
}

.lens-color-yellow{
  --lens-a:#c99528;
  --lens-b:#8d6418;
  --lens-c:#e1b653;
}

.lens-color-gray{
  --lens-a:#a9adb0;
  --lens-b:#656b70;
  --lens-c:#d4d7d9;
}

.lens-color-blue{
  --lens-a:#62a8c7;
  --lens-b:#2f6f8c;
  --lens-c:#a9d8e7;
}

.lens-color-green{
  --lens-a:#7d9366;
  --lens-b:#445d3f;
  --lens-c:#b4c69b;
}

.lens-color-red{
  --lens-a:#b86d6d;
  --lens-b:#7d3f43;
  --lens-c:#d79b9b;
}

.lens-color-pink{
  --lens-a:#d49aaa;
  --lens-b:#a05e73;
  --lens-c:#efc2cc;
}

.lens-color-purple{
  --lens-a:#9b82b4;
  --lens-b:#654d7c;
  --lens-c:#c8b4d8;
}

.lens-color-black{
  --lens-a:#555;
  --lens-b:#1f1f1f;
  --lens-c:#8b8b8b;
}

.lens-color-clear{
  --lens-a:#e7ecef;
  --lens-b:#c8d0d5;
  --lens-c:#f7f9fa;
  opacity:.88;
}

/* "All colors" uses a subtle multicolor lens instead of a flat dot */
.lens-color-all{
  --lens-a:#b98a6c;
  --lens-b:#6e7d91;
  --lens-c:#8fa07c;
  background:
    radial-gradient(
      circle at 50% 50%,
      #fff 0 22%,
      rgba(255,255,255,.95) 23% 25%,
      transparent 26%
    ),
    conic-gradient(
      #8f6b54 0 20%,
      #8a8e93 20% 40%,
      #5f8698 40% 60%,
      #738767 60% 80%,
      #9b7a9e 80% 100%
    );
}

.color-chip.active .color-dot{
  box-shadow:
    0 0 0 3px rgba(239,95,130,.20),
    0 1px 5px rgba(0,0,0,.12),
    inset 0 0 0 2px rgba(255,255,255,.78);
}

/* Keep mobile size exactly compact */
@media(max-width:600px){
  .color-dot{
    width:24px !important;
    height:24px !important;
    min-width:24px !important;
  }
}

/* ==========================================================
   V39 MOBILE PRODUCT GRID STABILITY FIX
========================================================== */
.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));width:100%;min-width:0}
.product-card{width:100%;min-width:0;max-width:100%;overflow:hidden}
.product-image,.product-info,.real-product-image{width:100%;min-width:0;max-width:100%}
@media(max-width:900px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){
.product-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;width:100%!important;min-width:0!important;gap:22px 10px!important;align-items:start}
.product-card{width:auto!important;min-width:0!important;max-width:100%!important;contain:none;content-visibility:visible}
.product-image{width:100%!important;min-width:0!important;max-width:100%!important;overflow:hidden!important}
.product-info,.product-title,.product-category,.product-price{min-width:0!important;max-width:100%!important}
.product-title{overflow-wrap:anywhere}
.real-product-image{width:100%!important;height:100%!important;max-width:100%!important;object-fit:cover}
}


/* ==========================================================
   V40 POWER SEARCH
   Visible only in Contact Lenses.
========================================================== */

.power-search-block{
  margin:4px 0 12px;
}

.power-search-label{
  display:block;
  margin-bottom:8px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--muted);
}

.power-search-box{
  display:flex;
  align-items:center;
  width:100%;
  min-height:46px;
  padding:0 12px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
}

.power-search-box:focus-within{
  border-color:#171717;
  box-shadow:inset 0 0 0 1px #171717;
}

.power-search-icon{
  flex:none;
  margin-right:8px;
  font-size:20px;
  line-height:1;
  color:var(--muted);
}

.power-search-box input{
  flex:1;
  min-width:0;
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  color:var(--ink);
  padding:11px 0;
}

.power-search-box input::placeholder{
  color:#aaa39d;
}

.power-search-clear{
  flex:none;
  width:30px;
  height:30px;
  border:0;
  border-radius:50%;
  background:var(--soft);
  color:var(--ink);
  font-size:20px;
  line-height:1;
}

.power-search-hint{
  margin:6px 4px 0;
  font-size:10px;
  line-height:1.45;
  color:var(--muted);
}

html[lang="my"] .power-search-label{
  letter-spacing:0;
  text-transform:none;
}

@media(max-width:600px){
  .power-search-block{
    margin-top:2px;
    margin-bottom:10px;
  }

  .power-search-box{
    min-height:44px;
  }

  .power-search-label{
    font-size:11px;
  }

  .power-search-hint{
    font-size:9px;
  }
}


/* V41 - SHOW ALL AVAILABLE POWERS ON PRODUCT CARDS */
.product-powers{
  margin-top:8px;
  width:100%;
  min-width:0;
}
.product-powers-label{
  margin-bottom:5px;
  font-size:10px;
  line-height:1.3;
  font-weight:800;
  color:var(--muted);
}
.product-power-chips{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  width:100%;
  min-width:0;
}
.product-power-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:3px 7px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:var(--ink);
  font-size:10px;
  line-height:1;
  white-space:nowrap;
}
html[lang="my"] .product-powers-label{
  font-weight:700;
}
@media(max-width:600px){
  .product-powers{ margin-top:7px; }
  .product-powers-label{ font-size:9px; }
  .product-power-chips{ gap:3px; }
  .product-power-chip{
    min-height:22px;
    padding:3px 6px;
    font-size:9px;
  }
}


/* =========================================================
   V45 - MOBILE-FIRST ROUNDED PRODUCT CARDS
========================================================= */
.product-grid{gap:10px !important;}
.rounded-product-card,.product-card{
  position:relative;min-width:0;max-width:100%;overflow:hidden;
  border:1px solid rgba(0,0,0,.055)!important;border-radius:20px!important;
  background:#fff!important;box-shadow:0 8px 24px rgba(32,20,24,.055)!important;
  transition:transform .18s ease,box-shadow .18s ease;
}
.product-card:active{transform:scale(.985);}
.product-card .product-image,.product-card .product-image-wrap,.product-card .product-img-wrap{
  overflow:hidden;border-radius:16px!important;margin:8px 8px 0!important;background:#f8f5f4;
}
.product-card img{width:100%;display:block;border-radius:16px!important;object-fit:cover;}
.product-card .product-info,.product-card .product-body,.product-card .product-content{padding:10px 11px 12px!important;}
.product-card .product-brand,.product-card .brand,.product-card .brand-name{
  margin:0 0 2px!important;color:var(--muted)!important;font-size:9px!important;line-height:1.2!important;
  letter-spacing:.055em!important;text-transform:uppercase;font-weight:700!important;
}
.product-card .product-name,.product-card h3,.product-card .name{
  margin:0!important;color:var(--ink)!important;font-size:13px!important;line-height:1.25!important;font-weight:800!important;
}
.product-card .product-price,.product-card .price{margin-top:7px!important;font-size:13px!important;line-height:1.2!important;font-weight:900!important;}
.product-card .product-details-mini{display:flex!important;flex-wrap:wrap;gap:5px;margin-top:7px!important;}
.product-card .product-details-mini span{
  display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:999px;background:#f7f5f4;
  color:#5d5854;font-size:9px!important;line-height:1!important;font-weight:700;
}
.product-card .product-powers{margin-top:8px!important;padding-top:8px;border-top:1px solid rgba(0,0,0,.05);}
.product-card .product-powers-label{margin-bottom:6px!important;color:#726c67!important;font-size:9px!important;font-weight:800!important;}
.product-card .product-power-chips{display:flex!important;flex-wrap:wrap!important;gap:4px!important;}
.product-card .product-power-chip{
  min-height:22px!important;padding:4px 7px!important;border:0!important;border-radius:8px!important;background:#fff0f4!important;
  color:#a14962!important;font-size:9px!important;font-weight:800;
}
.product-card .stock-badge,.product-card .badge,.product-card .product-badge{border-radius:999px!important;backdrop-filter:blur(7px);}
.product-card button,.product-card .add-btn,.product-card .add-to-cart,.product-card .quick-add{border-radius:12px!important;}
@media(max-width:600px){
  .product-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:9px!important;}
  .rounded-product-card,.product-card{border-radius:18px!important;}
  .product-card .product-image,.product-card .product-image-wrap,.product-card .product-img-wrap{margin:7px 7px 0!important;border-radius:14px!important;}
  .product-card img{border-radius:14px!important;}
  .product-card .product-info,.product-card .product-body,.product-card .product-content{padding:9px 9px 11px!important;}
  .product-card .product-name,.product-card h3,.product-card .name{font-size:12px!important;}
  .product-card .product-price,.product-card .price{font-size:12px!important;}
  .product-card .product-details-mini span{min-height:22px;padding:4px 7px;font-size:8px!important;}
  .product-card .product-power-chip{min-height:21px!important;padding:4px 6px!important;font-size:8px!important;}
}


/* =========================================================
   V46 - MINIMALIST CARD CORNER + POWER STYLE FIX
========================================================= */

/* Give every card breathing room so all four rounded corners stay visible. */
.product-grid{
  padding:4px 3px 14px !important;
  gap:12px 10px !important;
  overflow:visible !important;
}

.product-card,
.rounded-product-card{
  border-radius:20px !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid #ece9e7 !important;
  box-shadow:0 5px 18px rgba(0,0,0,.045) !important;
  margin:0 !important;
}

/* Keep the image clearly inside the outer rounded card. */
.product-card .product-image,
.product-card .product-image-wrap,
.product-card .product-img-wrap{
  margin:8px 8px 0 !important;
  border-radius:15px !important;
  overflow:hidden !important;
}

.product-card img{
  border-radius:15px !important;
}

/* Minimal neutral power area — no pink/red. */
.product-card .product-powers{
  margin-top:8px !important;
  padding-top:8px !important;
  border-top:1px solid #efedeb !important;
}

.product-card .product-powers-label{
  color:#222 !important;
  font-size:9px !important;
  font-weight:700 !important;
  letter-spacing:.01em;
}

.product-card .product-power-chip{
  min-height:21px !important;
  padding:4px 7px !important;
  border:1px solid #e3e1df !important;
  border-radius:7px !important;
  background:#f7f7f7 !important;
  color:#171717 !important;
  font-size:8px !important;
  font-weight:700 !important;
  box-shadow:none !important;
}

/* Keep metadata quiet and minimalist. */
.product-card .product-details-mini span{
  background:#f6f6f6 !important;
  color:#333 !important;
  border:0 !important;
}

@media(max-width:600px){
  .product-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    padding:5px 7px 16px !important;
    gap:11px 9px !important;
  }

  .product-card,
  .rounded-product-card{
    border-radius:19px !important;
    min-width:0 !important;
    width:100% !important;
  }

  .product-card .product-image,
  .product-card .product-image-wrap,
  .product-card .product-img-wrap{
    margin:7px 7px 0 !important;
    border-radius:14px !important;
  }

  .product-card img{
    border-radius:14px !important;
  }

  .product-card .product-power-chip{
    background:#f7f7f7 !important;
    color:#111 !important;
    border-color:#e5e5e5 !important;
  }
}


/* =========================================================
   V47 - CLEAR ROUNDED BOUNDARY + MINIMAL BLACK POWER CHIPS
   Stronger mobile override for the actual storefront classes.
========================================================= */

.product-grid{
  padding:10px 10px 20px !important;
  gap:14px 10px !important;
  overflow:visible !important;
}

.product-card.rounded-product-card{
  position:relative !important;
  width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;

  /* Make all 4 corners clearly visible */
  border:1px solid #dedbd8 !important;
  border-radius:24px !important;
  background:#ffffff !important;
  box-shadow:0 6px 18px rgba(0,0,0,.055) !important;
}

/* Image sits INSIDE the card instead of visually merging with the edge */
.product-card.rounded-product-card > .product-image{
  width:auto !important;
  margin:9px 9px 0 !important;
  overflow:hidden !important;
  border-radius:18px !important;
  background:#f7f4f3 !important;
  contain:layout paint !important;
}

/* Real image follows the inner rounded boundary */
.product-card.rounded-product-card > .product-image .real-product-image{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  border-radius:18px !important;
}

/* Product text section stays clean and separated */
.product-card.rounded-product-card > .product-info{
  padding:13px 13px 15px !important;
  background:#fff !important;
}

.product-card .product-category{
  margin-bottom:7px !important;
  color:#7b7774 !important;
  font-size:10px !important;
  line-height:1.2 !important;
  letter-spacing:.12em !important;
  font-weight:500 !important;
}

.product-card .product-title{
  margin:0 !important;
  color:#151515 !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}

.product-card .product-price{
  margin-top:7px !important;
  color:#151515 !important;
  font-size:14px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
}

/* Minimal metadata */
.product-card .product-details-mini{
  gap:5px !important;
  margin-top:9px !important;
}
.product-card .product-details-mini span{
  min-height:22px !important;
  padding:4px 7px !important;
  border:1px solid #e7e5e3 !important;
  border-radius:7px !important;
  background:#fafafa !important;
  color:#333 !important;
  font-size:8px !important;
  font-weight:600 !important;
}

/* Available Power: black minimalist style */
.product-card .product-powers{
  margin-top:10px !important;
  padding-top:9px !important;
  border-top:1px solid #eceae8 !important;
}

.product-card .product-powers-label{
  margin-bottom:7px !important;
  color:#111 !important;
  font-size:9px !important;
  font-weight:700 !important;
}

.product-card .product-power-chips{
  gap:5px !important;
}

.product-card .product-power-chip{
  min-height:22px !important;
  padding:4px 7px !important;
  border:1px solid #111 !important;
  border-radius:7px !important;
  background:#111 !important;
  color:#fff !important;
  font-size:8px !important;
  line-height:1 !important;
  font-weight:600 !important;
  box-shadow:none !important;
}

/* Keep the black stock badge clean */
.product-card .stock-status{
  border-radius:999px !important;
}

/* Quick view button: simple white rounded square */
.product-card .quick-add{
  border-radius:12px !important;
  box-shadow:none !important;
}

@media(max-width:600px){
  .product-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    padding:10px 12px 22px !important;
    gap:14px 10px !important;
  }

  .product-card.rounded-product-card{
    border-radius:22px !important;
  }

  .product-card.rounded-product-card > .product-image{
    margin:8px 8px 0 !important;
    border-radius:16px !important;
  }

  .product-card.rounded-product-card > .product-image .real-product-image{
    border-radius:16px !important;
  }

  .product-card.rounded-product-card > .product-info{
    padding:12px 11px 14px !important;
  }

  .product-card .product-category{
    font-size:9px !important;
  }

  .product-card .product-title,
  .product-card .product-price{
    font-size:13px !important;
  }
}


/* V53 - WISHLIST HEADER */
.wishlist-icon-btn{
  position:relative;
  width:42px;
  height:42px;
  border:0;
  background:transparent;
  border-radius:50%;
  display:grid;
  place-items:center;
  padding:8px;
  color:var(--ink);
}
.wishlist-icon-btn:hover{
  background:var(--soft);
}
.wishlist-icon-btn svg{
  width:25px;
  height:25px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.wishlist-count-badge{
  position:absolute;
  top:0;
  right:-1px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:999px;
  background:#171717;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:10px;
  font-weight:800;
  line-height:1;
  border:2px solid #fff;
}
@media(max-width:600px){
  .wishlist-icon-btn{
    width:38px;
    height:38px;
    padding:7px;
  }
  .wishlist-icon-btn svg{
    width:23px;
    height:23px;
  }
}


/* V55 - reliability states */
img.image-load-failed{
  background:
    linear-gradient(135deg,#f7f4f2 25%,#fbfaf9 25%,#fbfaf9 50%,#f7f4f2 50%,#f7f4f2 75%,#fbfaf9 75%);
  background-size:18px 18px;
  min-height:120px;
}
