/* Iccha's Beauty — cart UI (works with both the catalogue and product pages) */
.nav-actions{display:flex;align-items:center;gap:12px}
.cart-btn{position:relative;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.8);
  display:flex;align-items:center;justify-content:center;color:var(--gold);transition:transform .3s,box-shadow .3s,border-color .3s}
.cart-btn:hover{transform:translateY(-2px);box-shadow:0 8px 22px -10px rgba(138,36,100,.5);border-color:var(--gold)}
.cart-btn svg{width:21px;height:21px}
.cart-count{position:absolute;top:-5px;right:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:100px;background:var(--gold-grad);color:#f4efe4;
  font-size:.68rem;font-weight:800;display:none;align-items:center;justify-content:center;box-shadow:0 4px 10px -2px rgba(138,36,100,.6);border:2px solid #faf4ec}
.cart-count.show{display:flex}
.cart-btn.bump{animation:cbump .5s cubic-bezier(.2,.9,.3,1.4)}
@keyframes cbump{0%{transform:scale(1)}35%{transform:scale(1.22)}100%{transform:scale(1)}}

/* add-to-cart buttons */
.btn-cart,.cart-add-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1.5px solid var(--gold);color:var(--gold);background:rgba(255,255,255,.9);
  font-weight:700;border-radius:100px;transition:all .3s}
