:root {
  --cyan: #00ffff;
  --teal: #008080;
  --teal-700: #006b6b;
  --deep: #073f42;
  --ink: #16383d;
  --muted: #5d7478;
  --ice: #f3f8fa;
  --ice-2: #e8f1f4;
  --line: #d8e7ea;
  --white: #fff;
  --danger: #b42318;
  --shadow: 0 18px 48px rgba(0, 80, 86, .1);
  --shadow-sm: 0 8px 24px rgba(0, 80, 86, .07);
  --ease: cubic-bezier(.2, .8, .2, 1);
  --container: 1160px;
}

.adel-cartpage * { box-sizing: border-box; }
.adel-cartpage {
  color: var(--ink);
  background: radial-gradient(circle at 88% 0, rgba(0, 255, 255, .13), transparent 27rem), linear-gradient(180deg, #fbfdfd, var(--ice));
  font-family: "IRANSansX", "Vazirmatn", Tahoma, sans-serif;
  font-size: 16px;
  line-height: 1.8;
}
.adel-cartpage button, .adel-cartpage input { font: inherit; }
.adel-cartpage button, .adel-cartpage a { touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
.adel-cartpage a { color: inherit; text-decoration: none; }
.adel-cartpage img, .adel-cartpage svg { display: block; }
.adel-cartpage img { max-width: 100%; }
.adel-container { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }

a.adel-cartpage.skip {
  position: fixed; z-index: 100; top: 12px; inset-inline-start: 16px;
  padding: 9px 15px; border-radius: 10px; color: #fff; background: var(--deep);
  transform: translateY(-150%);
}
a.adel-cartpage.skip:focus { transform: none; }

.adel-cartpage .adel-cart-page { padding: 34px 0 80px; }
.adel-cartpage .adel-page-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 25px; }
.adel-cartpage .adel-page-head h1 { margin: 0; color: var(--deep); font-size: clamp(1.65rem, 3.2vw, 2.45rem); line-height: 1.35; letter-spacing: -.035em; }
.adel-cartpage .adel-page-head p { margin: 5px 0 0; color: var(--muted); font-size: .79rem; }
.adel-cartpage .adel-back-shop {
  min-height: 44px; padding: 8px 15px; display: inline-flex; align-items: center; gap: 7px;
  border: 1px solid #bddadd; border-radius: 12px; color: var(--teal-700); background: #fff;
  font-size: .74rem; font-weight: 700; white-space: nowrap; transition: .18s;
}
.adel-cartpage .adel-back-shop:hover { border-color: var(--teal); background: #f0ffff; }

.adel-cartpage .adel-steps {
  display: flex; align-items: center; justify-content: center; margin-bottom: 28px;
  padding: 13px 16px; border: 1px solid var(--line); border-radius: 18px;
  background: rgba(255, 255, 255, .83); box-shadow: var(--shadow-sm);
}
.adel-cartpage .adel-step { display: flex; align-items: center; gap: 8px; color: #7c9093; font-size: .72rem; font-weight: 700; }
.adel-cartpage .adel-step-dot { width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid #cfdfe1; border-radius: 50%; background: #fff; font-size: .67rem; }
.adel-cartpage .adel-step.active { color: var(--teal-700); }
.adel-cartpage .adel-step.active .adel-step-dot { color: #fff; border-color: var(--teal); background: var(--teal); }
.adel-cartpage .adel-step-line { width: clamp(30px, 7vw, 90px); height: 1px; margin-inline: 12px; background: #cadcde; }

/* پیام‌های واقعی ووکامرس (موفقیت/خطا) — بعد از حذف محصول یا اعمال کد تخفیف */
.adel-cartpage .adel-notices { margin-bottom: 20px; }
/*
 * پیام «به سبد شما افزوده شد» (که با لینک «مشاهده سبد خرید» می‌آید) یک div است، نه ul مثل
 * بقیهٔ پیام‌های ووکامرس — برای همین هم ul و هم div را با هم هدف می‌گیریم.
 */
.adel-cartpage .adel-notices ul.woocommerce-error,
.adel-cartpage .adel-notices ul.woocommerce-message,
.adel-cartpage .adel-notices ul.woocommerce-info,
.adel-cartpage .adel-notices div.woocommerce-error,
.adel-cartpage .adel-notices div.woocommerce-message,
.adel-cartpage .adel-notices div.woocommerce-info {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px;
  margin: 0 0 10px; padding: 13px 18px; list-style: none; border-radius: 14px; font-size: .82rem;
}
.adel-cartpage .adel-notices ul.woocommerce-message,
.adel-cartpage .adel-notices div.woocommerce-message { color: var(--teal-700); background: #e7fafa; border: 1px solid #b7e6e6; }
.adel-cartpage .adel-notices ul.woocommerce-error,
.adel-cartpage .adel-notices div.woocommerce-error { color: var(--danger); background: #fff2f1; border: 1px solid #f3c8c4; }
.adel-cartpage .adel-notices ul.woocommerce-info,
.adel-cartpage .adel-notices div.woocommerce-info { color: var(--muted); background: #f3f8fa; border: 1px solid var(--line); }
.adel-cartpage .adel-notices li { margin: 0; }
.adel-cartpage .adel-notices .button.wc-forward {
  flex: 0 0 auto; min-height: 34px; padding: 7px 14px; display: inline-flex; align-items: center;
  border-radius: 10px; color: #fff; background: var(--teal); font-size: .72rem; font-weight: 700; white-space: nowrap;
}
.adel-cartpage .adel-notices .button.wc-forward:hover { background: var(--teal-700); }

.adel-cartpage .adel-cart-layout { display: grid; grid-template-columns: minmax(0, 1fr) 350px; gap: 22px; align-items: start; }
.adel-cartpage .adel-cart-main { min-width: 0; }
.adel-cartpage .adel-cart-card, .adel-cartpage .adel-summary { border: 1px solid var(--line); border-radius: 23px; background: #fff; box-shadow: var(--shadow-sm); }
.adel-cartpage .adel-cart-card { overflow: hidden; }
.adel-cartpage .adel-cart-top { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 19px 21px; border-bottom: 1px solid var(--line); }
.adel-cartpage .adel-cart-top h2, .adel-cartpage .adel-summary h2 { margin: 0; color: var(--deep); font-size: 1rem; }
.adel-cartpage .adel-count { padding: 4px 10px; border-radius: 99px; color: var(--teal-700); background: #e7fafa; font-size: .68rem; font-weight: 800; }
.adel-cartpage .adel-items { padding: 3px 21px; }
.adel-cartpage .adel-item { display: grid; grid-template-columns: 112px minmax(0, 1fr) auto; align-items: center; gap: 17px; padding: 18px 0; }
.adel-cartpage .adel-item + .adel-item { border-top: 1px solid #edf2f3; }
.adel-cartpage .adel-item-image { position: relative; overflow: hidden; aspect-ratio: 1.2; border-radius: 15px; background: var(--ice-2); }
.adel-cartpage .adel-item-image img { width: 100%; height: 100%; object-fit: cover; }
.adel-cartpage .adel-item-type { display: inline-flex; align-items: center; gap: 5px; color: var(--teal-700); font-size: .65rem; font-weight: 700; }
.adel-cartpage .adel-item h3 { margin: 4px 0 5px; color: var(--deep); font-size: .88rem; line-height: 1.6; }
.adel-cartpage .adel-access { display: flex; align-items: center; gap: 5px; color: var(--muted); font-size: .66rem; }
.adel-cartpage .adel-access svg { color: var(--teal); }
.adel-cartpage .adel-qty-note { display: block; margin-top: 3px; color: var(--muted); font-size: .65rem; }
.adel-cartpage .adel-item-side { min-width: 126px; text-align: left; }
.adel-cartpage .adel-price { display: block; color: var(--deep); font-size: .86rem; font-weight: 800; white-space: nowrap; }
.adel-cartpage .adel-remove { min-height: 38px; margin-top: 9px; padding: 6px 9px; display: inline-flex; align-items: center; gap: 5px; border: 0; border-radius: 10px; color: #8d5151; background: transparent; font-size: .65rem; cursor: pointer; transition: .18s; }
.adel-cartpage .adel-remove:hover { color: var(--danger); background: #fff2f1; }

.adel-cartpage .adel-coupon-wrap { padding: 15px 21px; border-top: 1px solid var(--line); background: #fbfdfd; }
.adel-cartpage .adel-coupon-wrap summary { width: max-content; display: flex; align-items: center; gap: 7px; color: var(--teal-700); font-size: .72rem; font-weight: 700; cursor: pointer; list-style: none; }
.adel-cartpage .adel-coupon-wrap summary::-webkit-details-marker { display: none; }
.adel-cartpage .adel-coupon-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; margin-top: 12px; }
.adel-cartpage .adel-coupon-form label { grid-column: 1 / -1; color: var(--muted); font-size: .66rem; }
.adel-cartpage .adel-coupon-input { min-width: 0; height: 44px; padding: 8px 13px; border: 1px solid #bfd8da; border-radius: 11px; color: var(--ink); background: #fff; outline: 0; }
.adel-cartpage .adel-coupon-input:focus { border-color: var(--teal); box-shadow: 0 0 0 3px rgba(0, 128, 128, .1); }
.adel-cartpage .adel-coupon-btn { min-height: 44px; padding: 8px 15px; border: 1px solid var(--teal); border-radius: 11px; color: var(--teal-700); background: #fff; font-size: .7rem; font-weight: 700; cursor: pointer; }
.adel-cartpage .adel-coupon-btn:hover { background: #f0ffff; }

.adel-cartpage .adel-summary { position: sticky; top: 18px; padding: 21px; }
.adel-cartpage .adel-summary h2 { padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.adel-cartpage .adel-summary-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 11px 0; color: var(--muted); font-size: .74rem; }
.adel-cartpage .adel-summary-row strong { color: var(--ink); font-size: .78rem; }
.adel-cartpage .adel-discount-row, .adel-cartpage .adel-coupon-applied { color: var(--teal-700); }
.adel-cartpage .adel-coupon-applied { font-size: .7rem; }
.adel-cartpage .adel-coupon-applied span { display: inline-flex; align-items: center; gap: 5px; }
.adel-cartpage .adel-coupon-applied a { color: var(--danger); font-size: .68rem; text-decoration: underline; }
.adel-cartpage .adel-total { margin-top: 4px; padding: 15px 0 17px; border-top: 1px solid var(--line); }
.adel-cartpage .adel-total span { color: var(--deep); font-weight: 800; }
.adel-cartpage .adel-total strong { color: var(--deep); font-size: 1.12rem; }
.adel-cartpage .adel-checkout-btn { width: 100%; min-height: 52px; display: flex; align-items: center; justify-content: center; gap: 9px; border: 0; border-radius: 14px; color: #fff; background: var(--teal); box-shadow: 0 10px 24px rgba(0, 128, 128, .23); font-weight: 800; cursor: pointer; transition: .2s var(--ease); }
.adel-cartpage .adel-checkout-btn:hover { background: var(--teal-700); transform: translateY(-2px); }
.adel-cartpage .adel-secure { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 11px 0 0; color: var(--muted); font-size: .64rem; }
.adel-cartpage .adel-secure svg { color: var(--teal); }
.adel-cartpage .adel-guarantee {
  position: relative; overflow: hidden; display: grid; grid-template-columns: 47px minmax(0, 1fr) auto;
  align-items: center; gap: 11px; margin-top: 17px; padding: 14px; border: 2px solid #82d7d5; border-radius: 16px;
  background: linear-gradient(135deg, #ddffff 0, #f5ffff 70%); box-shadow: 0 9px 22px rgba(0, 128, 128, .1); transition: .2s var(--ease);
}
.adel-cartpage .adel-guarantee::before { content: ""; position: absolute; inset-inline-end: -34px; top: -48px; width: 100px; height: 100px; border: 18px solid rgba(0, 255, 255, .18); border-radius: 50%; pointer-events: none; }
.adel-cartpage .adel-guarantee:hover { border-color: var(--teal); transform: translateY(-2px); }
.adel-cartpage .adel-guarantee-icon { width: 47px; height: 47px; display: grid; place-items: center; border-radius: 14px; color: #fff; background: var(--teal); box-shadow: 0 7px 17px rgba(0, 128, 128, .2); }
.adel-cartpage .adel-guarantee strong { position: relative; display: block; color: var(--deep); font-size: .78rem; }
.adel-cartpage .adel-guarantee span span { position: relative; display: block; color: #4f6b6e; font-size: .62rem; }
.adel-cartpage .adel-guarantee-arrow { position: relative; color: var(--teal); }
.adel-cartpage .adel-trust { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.adel-cartpage .adel-trust-item { display: flex; align-items: center; gap: 9px; color: #536c70; font-size: .65rem; }
.adel-cartpage .adel-trust-icon { width: 31px; height: 31px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 9px; color: var(--deep); background: #e2f8f8; }

.adel-cartpage .adel-empty-cart { padding: 56px 22px; text-align: center; }
.adel-cartpage .adel-empty-icon { width: 76px; height: 76px; margin: 0 auto 17px; display: grid; place-items: center; border-radius: 24px; color: var(--deep); background: linear-gradient(145deg, #dfffff, #effafa); }
.adel-cartpage .adel-empty-cart h2 { margin: 0; color: var(--deep); font-size: 1.25rem; }
.adel-cartpage .adel-empty-cart p { max-width: 430px; margin: 6px auto 20px; color: var(--muted); font-size: .76rem; }
.adel-cartpage .adel-empty-cart .adel-checkout-btn { width: max-content; min-width: 180px; margin: auto; padding-inline: 20px; }

.adel-cartpage .adel-mobile-checkout { display: none; }

@media (max-width: 900px) {
  .adel-cartpage .adel-cart-layout { grid-template-columns: 1fr; }
  .adel-cartpage .adel-summary { position: static; }
  .adel-cartpage .adel-trust { grid-template-columns: repeat(2, 1fr); }
  .adel-cartpage .adel-trust-item { align-items: flex-start; }
}

@media (max-width: 620px) {
  .adel-container { width: min(calc(100% - 24px), var(--container)); }
  .adel-cartpage .adel-cart-page { padding: 17px 0 100px; }
  .adel-cartpage .adel-page-head { align-items: flex-start; flex-direction: column; margin-bottom: 18px; }
  .adel-cartpage .adel-back-shop { width: 100%; justify-content: center; }
  .adel-cartpage .adel-steps { justify-content: space-between; padding: 11px 12px; }
  .adel-cartpage .adel-step { gap: 5px; font-size: .62rem; }
  .adel-cartpage .adel-step-dot { width: 25px; height: 25px; }
  .adel-cartpage .adel-step-line { flex: 1; width: auto; min-width: 12px; margin-inline: 6px; }
  .adel-cartpage .adel-cart-layout { gap: 14px; }
  .adel-cartpage .adel-cart-card, .adel-cartpage .adel-summary { border-radius: 19px; }
  .adel-cartpage .adel-cart-top { padding: 16px; }
  .adel-cartpage .adel-items { padding: 0 16px; }
  .adel-cartpage .adel-item { grid-template-columns: 78px minmax(0, 1fr); gap: 12px; padding: 16px 0; }
  .adel-cartpage .adel-item-side { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; min-width: 0; text-align: right; }
  .adel-cartpage .adel-item h3 { font-size: .79rem; }
  .adel-cartpage .adel-coupon-wrap { padding: 14px 16px; }
  .adel-cartpage .adel-coupon-form { grid-template-columns: 1fr; }
  .adel-cartpage .adel-coupon-form label { grid-column: auto; }
  .adel-cartpage .adel-summary { padding: 18px; }
  .adel-cartpage .adel-trust { grid-template-columns: 1fr; }
  .adel-cartpage .adel-mobile-checkout {
    position: fixed; z-index: 25; inset-inline: 0; bottom: 0; display: flex; align-items: center; justify-content: space-between;
    gap: 12px; padding: 10px 14px max(10px, env(safe-area-inset-bottom)); border-top: 1px solid var(--line);
    background: rgba(255, 255, 255, .94); backdrop-filter: blur(14px); box-shadow: 0 -10px 30px rgba(0, 70, 75, .1);
  }
  .adel-cartpage .adel-mobile-checkout strong { display: block; color: var(--deep); font-size: .78rem; }
  .adel-cartpage .adel-mobile-checkout span span { display: block; color: var(--muted); font-size: .58rem; }
  .adel-cartpage .adel-mobile-checkout .adel-checkout-btn { width: auto; min-height: 46px; padding-inline: 17px; font-size: .73rem; }
}

@media (prefers-reduced-motion: reduce) {
  .adel-cartpage *, .adel-cartpage *::before, .adel-cartpage *::after { transition-duration: .01ms !important; }
}
