.fc-cart-loading::before,
.fc-cart-added::before { opacity: 0 !important; }
.fc-cart-loading > *,
.fc-cart-added > * { opacity: 0 !important; }
.fc-cart-loading::after,
.fc-cart-added::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 10 !important;
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  margin: -10px 0 0 -10px !important;
  background: none !important;
  border: 2px solid rgba(255,255,255,.42) !important;
  border-top-color: #fff !important;
  border-radius: 50% !important;
  box-sizing: border-box !important;
  opacity: 1 !important;
  pointer-events: none !important;
  animation: fc-cart-spin .7s linear infinite !important;
}
.fc-cart-added::after {
  content: "✓" !important;
  width: 24px !important;
  height: 24px !important;
  margin: -12px 0 0 -12px !important;
  border: 0 !important;
  color: #fff !important;
  font: 700 23px/24px Arial,sans-serif !important;
  text-align: center !important;
  animation: none !important;
}
@keyframes fc-cart-spin { to { transform: rotate(360deg); } }

.cart-widget-side .fc-cart-feedback {
  margin: 16px 20px 8px;
  padding: 18px;
  border: 1px solid #efd9d5;
  border-radius: 18px;
  background: #fff8f6;
  box-shadow: 0 10px 28px rgba(73,35,28,.08);
  color: #232323;
  direction: rtl;
  font-family: Modam, Ray, Arial, sans-serif;
  box-sizing: border-box;
}
.fc-cart-feedback__heading { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.fc-cart-feedback__check {
  display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px;
  border-radius: 50%; background: #9b1611; color: #fff;
  font: 700 19px/1 Arial,sans-serif;
}
.fc-cart-feedback__title { margin: 0; color: #9b1611; font-size: 15px; font-weight: 700; line-height: 1.7; }
.fc-cart-feedback__product { display: flex; align-items: center; gap: 10px; margin: 0 0 16px; }
.fc-cart-feedback__image { flex: 0 0 56px; width: 56px; height: 56px; object-fit: cover; border-radius: 10px; background: #fff; }
.fc-cart-feedback__name { margin: 0; font-family: Ray, Modam, Arial, sans-serif; font-size: 13px; font-weight: 500; line-height: 1.7; }
.fc-cart-feedback__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.fc-cart-feedback__action {
  display: flex; align-items: center; justify-content: center; min-height: 42px;
  padding: 7px 8px; border: 1px solid #9b1611; border-radius: 11px;
  color: #9b1611; background: #fff; text-decoration: none !important;
  text-align: center; font-family: Modam, Ray, Arial, sans-serif;
  font-size: 11px; font-weight: 600; line-height: 1.5;
}
.fc-cart-feedback__action:hover { color: #9b1611; background: #fbeae7; }
.fc-cart-feedback__action--checkout,
.fc-cart-feedback__action--checkout:hover { color: #fff; background: #9b1611; }
.cart-widget-side.fc-cart-success-open .woocommerce-mini-cart__buttons { display: none !important; }
@media (max-width: 480px) {
  .cart-widget-side .fc-cart-feedback { margin: 12px 15px 6px; padding: 15px; }
  .fc-cart-feedback__actions { gap: 7px; }
  .fc-cart-feedback__action { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) { .fc-cart-loading::after { animation-duration: 1.4s !important; } }

/* Farachoob cart drawer. Native WooCommerce controls and cart fragments. */
body .cart-widget-side,
body .cart-widget-side *,
body .cart-widget-side *::before,
body .cart-widget-side *::after {box-sizing:border-box!important}
body .cart-widget-side {
  display:flex!important;
  flex-direction:column;
  overflow:hidden!important;
  width:min(420px,calc(100vw - 18px))!important;
  max-width:420px!important;
  padding:0!important;
  border-right:1px solid #e7d7d0;
  border-radius:0 24px 24px 0;
  background:#faf6f3;
  box-shadow:12px 0 45px #3215121c;
  color:#292321;
  font-family:Modam,Ray,Arial,sans-serif;
  direction:rtl;
}
body .cart-widget-side > .wd-heading {
  flex-shrink:0;
  position:relative;
  align-items:center;
  min-height:100px;
  margin:0;
  padding:20px!important;
  border-bottom:1px solid #ead9d3;
  background:linear-gradient(115deg,#fff 0%,#f7e8e2 100%);
}
body .cart-widget-side .wd-heading > .title {
  position:relative;
  padding-inline-start:54px;
  color:#292321;
  text-align:right;
  font:800 21px/1.5 Modam,Ray,Arial,sans-serif;
}
body .cart-widget-side .wd-heading > .title::before {
  content:"";
  position:absolute;
  right:0;top:3px;
  width:42px;height:46px;
  border:1px solid #e8c8bf;
  border-radius:13px;
  background:#fff8f5 url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%239b1611%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%207h12l1.5%2013h-15L6%207Z%22%2F%3E%3Cpath%20d%3D%22M9%208V5a3%203%200%200%201%206%200v3%22%2F%3E%3C%2Fsvg%3E") center/25px no-repeat;
}
body .cart-widget-side .wd-heading > .title::after {
  content:"محصولات انتخاب‌شدهٔ شما";
  display:block;
  margin-top:3px;
  color:#8a6c60;
  font:400 11px/1.8 Ray,Modam,Arial,sans-serif;
}
body .cart-widget-side .close-side-widget a {
  display:flex;align-items:center;justify-content:center;
  box-sizing:border-box;
  flex:none;
  width:34px;height:34px;min-width:34px;min-height:34px;
  padding:0!important;
  border:1px solid #ead6ce;border-radius:50%;
  background:#ffffffb3;color:#9b1611;
}
body .cart-widget-side .close-side-widget .wd-action-icon {font-size:12px}
body .cart-widget-side .close-side-widget .wd-action-text {
  position:absolute!important;
  width:1px;height:1px;margin:-1px;padding:0;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
body .cart-widget-side > .widget_shopping_cart {
  display:flex!important;flex:1;flex-direction:column;
  width:100%;height:auto!important;min-height:0;margin:0;
}
body .cart-widget-side .widget_shopping_cart_content {
  display:flex;flex:1;flex-direction:column;
  width:100%;height:100%;min-height:0;
}
body .cart-widget-side .shopping-cart-widget-body {
  flex:1;min-height:0;max-height:none;
  overflow:hidden;
}
body .cart-widget-side .shopping-cart-widget-body > .wd-scroll-content {
  height:100%;max-height:none;padding:18px!important;
  overflow-y:auto;overscroll-behavior:contain;
  scrollbar-width:thin;scrollbar-color:#cfb5aa transparent;
}
body .cart-widget-side ul.woocommerce-mini-cart {
  display:flex;flex-direction:column;gap:12px;
  margin:0!important;padding:0!important;
}
body .cart-widget-side .woocommerce-mini-cart-item {
  position:relative;
  display:grid!important;
  grid-template-columns:76px minmax(0,1fr);
  gap:12px;
  min-height:134px;
  margin:0!important;padding:13px!important;
  border:1px solid #ecded8!important;
  border-radius:18px;
  background:#fff;
  box-shadow:0 4px 14px #4e251508;
}
body .cart-widget-side .cart-item-link {z-index:1!important;border-radius:inherit}
body .cart-widget-side .cart-item-image {
  position:relative;z-index:2;
  width:76px!important;height:90px;
  margin:0!important;padding:6px!important;
  border:1px solid #f1e6e0;border-radius:12px;
  background:#fbf8f5;overflow:hidden;
}
body .cart-widget-side .cart-item-image img {
  display:block;width:100%;height:100%;
  margin:0;object-fit:contain;
}
body .cart-widget-side .cart-info {
  min-width:0;margin:0!important;padding:0 0 0 22px!important;
  text-align:right;
}
body .cart-widget-side .cart-info > .wd-entities-title {
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0 0 9px;color:#292321;
  font:600 13px/1.8 Modam,Ray,Arial,sans-serif;
}
body .cart-widget-side .woocommerce-mini-cart-item a.remove {
  position:absolute!important;z-index:5!important;
  left:8px!important;right:auto!important;top:8px!important;
  display:grid;place-items:center;
  width:25px!important;height:25px!important;
  margin:0;padding:0!important;
  border:1px solid #ecdcd6;border-radius:8px;
  background:#fbf3ef;color:#9b1611!important;
  font:400 19px/1 Arial,sans-serif!important;
}
body .cart-widget-side .woocommerce-mini-cart-item a.remove::before,
body .cart-widget-side .woocommerce-mini-cart-item a.remove::after {content:none!important}
body .cart-widget-side .cart-info > div.quantity {
  position:relative;z-index:3;
  display:inline-flex!important;
  width:104px;height:33px;
  margin:0!important;border:1px solid #e8d7ce;border-radius:9px;
  background:#fcf8f5;overflow:hidden;
}
body .cart-widget-side .cart-info div.quantity > button {
  flex:0 0 32px;min-width:0!important;
  width:32px!important;height:31px!important;min-height:0!important;
  margin:0;padding:0!important;border:0!important;border-radius:0;
  background:transparent;color:#9b1611;
  font:500 17px/1 Arial,sans-serif;
}
body .cart-widget-side .cart-info div.quantity > input.qty {
  flex:1;box-sizing:border-box!important;
  width:38px!important;min-width:0;height:31px!important;
  margin:0;padding:0!important;border:0!important;border-radius:0;
  background:transparent;color:#292321;text-align:center;
  font:650 13px/31px Modam,Ray,Arial,sans-serif;
}
body .cart-widget-side .cart-info > span.quantity {
  display:block;margin:8px 0 0;color:#a28c80;
  font:400 12px/1.7 Modam,Ray,Arial,sans-serif;
}
body .cart-widget-side .cart-info > span.quantity .amount {
  color:#9b1611;font:750 14px/1.7 Modam,Ray,Arial,sans-serif;
}
body .cart-widget-side .cart-info .woocommerce-Price-currencySymbol {font-size:11px;font-weight:400}
body .cart-widget-side .shopping-cart-widget-footer {
  flex-shrink:0;margin:0;padding:18px 20px calc(18px + env(safe-area-inset-bottom))!important;
  border-top:1px solid #e9d9d0;
  background:#fff;
  box-shadow:0 -8px 24px #4f241105;
}
body .cart-widget-side .woocommerce-mini-cart__total {
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin:0 0 15px;padding:0!important;border:0!important;
}
body .cart-widget-side .woocommerce-mini-cart__total strong {
  color:#79665d;font:550 13px/1.8 Modam,Ray,Arial,sans-serif;
}
body .cart-widget-side .woocommerce-mini-cart__total > .amount {
  color:#9b1611;font:800 20px/1.6 Modam,Ray,Arial,sans-serif;
}
body .cart-widget-side .woocommerce-mini-cart__total .woocommerce-Price-currencySymbol {font-size:12px;font-weight:500}
body .cart-widget-side .woocommerce-mini-cart__buttons {
  display:grid!important;grid-template-columns:1fr 1fr;gap:10px;
  margin:0!important;padding:0;
}
body .cart-widget-side .woocommerce-mini-cart__buttons .button {
  display:flex!important;align-items:center;justify-content:center;
  width:100%;min-height:46px;margin:0!important;padding:10px 6px!important;
  border:1px solid #9b1611!important;border-radius:12px!important;
  background:#fff!important;color:#9b1611!important;
  box-shadow:none;
  font:700 12px/1.6 Modam,Ray,Arial,sans-serif!important;
}
body .cart-widget-side .woocommerce-mini-cart__buttons .checkout {
  background:#9b1611!important;color:#fff!important;
}
body .cart-widget-side .woocommerce-mini-cart__buttons .checkout:hover {background:#7f120e!important}
body .cart-widget-side .woocommerce-mini-cart__empty-message {
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;
  min-height:250px;margin:0;padding:30px 20px;color:#79665d;text-align:center;
  font:600 15px/1.9 Modam,Ray,Arial,sans-serif;
}
body .cart-widget-side .fc-cart-feedback {
  flex-shrink:0;margin:12px 18px 0;padding:13px;border-radius:14px;box-shadow:none;
}
body .cart-widget-side .fc-cart-feedback__heading {margin-bottom:8px}
body .cart-widget-side .fc-cart-feedback__title {font-size:13px}
body .cart-widget-side .fc-cart-feedback__product {margin-bottom:10px}
body .cart-widget-side .fc-cart-feedback__image {flex-basis:44px;width:44px;height:44px}
body .cart-widget-side :is(a,button,input):focus-visible {outline:2px solid #9b1611;outline-offset:2px}
@media(max-width:480px) {
  body .cart-widget-side {border-radius:0 20px 20px 0}
  body .cart-widget-side > .wd-heading {padding:18px!important;min-height:92px}
  body .cart-widget-side .shopping-cart-widget-body > .wd-scroll-content {padding:14px!important}
  body .cart-widget-side .woocommerce-mini-cart-item {grid-template-columns:68px minmax(0,1fr);gap:10px;padding:11px!important}
  body .cart-widget-side .cart-item-image {width:68px!important;height:84px}
  body .cart-widget-side .cart-info > .wd-entities-title {font-size:12px}
  body .cart-widget-side .shopping-cart-widget-footer {padding:16px 16px calc(16px + env(safe-area-inset-bottom))!important}
}

/* Empty mini-cart uses the same Farachoob drawer as a populated cart. */
body .cart-widget-side:has(.wd-empty-mini-cart) .shopping-cart-widget-footer,
body .cart-widget-side:has(.wd-empty-mini-cart) .fc-cart-feedback {
  display:none!important;
}
body .cart-widget-side .shopping-cart-widget-body:has(.wd-empty-mini-cart) {
  display:flex!important;
  flex-direction:column;
}
body .cart-widget-side .wd-scroll-content:has(.wd-empty-mini-cart) {
  display:flex!important;
  flex:1;
  flex-direction:column;
  padding:24px!important;
}
body .cart-widget-side .wd-empty-mini-cart {
  display:flex!important;
  flex:1;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:25px;
  min-height:330px;
  margin:0!important;
  padding:20px 0 40px!important;
  text-align:center;
}
body .cart-widget-side .wd-empty-mini-cart .woocommerce-mini-cart__empty-message {
  display:flex!important;
  flex-direction:column;
  align-items:center;
  gap:14px;
  width:100%;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  color:#392b25;
  font:750 20px/1.8 Modam,Ray,Arial,sans-serif!important;
}
body .cart-widget-side .wd-empty-mini-cart .woocommerce-mini-cart__empty-message::before {
  content:""!important;
  position:static!important;
  display:block!important;
  flex:none;
  width:150px!important;
  height:150px!important;
  margin:0 0 14px!important;
  padding:0!important;
  border:1px solid #ecd6ca;
  border-radius:44px;
  background:#f3e7dd url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 150' fill='none'%3E%3Ccircle cx='75' cy='77' r='54' fill='%23fff8f1'/%3E%3Cpath d='M45 58h60l8 64H37l8-64Z' fill='%23ead1bd' stroke='%239b1611' stroke-width='2.5' stroke-linejoin='round'/%3E%3Cpath d='M61 63V48a14 14 0 0 1 28 0v15' stroke='%239b1611' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M63 88V77a6 6 0 0 1 6-6h12a6 6 0 0 1 6 6v11M59 87v13h32V87M64 100v10m22-10v10' stroke='%239b1611' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M117 29v12m-6-6h12M28 55v8m-4-4h8' stroke='%23bc8b68' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E") center/126px no-repeat!important;
  box-shadow:0 14px 35px #70411c0a;
  color:transparent!important;
  font-size:0!important;
  opacity:1!important;
  transform:none!important;
}
body .cart-widget-side .wd-empty-mini-cart .woocommerce-mini-cart__empty-message::after {
  content:"برای شروع، یک انتخاب زیبا برای خانه‌ات پیدا کن.";
  display:block;
  max-width:270px;
  color:#92786b;
  font:400 14px/1.9 Ray,Modam,Arial,sans-serif;
}
body .cart-widget-side .wd-empty-mini-cart > .wc-backward {
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:12px;
  width:100%;
  max-width:280px;
  min-height:50px;
  margin:0!important;
  padding:12px 20px!important;
  border:1px solid #9b1611!important;
  border-radius:14px!important;
  background:#9b1611!important;
  color:#fff!important;
  box-shadow:0 8px 20px #9b16111a!important;
  text-decoration:none!important;
  font:700 14px/1.7 Modam,Ray,Arial,sans-serif!important;
  transition:background .2s ease;
}
body .cart-widget-side .wd-empty-mini-cart > .wc-backward::after {
  content:"←";
  font:400 20px/1 Arial,sans-serif;
}
body .cart-widget-side .wd-empty-mini-cart > .wc-backward:hover {
  background:#7f120e!important;
}
@media(max-width:480px) {
  body .cart-widget-side .wd-scroll-content:has(.wd-empty-mini-cart) {padding:20px!important}
  body .cart-widget-side .wd-empty-mini-cart {gap:22px;padding-bottom:28px!important}
  body .cart-widget-side .wd-empty-mini-cart .woocommerce-mini-cart__empty-message {font-size:18px!important}
}
@media(max-height:600px) {
  body .cart-widget-side .wd-empty-mini-cart {min-height:280px;gap:16px;padding:10px 0!important}
  body .cart-widget-side .wd-empty-mini-cart .woocommerce-mini-cart__empty-message::before {width:110px!important;height:110px!important;background-size:94px!important;margin-bottom:4px!important;border-radius:30px}
}

body .cart-widget-side .wd-empty-mini-cart::before,
body .cart-widget-side .wd-empty-mini-cart::after {content:none!important;display:none!important}