.btn-cart svg,.cart-add-btn svg{width:18px;height:18px;flex:none}
.btn-cart:hover,.cart-add-btn:hover{background:var(--gold-grad);color:#f4efe4;border-color:transparent;transform:translateY(-2px);box-shadow:0 12px 26px -10px rgba(138,36,100,.6)}
.btn-cart:active,.cart-add-btn:active{transform:scale(.97)}
.btn-cart.added,.cart-add-btn.added{background:#4f6b1f;border-color:#4f6b1f;color:#fff}
.btn-cart{padding:16px 22px;font-size:.95rem}
.cart-add-btn{padding:0 16px;font-size:.78rem;min-height:46px}

/* catalogue card: price row, then actions row */
.card-foot{flex-direction:column;align-items:stretch;gap:12px}
.card-actions{display:flex;gap:8px;align-items:stretch}
.card-actions .wa-btn{flex:1;justify-content:center;min-height:46px}

/* drawer */
.cart-overlay{position:fixed;inset:0;z-index:150;background:rgba(43,22,38,.5);opacity:0;pointer-events:none;transition:opacity .35s}
.cart-overlay.show{opacity:1;pointer-events:auto}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;z-index:160;width:min(430px,100%);background:#fffaf4;display:flex;flex-direction:column;
  transform:translateX(104%);transition:transform .45s cubic-bezier(.2,.8,.2,1);box-shadow:-30px 0 70px -20px rgba(82,20,59,.35);border-left:1px solid var(--line)}
.cart-drawer.open{transform:translateX(0)}
.cart-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line)}
.cart-head h2{font-family:'Fraunces',serif;font-size:1.45rem;font-weight:500}
.cart-head-count{color:var(--text-faint);font-size:1rem;font-family:'Manrope',sans-serif}
.cart-close{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);font-size:1.5rem;line-height:1;color:var(--text-dim);display:flex;align-items:center;justify-content:center}
.cart-close:hover{color:var(--gold);border-color:var(--gold)}
.cart-body{flex:1;overflow-y:auto;padding:6px 22px;-webkit-overflow-scrolling:touch}
.cart-list{list-style:none}
.cart-item{position:relative;display:grid;grid-template-columns:76px 1fr;gap:14px;padding:18px 28px 18px 0;border-bottom:1px solid var(--line)}
.ci-img{width:76px;height:76px;border-radius:14px;background:linear-gradient(160deg,#f8ebef,#f3e4dc);padding:6px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 18px -12px rgba(82,20,59,.5)}
.ci-img img{width:100%;height:100%;object-fit:contain;border-radius:8px;background:#fff}
.ci-img img.ph{width:56%;height:56%;background:none;opacity:.8}
.ci-name{font-family:'Fraunces',serif;font-size:1rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ci-name:hover{color:var(--gold-light)}
.ci-meta{font-size:.72rem;color:var(--text-faint);margin-top:3px;letter-spacing:.02em}
.ci-price{margin-top:6px;font-weight:700;color:var(--gold);font-size:.9rem}
.ci-price s{font-weight:400;color:var(--text-faint);font-size:.76rem;margin-left:6px}
.ci-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:100px;background:#fff;overflow:hidden}
.qty button{width:34px;height:34px;font-size:1.1rem;color:var(--gold);display:flex;align-items:center;justify-content:center}
.qty button:hover:not(:disabled){background:var(--gold-pale)} .qty button:disabled{opacity:.35;cursor:not-allowed}
.qty span{min-width:30px;text-align:center;font-weight:700;font-size:.9rem}
.ci-line{font-family:'Fraunces',serif;font-size:1.05rem;color:var(--text)}
.ci-rm{position:absolute;top:14px;right:0;width:26px;height:26px;border-radius:50%;font-size:1.2rem;color:var(--text-faint);display:flex;align-items:center;justify-content:center}
.ci-rm:hover{color:#a32236;background:rgba(163,34,54,.08)}
.cart-empty{text-align:center;padding:70px 16px}
.cart-empty-ico{width:74px;height:74px;border-radius:50%;background:var(--gold-pale);color:var(--gold);display:flex;align-items:center;justify-content:center;margin:0 auto 18px}
.cart-empty-ico svg{width:32px;height:32px}
.cart-empty h3{font-size:1.35rem;margin-bottom:8px}
.cart-empty p{color:var(--text-dim);font-size:.9rem;line-height:1.6;max-width:30ch;margin:0 auto 22px}
.cart-browse{padding:13px 26px;border-radius:100px;background:var(--gold-grad);color:#f4efe4;font-weight:700;font-size:.88rem}
.cart-foot{padding:16px 22px calc(18px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:linear-gradient(180deg,#fffaf4,#fbf3ea);box-shadow:0 -16px 30px -24px rgba(82,20,59,.4)}
.cf-rows{display:grid;gap:7px;margin-bottom:14px}
.cf-row{display:flex;justify-content:space-between;align-items:baseline;font-size:.88rem;color:var(--text-dim)}
.cf-row.mute s{color:var(--text-faint)} .cf-row.save b{color:#4f6b1f}
.cf-row.total{padding-top:10px;border-top:1px dashed var(--line);font-size:1rem;color:var(--text)}
.cf-row.total b{font-family:'Fraunces',serif;font-size:1.7rem;color:var(--gold);font-weight:500}
.cart-send{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 20px;border-radius:100px;background:var(--gold-grad);background-size:220% 220%;color:#f4efe4;
  font-weight:700;font-size:.95rem;box-shadow:0 14px 30px -10px rgba(138,36,100,.6);transition:transform .3s,box-shadow .3s,background-position .3s}
.cart-send svg{width:20px;height:20px}
.cart-send:hover{transform:translateY(-2px);box-shadow:0 20px 38px -10px rgba(138,36,100,.7);background-position:100% 50%}
.cf-note{font-size:.72rem;color:var(--text-faint);line-height:1.5;text-align:center;margin-top:12px}
.cf-clear{display:block;margin:10px auto 0;font-size:.76rem;color:var(--text-faint);text-decoration:underline}
.cf-clear:hover{color:#a32236}

/* toast */
.cart-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,24px);z-index:190;display:flex;align-items:center;gap:12px;background:#2b1626;color:#fff;
  padding:10px 10px 10px 16px;border-radius:100px;font-size:.84rem;font-weight:600;box-shadow:0 18px 40px -10px rgba(43,22,38,.6);opacity:0;pointer-events:none;transition:all .4s cubic-bezier(.2,.8,.2,1);white-space:nowrap}
.cart-toast.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.ct-ok{width:22px;height:22px;border-radius:50%;background:#6f9a2a;display:flex;align-items:center;justify-content:center;font-size:.75rem}
.cart-toast button{padding:8px 16px;border-radius:100px;background:var(--gold-grad);color:#f4efe4;font-weight:700;font-size:.78rem}

@media (max-width:760px){
  .nav-actions{margin-left:auto;margin-right:10px}
  .cart-btn{width:40px;height:40px}
  .card-actions .cart-add-btn span{display:none}
  .card-actions .wa-btn{white-space:nowrap;padding:0 10px;gap:6px;font-size:.74rem}
  .card-actions .wa-btn svg{width:14px;height:14px}
  .cart-add-btn{padding:0;width:46px}
  .cart-toast{bottom:100px;max-width:calc(100vw - 28px)}
  .cart-drawer{width:100%;border-left:none}
  .cart-body{padding:4px 18px} .cart-head{padding:16px 18px} .cart-foot{padding:14px 18px calc(16px + env(safe-area-inset-bottom))}
}


.cart-prog{position:relative;margin:0 0 14px;padding:12px 14px 10px;border-radius:14px;background:linear-gradient(135deg,#fdecf3,#fff6e6);border:1px solid #efc3d6}
.cart-prog.pre{display:flex;gap:10px;align-items:center;font-size:.8rem}
.cart-prog.pre b,.cp-msg b{display:block;color:var(--gold-deep);font-size:.9rem}
.cart-prog.pre span:not(.cp-ico),.cp-msg span{display:block;color:var(--text-dim);font-size:.75rem;line-height:1.4;margin-top:1px}
.cp-top{display:flex;gap:10px;align-items:center;margin-bottom:10px}
.cp-ico{font-size:1.4rem;line-height:1;flex:none}
.cart-prog:not(.got) .cp-ico{animation:cplamp 1.8s ease-in-out infinite}
@keyframes cplamp{0%,100%{transform:scale(1) rotate(-6deg)}50%{transform:scale(1.15) rotate(6deg)}}
.cp-track{position:relative;height:10px;border-radius:99px;background:#f0dce6;overflow:visible}
.cp-track i{position:absolute;left:0;top:0;bottom:0;border-radius:99px;background:linear-gradient(90deg,#8a2464,#c34694,#ffb347);background-size:200% 100%;animation:cpflow 2.4s linear infinite;transition:width .6s cubic-bezier(.2,.9,.25,1)}
@keyframes cpflow{to{background-position:-200% 0}}
.cp-track em{position:absolute;top:50%;width:24px;height:24px;margin:-12px 0 0 -12px;border-radius:50%;background:#fff;border:2px solid #c34694;font-style:normal;font-size:.8rem;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 10px -3px rgba(138,36,100,.6);transition:left .6s cubic-bezier(.2,.9,.25,1)}
.cart-prog.got .cp-track i{background:linear-gradient(90deg,#4f8a1f,#8cc63f,#4f8a1f);background-size:200% 100%}
.cart-prog.got .cp-track em{background:#4f8a1f;border-color:#fff;color:#fff}
.cp-scale{display:flex;justify-content:space-between;font-size:.66rem;color:var(--text-faint);margin-top:7px}
.cp-conf{position:absolute;left:50%;top:38%;width:7px;height:10px;border-radius:2px;pointer-events:none;opacity:0;animation:cpconf 1.1s cubic-bezier(.15,.8,.3,1) forwards}
@keyframes cpconf{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--r))}}
@media (prefers-reduced-motion:reduce){.cp-track i,.cart-prog:not(.got) .cp-ico,.cp-conf{animation:none!important}.cp-track i,.cp-track em{transition:none}}

.footer-addr{font-size:.82rem;line-height:1.6;color:var(--text-faint);max-width:720px;margin:22px 0 4px}
.footer-addr b{color:var(--text-dim);font-weight:600}
.cf-row .freeship{color:#4f6b1f;letter-spacing:.04em}

.cart-pay{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 20px;border-radius:100px;background:linear-gradient(120deg,#52143b,#8a2464 55%,#c34694);color:#fff;font-weight:700;font-size:.95rem;text-decoration:none;box-shadow:0 14px 30px -12px rgba(138,36,100,.65);transition:transform .2s,box-shadow .2s}
.cart-pay svg{width:20px;height:20px}
.cart-pay:hover{transform:translateY(-2px);box-shadow:0 20px 38px -10px rgba(138,36,100,.7)}
.cart-send.alt{background:#fff;color:var(--gold-deep);border:1.5px solid var(--line);box-shadow:none;margin-top:10px;padding:13px 20px;font-size:.88rem}
.cart-send.alt:hover{box-shadow:0 10px 22px -12px rgba(138,36,100,.5);border-color:var(--gold)}

/* "My Orders" nav link: keep the header tidy on mid-size screens (still in the footer, cart and mobile menu) */
.nav-links a[href="/orders/"]{white-space:nowrap}
@media (min-width:861px) and (max-width:1180px){ .nav-links a[href="/orders/"]{display:none} }
