/* Digital Shop In — layering, tab bar, logo, header, footer, product options, sticky buy bar, dark mode */

/* Popup always above the tab bar, side cart button and chat widgets */
.dsi-promo { z-index: 2147483000; }
.dsi-toast { z-index: 2147483001; }
body.dsi-promo-open .wd-toolbar,
body.dsi-promo-open .wd-sticky-btn,
body.dsi-promo-open .fkcart-toggler,
body.dsi-promo-open .dsi-pill,
body.dsi-promo-open .scrollToTop { transform: translateY(180%) !important; transition: transform .3s ease; }
body.dsi-promo-open { overflow: hidden; }
.dsi-promo__sheet { max-height: calc(100dvh - 24px); overflow: auto; overscroll-behavior: contain; }
@media (max-width: 767px) {
  .dsi-promo__sheet { padding-bottom: calc(26px + env(safe-area-inset-bottom)); }
  .dsi-promo__badge { width: 56px; height: 56px; font-size: 26px; margin-bottom: 8px; }
  .dsi-promo__title { font-size: 23px; }
}

/* ---------- Tab bar (mobile) ---------- */
body.dsi-ios .wd-toolbar { z-index: 400; align-items: stretch; }
body.dsi-ios .wd-toolbar > * { flex: 1 1 0; min-width: 0; }
body.dsi-ios .wd-toolbar .wd-toolbar-item > a,
body.dsi-ios .wd-toolbar .wd-tools-element > a {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 3px; height: 55px; padding: 6px 2px 4px; color: var(--dsi-label-2);
}
body.dsi-ios .wd-toolbar .wd-tools-icon,
body.dsi-ios .wd-toolbar .wd-toolbar-icon { font-size: 22px; line-height: 1; height: 24px; display: flex; align-items: center; justify-content: center; }
body.dsi-ios .wd-toolbar .wd-toolbar-label {
  font-size: 10px; font-weight: 500; line-height: 1.2; max-width: 100%;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin: 0;
}
body.dsi-ios .wd-toolbar .wd-toolbar-home > a { color: var(--dsi-green-text); }
body.dsi-ios .wd-toolbar .wd-tools-count { top: -4px; min-width: 16px; height: 16px; line-height: 16px; font-size: 10px; }
body.dsi-ios .wd-show-sidebar-btn.wd-action-btn.wd-sticky,
body.dsi-ios .wd-sidebar-opener.wd-sticky {
  border-radius: 14px 0 0 14px !important;
  background: rgba(255, 255, 255, .86) !important;
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
  box-shadow: var(--dsi-shadow) !important;
}
@media (max-width: 1024px) {
  body.dsi-ios .dsi-pill { bottom: calc(72px + env(safe-area-inset-bottom)); }
}

/* ---------- Sticky add-to-cart / buy-now bar (WoodMart .wd-sticky-btn) ---------- */
body.dsi-ios .wd-sticky-btn {
  background: rgba(255, 255, 255, .88) !important;
  -webkit-backdrop-filter: saturate(180%) blur(22px);
  backdrop-filter: saturate(180%) blur(22px);
  border-top: .5px solid var(--dsi-sep);
  box-shadow: 0 -6px 24px rgba(0, 0, 0, .06) !important;
  padding: 10px 0;
  z-index: 390;
}
body.dsi-ios .wd-sticky-btn .wd-sticky-btn-container,
body.dsi-ios .wd-sticky-btn .container { display: flex; align-items: center; gap: 12px; }
body.dsi-ios .wd-sticky-btn .wd-sticky-btn-content { display: flex; align-items: center; gap: 10px; min-width: 0; flex: 1 1 auto; }
body.dsi-ios .wd-sticky-btn .wd-sticky-btn-thumbnail img { width: 44px; height: 44px; border-radius: 10px; object-fit: cover; }
body.dsi-ios .wd-sticky-btn .wd-entities-title { font-size: 14px; font-weight: 600; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.dsi-ios .wd-sticky-btn .price { font-size: 15px; font-weight: 700; }
body.dsi-ios .wd-sticky-btn .wd-sticky-btn-cart { display: flex; align-items: center; gap: 8px; flex: 0 0 auto; }
body.dsi-ios .wd-sticky-btn form.cart { display: flex !important; align-items: center; gap: 8px; margin: 0 !important; flex-wrap: nowrap !important; }
body.dsi-ios .wd-sticky-btn .tc-extra-product-options,
body.dsi-ios .wd-sticky-btn .tc-totals-form,
body.dsi-ios .wd-sticky-btn .tm-epo-totals,
body.dsi-ios .wd-sticky-btn .wd-sold-count,
body.dsi-ios .wd-sticky-btn .dsi-trust { display: none !important; }
body.dsi-ios .wd-sticky-btn .quantity { min-height: 0; height: 44px; }
body.dsi-ios .wd-sticky-btn .quantity input { min-height: 44px !important; height: 44px; }
body.dsi-ios .wd-sticky-btn .single_add_to_cart_button,
body.dsi-ios .wd-sticky-btn .wd-buy-now-btn {
  min-height: 44px !important; height: 44px; line-height: 44px; padding: 0 18px !important;
  border-radius: 12px !important; font-size: 15px !important; white-space: nowrap; flex: 0 0 auto; margin: 0 !important;
}
body.dsi-ios .wd-sticky-btn .wd-buy-now-btn { background: var(--dsi-label) !important; border-color: var(--dsi-label) !important; color: var(--dsi-card) !important; }
@media (max-width: 1024px) {
  body.dsi-ios.sticky-toolbar-on .wd-sticky-btn { bottom: calc(55px + env(safe-area-inset-bottom)) !important; }
  body.dsi-ios .wd-sticky-btn { padding: 8px 0; }
  body.dsi-ios .wd-sticky-btn .wd-sticky-btn-container,
  body.dsi-ios .wd-sticky-btn .container { padding-inline: 12px; }
  body.dsi-ios .wd-sticky-btn .wd-sticky-btn-content { display: none; }
  body.dsi-ios .wd-sticky-btn .wd-sticky-btn-cart,
  body.dsi-ios .wd-sticky-btn form.cart { width: 100%; }
  body.dsi-ios .wd-sticky-btn .quantity { display: none !important; }
  body.dsi-ios .wd-sticky-btn .single_add_to_cart_button,
  body.dsi-ios .wd-sticky-btn .wd-buy-now-btn { flex: 1 1 0 !important; width: auto !important; padding: 0 10px !important; }
  /* the in-page buy-now button sits under add-to-cart; keep the floating pill clear of the bar */
  body.dsi-ios.single-product .dsi-pill { bottom: calc(132px + env(safe-area-inset-bottom)); }
}

/* ---------- Logo ---------- */
.dsi-logo { display: block; height: auto; max-width: 100%; width: 210px; }
.dsi-logo--night { display: none; }
html[data-dsi-theme="dark"] body.dsi-ios .dsi-logo--day { display: none; }
html[data-dsi-theme="dark"] body.dsi-ios .dsi-logo--night { display: block; }
body.dsi-ios .wd-logo { align-items: center; }
@media (max-width: 1024px) { .dsi-logo { width: 160px; } }
@media (max-width: 380px) { .dsi-logo { width: 140px; } }
.ds-footer .dsi-logo { width: 220px; }

/* ---------- Header + sticky header (brand green, iOS glass) ---------- */
body.dsi-ios .whb-general-header {
  background-color: var(--dsi-green) !important;
  background-image: linear-gradient(180deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, 0)) !important;
}
body.dsi-ios .whb-sticked .whb-general-header,
body.dsi-ios .whb-clone .whb-general-header {
  background-color: rgba(44, 188, 140, .86) !important;
  -webkit-backdrop-filter: saturate(180%) blur(22px);
  backdrop-filter: saturate(180%) blur(22px);
}
body.dsi-ios .whb-general-header,
body.dsi-ios .whb-general-header .wd-tools-icon,
body.dsi-ios .whb-general-header .wd-tools-text,
body.dsi-ios .whb-general-header .wd-header-text,
body.dsi-ios .whb-general-header .wd-nav > li > a,
body.dsi-ios .whb-general-header .wd-tools-element > a { color: #fff !important; }
body.dsi-ios .whb-general-header .wd-nav > li > a { opacity: .92; border-radius: 999px; padding-inline: 12px; transition: background-color .15s, opacity .15s; }
body.dsi-ios .whb-general-header .wd-nav > li > a:hover,
body.dsi-ios .whb-general-header .wd-nav > li.current-menu-item > a { opacity: 1; background: rgba(255, 255, 255, .16); }
body.dsi-ios .whb-general-header .wd-nav > li > a:after { display: none !important; }
body.dsi-ios .whb-general-header .wd-cart-subtotal,
body.dsi-ios .whb-general-header .wd-cart-subtotal .amount { color: #fff !important; font-weight: 600; }
body.dsi-ios .whb-general-header .wd-tools-count { box-shadow: 0 0 0 2px var(--dsi-green); }
/* dropdowns / mega menus stay white cards with dark text */
body.dsi-ios .whb-general-header .wd-dropdown { background: var(--dsi-card); }
body.dsi-ios .whb-general-header .wd-dropdown a,
body.dsi-ios .whb-general-header .wd-dropdown-menu a,
body.dsi-ios .whb-general-header .dsi-tech-mega a,
body.dsi-ios .whb-general-header .wd-dropdown .wd-tools-text { color: var(--dsi-label) !important; }
body.dsi-ios .whb-general-header .dsi-tech-mega b { color: var(--dsi-green-text) !important; }

/* theme toggle (injected by dsi.js) */
.dsi-theme-btn {
  display: inline-flex; align-items: center; justify-content: center;
  width: 36px; height: 36px; min-height: 0 !important; padding: 0 !important;
  border-radius: 50% !important; border: 0 !important;
  background: rgba(255, 255, 255, .18) !important; color: #fff !important;
  cursor: pointer; margin-inline: 6px; flex: 0 0 36px;
  transition: background-color .15s, transform .15s;
  align-self: center;
}
.dsi-theme-btn:hover { background: rgba(255, 255, 255, .28) !important; }
.dsi-theme-btn:active { transform: scale(.92); }
.dsi-theme-btn svg { width: 18px; height: 18px; }
.dsi-theme-btn .i-sun { display: none; }
html[data-dsi-theme="dark"] .dsi-theme-btn .i-moon { display: none; }
html[data-dsi-theme="dark"] .dsi-theme-btn .i-sun { display: block; }

/* ---------- Footer (custom .ds-footer block) ---------- */
body.dsi-ios .ds-footer {
  font-family: inherit !important;
  background: linear-gradient(160deg, #2cbc8c 0%, #1f9f76 100%) !important;
  padding-top: 56px !important;
}
body.dsi-ios .ds-footer-glow, body.dsi-ios .ds-lightning { display: none !important; }
body.dsi-ios .ds-footer h2, body.dsi-ios .ds-footer h3, body.dsi-ios .ds-footer h4 { font-family: inherit !important; font-weight: 700; color: #fff !important; }
body.dsi-ios .ds-footer-col a { opacity: .88; transition: opacity .15s; }
body.dsi-ios .ds-footer-col a:hover { opacity: 1; }
body.dsi-ios .ds-footer-social a {
  border-radius: 12px !important;
  background: rgba(255, 255, 255, .16) !important;
  border: 0 !important;
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
}
body.dsi-ios .ds-footer-logo { background: transparent !important; box-shadow: none !important; padding: 0 !important; border: 0 !important; }
body.dsi-ios .ds-footer-bottom { border-top: .5px solid rgba(255, 255, 255, .22) !important; }
@media (max-width: 1024px) { body.dsi-ios .ds-footer { padding-bottom: calc(64px + env(safe-area-inset-bottom)) !important; } }

/* ---------- Product options (Extra Product Options) ---------- */
body.dsi-ios .tc-extra-product-options .tc-epo-label,
body.dsi-ios .tc-extra-product-options .tc-epo-label * {
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.7 !important;
  color: var(--dsi-label) !important;
  letter-spacing: 0 !important;
}
body.dsi-ios .tc-extra-product-options .tc-epo-label { margin: 0 0 8px !important; }
body.dsi-ios .tc-extra-product-options .tm-epo-required { color: var(--dsi-red) !important; }
body.dsi-ios .tc-extra-product-options .tm-epo-field-label { font-size: 14px !important; font-weight: 500; display: inline-flex; align-items: center; gap: 8px; }
body.dsi-ios .tc-extra-product-options input[type="checkbox"],
body.dsi-ios .tc-extra-product-options input[type="radio"] { width: 20px; height: 20px; min-height: 0 !important; accent-color: var(--dsi-green); }
body.dsi-ios .tc-totals-form, body.dsi-ios .tm-epo-totals { background: var(--dsi-fill); border-radius: 14px; padding: 12px 14px !important; margin: 10px 0 !important; }
body.dsi-ios .tm-epo-totals .price, body.dsi-ios .tm-final-totals .amount { font-size: 20px !important; }

/* sold counter */
body.dsi-ios .summary-inner .wd-sold-count { background: var(--dsi-fill); border-radius: 999px; padding: 6px 12px; display: inline-flex; align-items: center; gap: 6px; font-size: 13px; }

/* Add to cart + Buy now: one tidy column on the page */
body.dsi-ios .summary-inner form.cart .wd-buy-now-btn {
  flex: 1 1 100%;
  min-height: 52px;
  border-radius: 14px !important;
  background: var(--dsi-label) !important;
  border-color: var(--dsi-label) !important;
  color: var(--dsi-card) !important;
  font-size: 17px;
  margin: 0 !important;
}

/* =====================================================================
   DARK MODE  (html[data-dsi-theme=dark], set before first paint)
   ===================================================================== */
html[data-dsi-theme="dark"] { color-scheme: dark; background: #000; }
html[data-dsi-theme="dark"] body.dsi-ios {
  --dsi-bg: #000000;
  --dsi-card: #1c1c1e;
  --dsi-fill: #2c2c2e;
  --dsi-fill-2: #3a3a3c;
  --dsi-label: #f5f5f7;
  --dsi-label-2: #98989d;
  --dsi-sep: rgba(84, 84, 88, .55);
  --dsi-green-tint: rgba(48, 209, 155, .18);
  --dsi-shadow: 0 0 0 .5px rgba(255, 255, 255, .06);
  --dsi-shadow-lift: 0 0 0 .5px rgba(255, 255, 255, .1), 0 18px 40px rgba(0, 0, 0, .5);
  --wd-text-color: #e5e5ea;
  --wd-title-color: #f5f5f7;
  --wd-entities-title-color: #f5f5f7;
  --wd-link-color: #e5e5ea;
  --bgcolor-white: #1c1c1e;
  --bgcolor-gray-100: #1c1c1e;
  --bgcolor-gray-200: #2c2c2e;
  --bgcolor-gray-300: #3a3a3c;
  --brdcolor-gray-200: rgba(84, 84, 88, .55);
  --brdcolor-gray-300: rgba(84, 84, 88, .65);
  --color-gray-400: #8e8e93;
  --color-gray-500: #98989d;
  --color-gray-600: #aeaeb2;
  --color-gray-700: #c7c7cc;
  --color-gray-800: #e5e5ea;
  --color-gray-900: #f5f5f7;
  color: #e5e5ea;
  background: #000;
}
html[data-dsi-theme="dark"] body.dsi-ios .website-wrapper,
html[data-dsi-theme="dark"] body.dsi-ios .main-page-wrapper,
html[data-dsi-theme="dark"] body.dsi-ios .page-title,
html[data-dsi-theme="dark"] body.dsi-ios .wd-page-title { background-color: #000 !important; background-image: none !important; }
html[data-dsi-theme="dark"] body.dsi-ios h1, html[data-dsi-theme="dark"] body.dsi-ios h2,
html[data-dsi-theme="dark"] body.dsi-ios h3, html[data-dsi-theme="dark"] body.dsi-ios h4,
html[data-dsi-theme="dark"] body.dsi-ios h5, html[data-dsi-theme="dark"] body.dsi-ios h6,
html[data-dsi-theme="dark"] body.dsi-ios .title,
html[data-dsi-theme="dark"] body.dsi-ios .product_title,
html[data-dsi-theme="dark"] body.dsi-ios .elementor-heading-title,
html[data-dsi-theme="dark"] body.dsi-ios .wd-entities-title a { color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.dsi-ios p,
html[data-dsi-theme="dark"] body.dsi-ios li,
html[data-dsi-theme="dark"] body.dsi-ios td,
html[data-dsi-theme="dark"] body.dsi-ios th,
html[data-dsi-theme="dark"] body.dsi-ios label,
html[data-dsi-theme="dark"] body.dsi-ios .elementor-widget-text-editor,
html[data-dsi-theme="dark"] body.dsi-ios .woocommerce-product-details__short-description { color: #d1d1d6; }
html[data-dsi-theme="dark"] body.dsi-ios .price,
html[data-dsi-theme="dark"] body.dsi-ios .amount { color: #f5f5f7; }
html[data-dsi-theme="dark"] body.dsi-ios .price ins .amount,
html[data-dsi-theme="dark"] body.dsi-ios .order-total .amount { color: #30d19b !important; }

/* Elementor sections painted white/mint in the editor */
html[data-dsi-theme="dark"] body.dsi-ios .main-page-wrapper .elementor-section,
html[data-dsi-theme="dark"] body.dsi-ios .main-page-wrapper .e-con,
html[data-dsi-theme="dark"] body.dsi-ios .main-page-wrapper .elementor-widget-wrap { background-color: transparent !important; background-image: none !important; }

/* Header & sticky header: dark glass */
html[data-dsi-theme="dark"] body.dsi-ios .whb-general-header,
html[data-dsi-theme="dark"] body.dsi-ios .whb-sticked .whb-general-header,
html[data-dsi-theme="dark"] body.dsi-ios .whb-clone .whb-general-header {
  background-color: rgba(28, 28, 30, .82) !important;
  background-image: none !important;
  -webkit-backdrop-filter: saturate(180%) blur(22px);
  backdrop-filter: saturate(180%) blur(22px);
  box-shadow: 0 .5px 0 rgba(84, 84, 88, .6) !important;
}
html[data-dsi-theme="dark"] body.dsi-ios .whb-general-header .wd-tools-count { box-shadow: 0 0 0 2px #1c1c1e; }
html[data-dsi-theme="dark"] body.dsi-ios .whb-general-header .wd-nav > li.current-menu-item > a { color: #30d19b !important; }
html[data-dsi-theme="dark"] .dsi-theme-btn { background: rgba(255, 255, 255, .1) !important; }

/* Footer */
html[data-dsi-theme="dark"] body.dsi-ios .ds-footer { background: #1c1c1e !important; border-top: .5px solid rgba(84, 84, 88, .6); }
html[data-dsi-theme="dark"] body.dsi-ios .ds-footer h3,
html[data-dsi-theme="dark"] body.dsi-ios .ds-footer h4 { color: #30d19b !important; }
html[data-dsi-theme="dark"] body.dsi-ios .ds-footer-social a { background: #2c2c2e !important; }

/* Cards, tables, forms */
html[data-dsi-theme="dark"] body.dsi-ios .wd-product .product-element-top { background: #2c2c2e; }
html[data-dsi-theme="dark"] body.dsi-ios .shop_table,
html[data-dsi-theme="dark"] body.dsi-ios .shop_table td,
html[data-dsi-theme="dark"] body.dsi-ios .shop_table th { background: transparent !important; color: #e5e5ea; }
html[data-dsi-theme="dark"] body.dsi-ios input:focus,
html[data-dsi-theme="dark"] body.dsi-ios select:focus,
html[data-dsi-theme="dark"] body.dsi-ios textarea:focus { background: #1c1c1e !important; }
html[data-dsi-theme="dark"] body.dsi-ios input,
html[data-dsi-theme="dark"] body.dsi-ios select,
html[data-dsi-theme="dark"] body.dsi-ios textarea { color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.dsi-ios ::placeholder { color: #8e8e93 !important; }
html[data-dsi-theme="dark"] body.dsi-ios #payment .payment_methods > li { background: #1c1c1e; }
html[data-dsi-theme="dark"] body.dsi-ios .select2-dropdown,
html[data-dsi-theme="dark"] body.dsi-ios .select2-results__option { background: #2c2c2e; color: #f5f5f7; }
html[data-dsi-theme="dark"] body.dsi-ios .dsi-trust li { background: #2c2c2e; }
html[data-dsi-theme="dark"] body.dsi-ios .dsi-trust strong { color: #f5f5f7; }
html[data-dsi-theme="dark"] body.dsi-ios .dsi-trust small { color: #98989d; }
html[data-dsi-theme="dark"] body.dsi-ios .wd-buy-now-btn { background: #f5f5f7 !important; border-color: #f5f5f7 !important; color: #000 !important; }
html[data-dsi-theme="dark"] body.dsi-ios .wd-nav-product-cat > li > a { background: #1c1c1e; color: #e5e5ea; }
html[data-dsi-theme="dark"] body.dsi-ios .wd-nav-product-cat > li.wd-active > a { background: #f5f5f7; color: #000; }
html[data-dsi-theme="dark"] body.dsi-ios .woocommerce-breadcrumb,
html[data-dsi-theme="dark"] body.dsi-ios .woocommerce-breadcrumb a,
html[data-dsi-theme="dark"] body.dsi-ios .wd-breadcrumbs a { color: #98989d !important; }

/* Drawers, side cart, popups */
html[data-dsi-theme="dark"] body.dsi-ios .wd-side-hidden,
html[data-dsi-theme="dark"] body.dsi-ios .cart-widget-side,
html[data-dsi-theme="dark"] body.dsi-ios .mobile-nav,
html[data-dsi-theme="dark"] body.dsi-ios .wd-dropdown,
html[data-dsi-theme="dark"] body.dsi-ios .wd-popup,
html[data-dsi-theme="dark"] body.dsi-ios .mfp-content .product-quick-view { background: rgba(28, 28, 30, .97) !important; color: #e5e5ea; }
html[data-dsi-theme="dark"] body.dsi-ios .whb-general-header .wd-dropdown a,
html[data-dsi-theme="dark"] body.dsi-ios .whb-general-header .dsi-tech-mega a { color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.dsi-ios .whb-header .dsi-tech-mega { background: rgba(28, 28, 30, .96); }
html[data-dsi-theme="dark"] body.dsi-ios #fkcart-modal .fkcart-item-title,
html[data-dsi-theme="dark"] body.dsi-ios #fkcart-modal .fkcart-title,
html[data-dsi-theme="dark"] body.dsi-ios #fkcart-modal .fkcart-summary-text,
html[data-dsi-theme="dark"] body.dsi-ios #fkcart-modal .fkcart-summary-amount { color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.dsi-ios #fkcart-modal input { background: #2c2c2e !important; color: #f5f5f7 !important; }

/* Tab bar, sticky buy bar & floating bits */
html[data-dsi-theme="dark"] body.dsi-ios .wd-toolbar { background: rgba(28, 28, 30, .82) !important; border-top-color: rgba(84, 84, 88, .6); }
html[data-dsi-theme="dark"] body.dsi-ios .wd-sticky-btn { background: rgba(28, 28, 30, .86) !important; border-top-color: rgba(84, 84, 88, .6); }
html[data-dsi-theme="dark"] body.dsi-ios .scrollToTop,
html[data-dsi-theme="dark"] body.dsi-ios .wd-show-sidebar-btn.wd-action-btn.wd-sticky { background: rgba(44, 44, 46, .86) !important; color: #f5f5f7; }
html[data-dsi-theme="dark"] .dsi-promo__sheet { background: #1c1c1e; color: #f5f5f7; box-shadow: 0 0 0 .5px rgba(255, 255, 255, .08), 0 -10px 40px rgba(0, 0, 0, .6); }
html[data-dsi-theme="dark"] .dsi-promo__title { color: #f5f5f7; }
html[data-dsi-theme="dark"] .dsi-promo__text { color: #98989d; }
html[data-dsi-theme="dark"] .dsi-promo__code { background: #2c2c2e; }
html[data-dsi-theme="dark"] .dsi-promo__code code { color: #f5f5f7; }
html[data-dsi-theme="dark"] .dsi-promo .dsi-promo__close { background: #2c2c2e !important; color: #98989d !important; }
html[data-dsi-theme="dark"] .dsi-promo .dsi-promo__copy { background: #f5f5f7 !important; color: #000 !important; }
html[data-dsi-theme="dark"] .dsi-promo__grab { background: #48484a; }
html[data-dsi-theme="dark"] .dsi-promo__bar { background: #2c2c2e; }
html[data-dsi-theme="dark"] .dsi-pill { background: rgba(58, 58, 60, .9); }
html[data-dsi-theme="dark"] body.dsi-ios .tc-totals-form,
html[data-dsi-theme="dark"] body.dsi-ios .tm-epo-totals,
html[data-dsi-theme="dark"] body.dsi-ios .summary-inner .wd-sold-count { background: #2c2c2e; }

/* desktop: keep the coupon pill above the sticky buy bar; footer edge to edge */
@media (min-width: 1025px) {
  body.dsi-ios.single-product .dsi-pill { bottom: 112px; }
}
body.dsi-ios footer.e-con,
body.dsi-ios footer.elementor-element { padding: 0 !important; margin: 0 !important; max-width: none !important; }
body.dsi-ios footer .elementor-widget-html,
body.dsi-ios footer .elementor-widget-container { margin: 0 !important; padding: 0 !important; width: 100%; }

/* dark pass targets (set by dsi.js only while dark) */
html[data-dsi-theme="dark"] body.dsi-ios .dsi-dk-bg { background-color: var(--dsi-card) !important; border-color: var(--dsi-sep) !important; }
html[data-dsi-theme="dark"] body.dsi-ios .single-product-page.dsi-dk-bg,
html[data-dsi-theme="dark"] body.dsi-ios .site-content.dsi-dk-bg,
html[data-dsi-theme="dark"] body.dsi-ios .main-page-wrapper.dsi-dk-bg { background-color: #000 !important; }
html[data-dsi-theme="dark"] body.dsi-ios .dsi-dk-fg { color: #e5e5ea !important; }
html[data-dsi-theme="dark"] body.dsi-ios .wd-nav-tabs > li > a { color: #98989d !important; }
html[data-dsi-theme="dark"] body.dsi-ios .wd-nav-tabs > li.active > a { color: #f5f5f7 !important; background: #2c2c2e; }
html[data-dsi-theme="dark"] body.dsi-ios .single-product-page,
html[data-dsi-theme="dark"] body.dsi-ios .wd-content-area { background-color: #000 !important; }

/* sticky buy bar: let it grow to the 44px buttons */
body.dsi-ios .wd-sticky-btn,
body.dsi-ios .wd-sticky-btn .wd-sticky-btn-container,
body.dsi-ios .wd-sticky-btn .wd-sticky-btn-cart,
body.dsi-ios .wd-sticky-btn form.cart { height: auto !important; min-height: 0 !important; max-height: none !important; }
body.dsi-ios .wd-sticky-btn { overflow: visible !important; }
@media (max-width: 1024px) {
  body.dsi-ios .wd-sticky-btn .wd-sticky-btn-cart { flex: 1 1 auto; }
  body.dsi-ios .wd-sticky-btn form.cart { gap: 8px; }
  body.dsi-ios .wd-sticky-btn .single_add_to_cart_button { order: 1; }
  body.dsi-ios .wd-sticky-btn .wd-buy-now-btn { order: 2; }
}
/* admin-only helpers (Hostinger Kodee) and scroll-to-top stay clear of the bars */
@media (max-width: 1024px) {
  body.dsi-ios .kodee-fab { bottom: calc(132px + env(safe-area-inset-bottom)) !important; }
  body.dsi-ios .scrollToTop { bottom: calc(132px + env(safe-area-inset-bottom)) !important; }
  body.dsi-ios:not(.single-product) .kodee-fab,
  body.dsi-ios:not(.single-product) .scrollToTop { bottom: calc(72px + env(safe-area-inset-bottom)) !important; }
}
/* logo size: the header builder caps it at 82px on phones */
body.dsi-ios .wd-logo img.dsi-logo { max-width: none !important; max-height: none !important; width: 210px !important; height: auto !important; }
@media (max-width: 1024px) { body.dsi-ios .wd-logo img.dsi-logo { width: 150px !important; } }
@media (max-width: 360px) { body.dsi-ios .wd-logo img.dsi-logo { width: 130px !important; } }
@media (max-width: 1024px) {
  body.dsi-ios .wd-sticky-btn .wd-sticky-btn-container { padding-inline: 12px !important; }
}

/* ---------- Coupon pill: theme styles for <button> must not leak in ---------- */
.dsi-pill, body.dsi-ios .dsi-pill {
  border-radius: 999px !important;
  background: rgba(29, 29, 31, .88) !important;
  color: #fff !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 8px 14px 8px 10px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  border: 0 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .22) !important;
  width: auto !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.dsi-pill span { color: #fff !important; }
.dsi-pill i { color: #fff !important; }
html[data-dsi-theme="dark"] .dsi-pill, html[data-dsi-theme="dark"] body.dsi-ios .dsi-pill {
  background: rgba(245, 245, 247, .94) !important; color: #000 !important;
  box-shadow: 0 0 0 .5px rgba(255, 255, 255, .12), 0 10px 28px rgba(0, 0, 0, .6) !important;
}
html[data-dsi-theme="dark"] .dsi-pill span { color: #000 !important; }

/* ---------- Login window (dswotp) ---------- */
body.dsi-ios .dswotp-modal { font-family: inherit !important; }
body.dsi-ios .dswotp-modal-overlay { background: rgba(0, 0, 0, .38) !important; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
body.dsi-ios .dswotp-modal-panel { border-radius: 24px !important; box-shadow: 0 30px 80px rgba(0, 0, 0, .25) !important; }
@media (max-width: 767px) {
  body.dsi-ios .dswotp-modal-panel { border-radius: 24px 24px 0 0 !important; }
}
body.dsi-ios .dswotp-modal .dswotp-head h2 { color: var(--dswotp-text) !important; font-weight: 800 !important; }
body.dsi-ios .dswotp-step label { color: var(--dswotp-muted) !important; }
body.dsi-ios .dswotp-card input,
body.dsi-ios .dswotp-card select {
  background: var(--dswotp-soft) !important;
  color: var(--dswotp-text) !important;
  border-color: var(--dswotp-border) !important;
  border-radius: 12px !important;
  min-height: 46px !important; height: 46px !important;
  font-size: 16px !important;
  box-shadow: none !important;
}
body.dsi-ios .dswotp-modal .dswotp-phone-row {
  border-radius: 12px !important;
  border-color: var(--dswotp-border) !important;
  background: var(--dswotp-soft) !important;
}
body.dsi-ios .dswotp-modal .dswotp-phone-row input,
body.dsi-ios .dswotp-modal .dswotp-phone-row select { background: transparent !important; border: 0 !important; border-radius: 0 !important; min-height: 46px !important; height: 46px !important; }
body.dsi-ios .dswotp-modal .dswotp-phone-row select { color: transparent !important; border-right: 1px solid var(--dswotp-border-soft) !important; }
body.dsi-ios .dswotp-modal .dswotp-dial-display { height: 46px !important; color: var(--dswotp-text) !important; font-size: 14px !important; }
body.dsi-ios .dswotp-card input:focus { border-color: var(--dsi-green) !important; box-shadow: 0 0 0 4px var(--dsi-green-tint) !important; }
body.dsi-ios .dswotp-btn {
  min-height: 48px !important; border-radius: 12px !important; font-weight: 700 !important;
  background: var(--dsi-green) !important; border-color: var(--dsi-green) !important; color: #fff !important;
}
body.dsi-ios .dswotp-link {
  border: 1px solid var(--dswotp-border) !important; border-radius: 12px !important; min-height: 46px;
  color: var(--dsi-green-text) !important; background: transparent !important; font-weight: 600 !important;
}
body.dsi-ios .dswotp-code-boxes .dswotp-code-digit { border-radius: 10px !important; height: 46px !important; min-height: 46px !important; }
body.dsi-ios .dswotp-social-btn { background: var(--dswotp-soft) !important; }

html[data-dsi-theme="dark"] body.dsi-ios .dswotp-modal,
html[data-dsi-theme="dark"] .dswotp-modal {
  --dswotp-text: #f5f5f7;
  --dswotp-muted: #98989d;
  --dswotp-border: rgba(84, 84, 88, .65);
  --dswotp-border-soft: rgba(84, 84, 88, .5);
  --dswotp-surface: #1c1c1e;
  --dswotp-soft: #2c2c2e;
}
html[data-dsi-theme="dark"] .dswotp-modal-panel { background: #1c1c1e !important; color: #f5f5f7; box-shadow: 0 0 0 .5px rgba(255, 255, 255, .08), 0 30px 80px rgba(0, 0, 0, .6) !important; }
html[data-dsi-theme="dark"] .dswotp-modal .dswotp-head::before { background-color: #2c2c2e !important; border-color: rgba(84, 84, 88, .6) !important; filter: invert(1) hue-rotate(180deg); }
html[data-dsi-theme="dark"] .dswotp-modal .dswotp-phone-row select option { background: #2c2c2e; color: #f5f5f7; }

/* ---------- Account menu (logged in) ---------- */
body.dsi-ios .ds-account-popup { border-radius: 24px !important; }
html[data-dsi-theme="dark"] body.dsi-ios .ds-account-popup { background: #1c1c1e !important; box-shadow: 0 0 0 .5px rgba(255, 255, 255, .08), 0 26px 70px rgba(0, 0, 0, .6) !important; }
html[data-dsi-theme="dark"] body.dsi-ios .ds-account-popup-header { border-bottom-color: rgba(84, 84, 88, .55) !important; }
html[data-dsi-theme="dark"] body.dsi-ios .ds-account-name,
html[data-dsi-theme="dark"] body.dsi-ios .ds-account-popup-menu a,
html[data-dsi-theme="dark"] body.dsi-ios .ds-menu-label { color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.dsi-ios .ds-menu-icon { color: #98989d !important; }
html[data-dsi-theme="dark"] body.dsi-ios .ds-account-logout,
html[data-dsi-theme="dark"] body.dsi-ios .ds-account-logout * { color: #ff453a !important; }
html[data-dsi-theme="dark"] body.dsi-ios .ds-account-avatar { background: #2c2c2e !important; }
html[data-dsi-theme="dark"] body.dsi-ios .ds-account-popup-menu a:hover { background: #2c2c2e !important; }

/* theme toggle in the phone header */
@media (max-width: 1024px) {
  .dsi-theme-btn { width: 34px; height: 34px; flex-basis: 34px; margin-inline: 2px; }
}

/* original logo (transparent): light outline on dark so the black strokes stay visible */
.dsi-logo--brand { display: block !important; }
html[data-dsi-theme="dark"] body.dsi-ios .dsi-logo--brand { filter: drop-shadow(0 0 .6px rgba(255, 255, 255, .85)) drop-shadow(0 0 .6px rgba(255, 255, 255, .5)); }
body.dsi-ios .wd-logo img.dsi-logo { width: 200px !important; }
@media (max-width: 1024px) { body.dsi-ios .wd-logo img.dsi-logo { width: 158px !important; } }
@media (max-width: 360px) { body.dsi-ios .wd-logo img.dsi-logo { width: 138px !important; } }
body.dsi-ios .ds-footer .dsi-logo { width: 230px !important; }

/* =====================================================================
   v1.3 — side cart, tab bar, phone menu & search, agreement checkbox, borders
   ===================================================================== */

/* ---------- FunnelKit side cart: solid sheet in both modes ---------- */
body.dsi-ios .fkcart-preview-ui {
  background: var(--dsi-card) !important;
  color: var(--dsi-label) !important;
  box-shadow: -10px 0 40px rgba(0, 0, 0, .18) !important;
}
body.dsi-ios.rtl .fkcart-preview-ui { border-radius: 0 24px 24px 0; }
body.dsi-ios .fkcart-modal-backdrop { background: rgba(0, 0, 0, .4) !important; }
body.dsi-ios .fkcart-slider-header { border-bottom: .5px solid var(--dsi-sep) !important; }
body.dsi-ios .fkcart-slider-footer { border-top: .5px solid var(--dsi-sep) !important; background: var(--dsi-card) !important; }
body.dsi-ios .fkcart-item-wrap { border-color: var(--dsi-sep) !important; }
body.dsi-ios .fkcart-preview-ui .fkcart-checkout-wrap a,
body.dsi-ios .fkcart-preview-ui #fkcart-checkout-button {
  background: var(--dsi-green) !important; color: #fff !important; border-radius: 14px !important;
}
body.dsi-ios .fkcart-quick-view-drawer,
body.dsi-ios .fkcart-drawer-header,
body.dsi-ios .fkcart-drawer-content,
body.dsi-ios .fkcart-drawer-shimmer { background: var(--dsi-card) !important; color: var(--dsi-label) !important; }
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui,
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui * { border-color: rgba(84, 84, 88, .55) !important; }
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui .fkcart-item-title,
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui .fkcart-title,
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui .fkcart-summary-text,
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui .fkcart-summary-amount,
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui .fkcart-item-price,
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui .amount,
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui p,
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui span:not(.fkcart-checkout--text):not(.fkcart-checkout--price) { color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui svg { color: #98989d; }
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui input,
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui .fkcart-quantity-selector,
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui .fkcart-coupon-body { background: #2c2c2e !important; color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.dsi-ios .fkcart-preview-ui .fkcart-slider-notices { background: #3a1d1d !important; }

/* ---------- Tab bar: icons centred in the frosted bar ---------- */
@media (max-width: 1024px) {
  body.dsi-ios .wd-toolbar {
    display: flex !important;
    align-items: center !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 6px 4px calc(6px + env(safe-area-inset-bottom)) !important;
  }
  body.dsi-ios .wd-toolbar > * { display: flex !important; align-items: center; justify-content: center; height: auto !important; background: none !important; }
  body.dsi-ios .wd-toolbar .wd-toolbar-item > a,
  body.dsi-ios .wd-toolbar .wd-tools-element > a { height: 50px !important; padding: 4px 2px !important; justify-content: center !important; }
  body.dsi-ios.sticky-toolbar-on .wd-sticky-btn { bottom: calc(62px + env(safe-area-inset-bottom)) !important; }
}

/* ---------- Phone menu (drawer) ---------- */
body.dsi-ios .mobile-nav { width: min(340px, 88vw) !important; background: var(--dsi-bg) !important; }
body.dsi-ios .mobile-nav .wd-heading { padding: 14px 16px !important; border-bottom: .5px solid var(--dsi-sep) !important; }
body.dsi-ios .mobile-nav .wd-search-form { padding: 12px 14px !important; margin: 0 !important; border: 0 !important; }
body.dsi-ios .mobile-nav .searchform { position: relative; }
body.dsi-ios .mobile-nav .searchform input.s,
body.dsi-ios .mobile-nav .searchform input[type="text"] {
  height: 40px !important; min-height: 40px !important; border-radius: 12px !important;
  font-size: 15px !important; padding-inline: 38px 14px !important; background: var(--dsi-fill) !important; border: 0 !important;
}
body.dsi-ios .mobile-nav .searchform .searchsubmit {
  position: absolute !important; inset-inline-end: 4px; inset-inline-start: auto; top: 50%; transform: translateY(-50%);
  width: 32px !important; height: 32px !important; min-height: 0 !important; padding: 0 !important;
  background: transparent !important; color: var(--dsi-label-2) !important; border-radius: 8px !important; box-shadow: none !important;
}
body.dsi-ios .mobile-nav .searchform .searchsubmit::before,
body.dsi-ios .mobile-nav .searchform .searchsubmit::after { color: var(--dsi-label-2) !important; font-size: 16px !important; }
body.dsi-ios .mobile-nav .wd-nav-mobile { padding: 4px 14px 24px !important; }
body.dsi-ios .mobile-nav .wd-nav-mobile > li { background: var(--dsi-card); border: 0 !important; margin: 0 !important; }
body.dsi-ios .mobile-nav .wd-nav-mobile > li:first-child { border-radius: 14px 14px 0 0; }
body.dsi-ios .mobile-nav .wd-nav-mobile > li:last-child { border-radius: 0 0 14px 14px; }
body.dsi-ios .mobile-nav .wd-nav-mobile > li > a {
  min-height: 48px !important; padding: 12px 14px !important; font-size: 15px !important; font-weight: 500 !important;
  color: var(--dsi-label) !important; border-bottom: .5px solid var(--dsi-sep) !important; text-transform: none !important; letter-spacing: 0 !important;
}
body.dsi-ios .mobile-nav .wd-nav-mobile > li:last-child > a { border-bottom: 0 !important; }
body.dsi-ios .mobile-nav .wd-nav-mobile li .wd-nav-opener { border: 0 !important; width: 44px !important; color: var(--dsi-label-2) !important; background: transparent !important; }
body.dsi-ios .mobile-nav .wd-nav-mobile .wd-nav-img { display: none !important; }
body.dsi-ios .mobile-nav .wd-nav-mobile .wd-sub-menu li a { min-height: 44px; font-size: 14px !important; color: var(--dsi-label) !important; border-bottom: .5px solid var(--dsi-sep) !important; }
body.dsi-ios .mobile-nav .wd-drilldown-back a { color: var(--dsi-green-text) !important; font-weight: 600 !important; }
html[data-dsi-theme="dark"] body.dsi-ios .mobile-nav { background: #000 !important; }
html[data-dsi-theme="dark"] body.dsi-ios .mobile-nav .wd-nav-mobile > li { background: #1c1c1e; }

/* ---------- Agreement checkbox (Extra Product Options) ---------- */
body.dsi-ios .tc-extra-product-options .tmcp-field-wrap { list-style: none !important; }
body.dsi-ios .tc-extra-product-options .tmcp-field-wrap .tm-epo-field-label {
  display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: flex-start !important;
  gap: 10px !important; width: 100% !important; padding: 12px 14px !important; margin: 0 !important;
  background: var(--dsi-fill) !important; border-radius: 14px !important; cursor: pointer; text-align: start !important;
}
body.dsi-ios .tc-extra-product-options .tmcp-field-wrap .tc-label-wrap { display: flex !important; align-items: center !important; gap: 10px !important; }
body.dsi-ios .tc-extra-product-options .tc-epo-style-wrapper { display: inline-flex !important; position: relative !important; width: 24px !important; height: 24px !important; flex: 0 0 24px !important; margin: 0 !important; }
body.dsi-ios .tc-extra-product-options .tc-epo-style-wrapper .tc-input-wrap { position: absolute !important; inset: 0; margin: 0 !important; padding: 0 !important; }
body.dsi-ios .tc-extra-product-options .tc-epo-style-wrapper input { position: absolute !important; inset: 0; opacity: 0 !important; width: 24px !important; height: 24px !important; margin: 0 !important; cursor: pointer; z-index: 2; }
body.dsi-ios .tc-extra-product-options .tc-epo-style-wrapper .tm-epo-style {
  position: absolute !important; inset: 0 !important; width: 24px !important; height: 24px !important;
  border-radius: 7px !important; border: 2px solid var(--dsi-label-2) !important; background: var(--dsi-card) !important;
  box-shadow: none !important; margin: 0 !important; transition: background-color .15s, border-color .15s;
}
body.dsi-ios .tc-extra-product-options .tc-epo-style-wrapper .tm-epo-style::before,
body.dsi-ios .tc-extra-product-options .tc-epo-style-wrapper .tm-epo-style::after { display: none !important; }
body.dsi-ios .tc-extra-product-options .tc-epo-style-wrapper.dsi-on .tm-epo-style {
  background: var(--dsi-green) url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%223.2%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 12.5 10 17 19 7%22/%3E%3C/svg%3E") center / 16px no-repeat !important;
  border-color: var(--dsi-green) !important;
}
body.dsi-ios .tc-extra-product-options .tmcp-field-wrap .tc-label-text,
body.dsi-ios .tc-extra-product-options .tmcp-field-wrap .tc-label:not(.tm-epo-style) { font-size: 15px !important; font-weight: 600 !important; color: var(--dsi-label) !important; }

/* ---------- stray borders around the product block ---------- */
body.dsi-ios .single-product-page { border: 0 !important; outline: 0 !important; }
html[data-dsi-theme="dark"] body.dsi-ios .website-wrapper,
html[data-dsi-theme="dark"] body.dsi-ios .main-page-wrapper,
html[data-dsi-theme="dark"] body.dsi-ios .single-product-page,
html[data-dsi-theme="dark"] body.dsi-ios .product-image-summary-wrap { border-color: transparent !important; box-shadow: none !important; outline: 0 !important; }

/* ---------- Phone header & footer ---------- */
@media (max-width: 1024px) {
  body.dsi-ios .whb-general-header .whb-flex-row { min-height: 60px; }
  body.dsi-ios .whb-mobile-right { gap: 2px; }
  body.dsi-ios .whb-mobile-right .wd-tools-element > a,
  body.dsi-ios .whb-mobile-left .wd-header-mobile-nav > a { width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; padding: 0 !important; }
  body.dsi-ios .whb-mobile-right .wd-tools-icon { font-size: 21px; }
  body.dsi-ios .ds-footer { padding-top: 34px !important; text-align: start; }
  body.dsi-ios .ds-footer-container { gap: 22px !important; }
  body.dsi-ios .ds-footer-col h3, body.dsi-ios .ds-footer-col h4 { font-size: 17px !important; margin-bottom: 8px !important; padding-bottom: 8px !important; }
  body.dsi-ios .ds-footer-col a, body.dsi-ios .ds-footer-col li, body.dsi-ios .ds-footer-contact a { font-size: 15px !important; line-height: 2 !important; }
  body.dsi-ios .ds-footer-bottom { flex-direction: column; align-items: flex-start; gap: 12px; }
  body.dsi-ios .ds-payments { justify-content: flex-start; flex-wrap: wrap; gap: 6px; }
}

/* tab bar: each item fills its column so labels are not squeezed */
@media (max-width: 1024px) {
  body.dsi-ios .wd-toolbar > * { flex: 1 1 0 !important; min-width: 0 !important; width: auto !important; }
  body.dsi-ios .wd-toolbar > * > a { width: 100% !important; min-width: 0; }
  body.dsi-ios .wd-toolbar .wd-toolbar-label { width: 100% !important; text-align: center; display: block !important; }
}

/* ---------- rating stars: both layers drawn LTR so filled stars sit exactly on the empty ones ---------- */
body.dsi-ios .star-rating {
  direction: ltr !important;
  unicode-bidi: isolate;
  float: none !important;
  display: inline-block !important;
  position: relative !important;
  overflow: hidden !important;
  letter-spacing: 2px !important;
  color: #d1d1d6;
  vertical-align: middle;
  margin: 0 !important;
}
body.dsi-ios .star-rating::before { color: #d1d1d6 !important; float: none !important; position: static !important; }
body.dsi-ios .star-rating span {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  float: none !important;
}
body.dsi-ios .star-rating span::before { color: #ff9f0a !important; position: absolute !important; top: 0 !important; left: 0 !important; right: auto !important; float: none !important; }
html[data-dsi-theme="dark"] body.dsi-ios .star-rating,
html[data-dsi-theme="dark"] body.dsi-ios .star-rating::before { color: #48484a !important; }
body.dsi-ios .woocommerce-product-rating { display: flex !important; align-items: center; gap: 8px; justify-content: center; }
body.dsi-ios .woocommerce-product-rating .woocommerce-review-link { color: var(--dsi-label-2) !important; font-size: 13px; }

/* the phone field we force on customers without a saved number */
body.dsi-ios .woocommerce-checkout .dsi-phone-required { display: block !important; }
body.dsi-ios .wd-buy-now-btn.loading { opacity: .6; pointer-events: none; }

/* ---------- sticky WooCommerce notices ("added to cart · continue shopping") as an iOS toast above the tab bar ---------- */
body.dsi-ios.notifications-sticky .woocommerce-notices-wrapper,
body.dsi-ios .wd-sticky-notices { z-index: 450 !important; }
body.dsi-ios.notifications-sticky .woocommerce-message,
body.dsi-ios.notifications-sticky .woocommerce-info,
body.dsi-ios.notifications-sticky .woocommerce-error,
body.dsi-ios.notifications-sticky .wd-notice {
  position: fixed !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  bottom: 20px !important;
  width: min(560px, calc(100% - 24px)) !important;
  margin: 0 !important;
  border-radius: 18px !important;
  padding: 12px 14px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap;
  background: rgba(29, 29, 31, .92) !important;
  color: #fff !important;
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  backdrop-filter: saturate(180%) blur(20px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .25) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  border: 0 !important;
}
body.dsi-ios.notifications-sticky .woocommerce-message::before,
body.dsi-ios.notifications-sticky .woocommerce-info::before { color: #30d19b !important; position: static !important; margin: 0 !important; }
body.dsi-ios.notifications-sticky .woocommerce-error { background: rgba(255, 59, 48, .95) !important; }
body.dsi-ios.notifications-sticky .woocommerce-message a,
body.dsi-ios.notifications-sticky .woocommerce-info a { color: #fff !important; }
body.dsi-ios.notifications-sticky .woocommerce-message .button,
body.dsi-ios.notifications-sticky .woocommerce-message .wc-forward {
  order: 3;
  min-height: 34px !important;
  height: 34px;
  line-height: 34px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  background: var(--dsi-green) !important;
  color: #fff !important;
  font-size: 13px !important;
  margin: 0 !important;
  float: none !important;
}
body.dsi-ios.notifications-sticky .close-side-widget,
body.dsi-ios.notifications-sticky .wd-notice .wd-close,
body.dsi-ios.notifications-sticky .hide-notice { color: rgba(255, 255, 255, .7) !important; background: transparent !important; }
@media (max-width: 1024px) {
  body.dsi-ios.notifications-sticky .woocommerce-message,
  body.dsi-ios.notifications-sticky .woocommerce-info,
  body.dsi-ios.notifications-sticky .woocommerce-error,
  body.dsi-ios.notifications-sticky .wd-notice { bottom: calc(74px + env(safe-area-inset-bottom)) !important; }
  body.dsi-ios.single-product.notifications-sticky .woocommerce-message { bottom: calc(136px + env(safe-area-inset-bottom)) !important; }
}
html[data-dsi-theme="dark"] body.dsi-ios.notifications-sticky .woocommerce-message,
html[data-dsi-theme="dark"] body.dsi-ios.notifications-sticky .woocommerce-info,
html[data-dsi-theme="dark"] body.dsi-ios.notifications-sticky .wd-notice {
  background: rgba(58, 58, 60, .94) !important;
  box-shadow: 0 0 0 .5px rgba(255, 255, 255, .1), 0 10px 30px rgba(0, 0, 0, .6) !important;
}

/* tab bar: more opaque so green sections behind it don't tint it */
@media (max-width: 1024px) {
  body.dsi-ios .wd-toolbar { background: rgba(255, 255, 255, .94) !important; }
  html[data-dsi-theme="dark"] body.dsi-ios .wd-toolbar { background: rgba(28, 28, 30, .94) !important; }
}

/* guest My Account / order tracking page */
body.dsi-ios.woocommerce-account:not(.logged-in) .woocommerce,
body.dsi-ios .woocommerce-form-track-order {
  background: var(--dsi-card);
  border-radius: 24px;
  box-shadow: var(--dsi-shadow);
  padding: clamp(18px, 3vw, 32px);
}
body.dsi-ios .woocommerce-form-track-order .form-row { width: 100% !important; float: none !important; }
body.dsi-ios .woocommerce-form-track-order .button { width: 100%; min-height: 50px; border-radius: 14px !important; background: var(--dsi-green) !important; color: #fff !important; }

/* ---------- v1.6: new Saudi riyal symbol (vector, takes the text colour) ---------- */
.dsi-sar-sym {
  display: inline-block !important;
  width: .82em; height: .95em;
  vertical-align: -.08em;
  margin-inline: .12em;
  overflow: hidden; white-space: nowrap; text-indent: 200%;
  background: currentColor !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 330 380'%3E%3Cpath d='M118 40 L150 12 L150 262 C150 280 158 290 176 286 L118 298 Z'/%3E%3Cpath d='M196 30 L228 0 L228 380 L196 380 Z'/%3E%3Cpath d='M22 184 L330 120 L326 154 L22 218 Z'/%3E%3Cpath d='M22 300 L330 236 L326 270 L22 334 Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 330 380'%3E%3Cpath d='M118 40 L150 12 L150 262 C150 280 158 290 176 286 L118 298 Z'/%3E%3Cpath d='M196 30 L228 0 L228 380 L196 380 Z'/%3E%3Cpath d='M22 184 L330 120 L326 154 L22 218 Z'/%3E%3Cpath d='M22 300 L330 236 L326 270 L22 334 Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ---------- stars drawn as vectors: exact in RTL and LTR ---------- */
body.dsi-ios .star-rating {
  width: 90px !important; height: 17px !important; font-size: 0 !important; letter-spacing: 0 !important;
  direction: ltr !important; display: inline-block !important; position: relative !important; overflow: hidden !important;
  background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23d1d1d6' d='m12 2.5 2.9 6.1 6.6.8-4.9 4.5 1.3 6.6L12 17.2l-5.9 3.3 1.3-6.6-4.9-4.5 6.6-.8z'/></svg>") 0 0 / 18px 17px repeat-x !important;
  float: none !important; margin: 0 !important; line-height: 0 !important; color: transparent !important;
}
body.dsi-ios .star-rating::before, body.dsi-ios .star-rating span::before { display: none !important; content: none !important; }
body.dsi-ios .star-rating span {
  position: absolute !important; top: 0 !important; left: 0 !important; right: auto !important; height: 100% !important;
  padding: 0 !important; overflow: hidden !important; font-size: 0 !important; color: transparent !important;
  background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23ff9f0a' d='m12 2.5 2.9 6.1 6.6.8-4.9 4.5 1.3 6.6L12 17.2l-5.9 3.3 1.3-6.6-4.9-4.5 6.6-.8z'/></svg>") 0 0 / 18px 17px repeat-x !important;
}
html[data-dsi-theme="dark"] body.dsi-ios .star-rating { background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%2348484a' d='m12 2.5 2.9 6.1 6.6.8-4.9 4.5 1.3 6.6L12 17.2l-5.9 3.3 1.3-6.6-4.9-4.5 6.6-.8z'/></svg>") !important; }
body.dsi-ios .wd-product .star-rating { width: 70px !important; height: 13px !important; background-size: 14px 13px !important; }
body.dsi-ios .wd-product .star-rating span { background-size: 14px 13px !important; }

/* ---------- agreement text: aligned to the right, readable ---------- */
body.dsi-ios .tc-extra-product-options .tc-epo-label,
body.dsi-ios .tc-extra-product-options .tc-epo-label * ,
body.dsi-ios .tc-extra-product-options .tc-cell.tc-epo-label { text-align: right !important; justify-content: flex-start !important; }
body.dsi-ios.rtl .tc-extra-product-options .tc-epo-label { display: flex !important; flex-direction: row !important; gap: 6px; align-items: flex-start; width: 100% !important; }
body.dsi-ios .tc-extra-product-options .tc-epo-label .tm-epo-required { order: 2; margin: 0 !important; }
body.dsi-ios .tc-extra-product-options .tc-epo-element-label-text { order: 1; flex: 1 1 auto; text-align: right !important; }

/* ---------- tab bar: label centred under its icon ---------- */
@media (max-width: 1024px) {
  body.dsi-ios .wd-toolbar > * > a { flex-direction: column !important; align-items: center !important; justify-content: center !important; text-align: center !important; }
  body.dsi-ios .wd-toolbar .wd-tools-icon,
  body.dsi-ios .wd-toolbar .wd-toolbar-icon { margin: 0 auto !important; width: 26px; position: relative; }
  body.dsi-ios .wd-toolbar .wd-toolbar-label { margin: 2px 0 0 !important; padding: 0 !important; text-align: center !important; }
}

/* ---------- coupon pill hides while the footer's payment row is on screen ---------- */
.dsi-pill.is-hidden { transform: translateY(160%) !important; }

/* ---------- FAQ in dark mode ---------- */
html[data-dsi-theme="dark"] .dsh-faq { background: #1c1c1e !important; }
html[data-dsi-theme="dark"] .dsh-faq summary { color: #f5f5f7 !important; background: transparent !important; }
html[data-dsi-theme="dark"] .dsh-faq details { border-color: rgba(84, 84, 88, .55) !important; background: transparent !important; }
html[data-dsi-theme="dark"] .dsi-home .dsh-faq p { color: #98989d !important; }

/* ---------- phone header: everything fits (cart icon was pushed off-screen) ---------- */
@media (max-width: 1024px) {
  body.dsi-ios .whb-general-header .whb-mobile-center { flex: 0 0 0 !important; width: 0 !important; min-width: 0 !important; padding: 0 !important; overflow: hidden; }
  body.dsi-ios .whb-general-header .whb-mobile-left { flex: 1 1 auto !important; min-width: 0 !important; gap: 4px; }
  body.dsi-ios .whb-general-header .whb-mobile-right { flex: 0 0 auto !important; gap: 0 !important; }
  body.dsi-ios .whb-general-header .whb-mobile-right > * { margin: 0 !important; padding: 0 2px !important; }
  body.dsi-ios .whb-general-header .whb-flex-row { padding-inline: 8px !important; gap: 4px; }
  body.dsi-ios .whb-general-header .site-logo { min-width: 0; flex: 0 1 auto; }
  body.dsi-ios .wd-logo img.dsi-logo { width: 140px !important; }
}
@media (max-width: 360px) { body.dsi-ios .wd-logo img.dsi-logo { width: 120px !important; } }

/* ---------- menu: "حسابي" only in the phone drawer (the header already has the account icon) ---------- */
@media (min-width: 1025px) {
  body.dsi-ios .whb-header .wd-nav > li.dsi-mobile-only { display: none !important; }
}
/* desktop menu spacing: one tidy row */
@media (min-width: 1025px) {
  body.dsi-ios .whb-general-header .wd-nav { flex-wrap: nowrap !important; gap: 2px; }
  body.dsi-ios .whb-general-header .wd-nav > li > a { font-size: 14px !important; padding-inline: 11px !important; white-space: nowrap; }
  body.dsi-ios .whb-general-header .wd-nav > li .wd-nav-img { display: none !important; }
}

/* ---------- "الحلول التقنية" in the phone drawer: plain link, no half-open mega panel ---------- */
body.dsi-ios .mobile-nav .dsi-tech-menu .dsi-tech-mega,
body.dsi-ios .mobile-nav .dsi-tech-menu > .wd-nav-opener { display: none !important; }
body.dsi-ios .mobile-nav .dsi-tech-menu > a::after { content: ''; }

/* desktop mega panel for Tech: neat 4 columns aligned to the item */
@media (min-width: 1025px) {
  body.dsi-ios .whb-header .dsi-tech-mega { right: auto !important; left: 0 !important; min-width: min(720px, 90vw) !important; }
  body.dsi-ios .whb-header .dsi-tech-mega b { font-size: 12px !important; text-transform: none; letter-spacing: 0; }
}

/* =====================================================================
   v1.7 — side cart (FunnelKit) in both modes, compact buttons; one notification style
   ===================================================================== */
body.dsi-ios #fkcart-modal {
  --fkcart-bg-color: #ffffff;
  --fkcart-primary-text-color: #1d1d1f;
  --fkcart-secondary-text-color: #6e6e73;
  --fkcart-border-color: rgba(60, 60, 67, .12);
  --fkcart-primary-bg-color: #2cbc8c;
  --fkcart-primary-font-color: #ffffff;
  --fkcart-primary-bg-color-hover: #22a57a;
  --fkcart-secondary-bg-color: #f2f2f7;
  --fkcart-secondary-font-color: #1d1d1f;
  --fkcart-progress-bar-active-color: #2cbc8c;
}
html[data-dsi-theme="dark"] body.dsi-ios #fkcart-modal {
  --fkcart-bg-color: #1c1c1e;
  --fkcart-primary-text-color: #f5f5f7;
  --fkcart-secondary-text-color: #98989d;
  --fkcart-border-color: rgba(84, 84, 88, .6);
  --fkcart-secondary-bg-color: #2c2c2e;
  --fkcart-secondary-font-color: #f5f5f7;
}
body.dsi-ios #fkcart-modal .fkcart-preview-ui { background: var(--fkcart-bg-color) !important; color: var(--fkcart-primary-text-color) !important; font-family: inherit !important; }
body.dsi-ios #fkcart-modal .fkcart-title,
body.dsi-ios #fkcart-modal .fkcart-item-title,
body.dsi-ios #fkcart-modal .fkcart-item-price,
body.dsi-ios #fkcart-modal .fkcart-summary-text,
body.dsi-ios #fkcart-modal .fkcart-summary-amount,
body.dsi-ios #fkcart-modal .fkcart-coupon-title,
body.dsi-ios #fkcart-modal .fkcart-zero-state-title,
body.dsi-ios #fkcart-modal .amount { color: var(--fkcart-primary-text-color) !important; }
body.dsi-ios #fkcart-modal .fkcart-item-meta,
body.dsi-ios #fkcart-modal .fkcart-item-misc,
body.dsi-ios #fkcart-modal del .amount,
body.dsi-ios #fkcart-modal .fkcart-coupon-label { color: var(--fkcart-secondary-text-color) !important; }
body.dsi-ios #fkcart-modal .fkcart-item-title { font-size: 14px !important; font-weight: 600 !important; line-height: 1.45 !important; }
body.dsi-ios #fkcart-modal .fkcart-slider-header { padding: 14px 16px !important; }
body.dsi-ios #fkcart-modal .fkcart-title { font-size: 17px !important; font-weight: 700 !important; }
body.dsi-ios #fkcart-modal .fkcart-item-wrap { padding: 12px 16px !important; border-bottom: .5px solid var(--fkcart-border-color) !important; }
body.dsi-ios #fkcart-modal .fkcart-item-wrap img { width: 56px !important; height: 56px !important; object-fit: cover; border-radius: 12px !important; }
body.dsi-ios #fkcart-modal .fkcart-qty-wrap,
body.dsi-ios #fkcart-modal .fkcart-quantity-selector { background: var(--fkcart-secondary-bg-color) !important; border: 0 !important; border-radius: 999px !important; height: 32px; }
body.dsi-ios #fkcart-modal .fkcart-quantity-button,
body.dsi-ios #fkcart-modal .fkcart-qty-wrap input { color: var(--fkcart-primary-text-color) !important; background: transparent !important; min-height: 0 !important; height: 32px !important; }
body.dsi-ios #fkcart-modal .fkcart-remove-item { color: var(--fkcart-secondary-text-color) !important; }
body.dsi-ios #fkcart-modal .fkcart-remove-item:hover { color: #ff3b30 !important; }
/* coupon */
body.dsi-ios #fkcart-modal .fkcart-coupon-area { border-top: .5px solid var(--fkcart-border-color) !important; padding: 10px 16px !important; }
body.dsi-ios #fkcart-modal .fkcart-coupon-input-wrap input,
body.dsi-ios #fkcart-modal .fkcart-coupon-body input { background: var(--fkcart-secondary-bg-color) !important; color: var(--fkcart-primary-text-color) !important; border: 0 !important; border-radius: 12px !important; height: 40px !important; min-height: 40px !important; font-size: 14px !important; }
body.dsi-ios #fkcart-modal .fkcart-coupon-button { background: var(--fkcart-primary-text-color) !important; color: var(--fkcart-bg-color) !important; border-radius: 12px !important; height: 40px !important; min-height: 40px !important; font-size: 14px !important; padding: 0 16px !important; border: 0 !important; }
body.dsi-ios #fkcart-modal .fkcart-coupon-applied { background: rgba(44, 188, 140, .12) !important; border-radius: 10px !important; color: #2cbc8c !important; }
/* summary + buttons: compact */
body.dsi-ios #fkcart-modal .fkcart-slider-footer { padding: 10px 16px calc(12px + env(safe-area-inset-bottom)) !important; background: var(--fkcart-bg-color) !important; border-top: .5px solid var(--fkcart-border-color) !important; }
body.dsi-ios #fkcart-modal .fkcart-summary-line-item { padding: 4px 0 !important; font-size: 14px !important; }
body.dsi-ios #fkcart-modal .fkcart-checkout-wrap a,
body.dsi-ios #fkcart-modal #fkcart-checkout-button,
body.dsi-ios #fkcart-modal .fkcart-primary-button {
  min-height: 48px !important; height: 48px !important; padding: 0 16px !important;
  border-radius: 14px !important; font-size: 16px !important; font-weight: 700 !important;
  background: #2cbc8c !important; color: #fff !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 8px;
}
body.dsi-ios #fkcart-modal .fkcart-checkout--text,
body.dsi-ios #fkcart-modal .fkcart-checkout--price,
body.dsi-ios #fkcart-modal .fkcart-checkout--price .amount,
body.dsi-ios #fkcart-modal .fkcart-checkout--icon { color: #fff !important; font-size: 16px !important; }
body.dsi-ios #fkcart-modal .fkcart-shopping-link {
  display: block !important; text-align: center !important; margin-top: 6px !important;
  font-size: 14px !important; font-weight: 600 !important; color: #2cbc8c !important;
  padding: 8px !important; min-height: 0 !important; background: transparent !important; text-decoration: none !important;
}
body.dsi-ios #fkcart-modal .fkcart-modal-close svg { color: var(--fkcart-primary-text-color) !important; fill: currentColor; }
html[data-dsi-theme="dark"] body.dsi-ios #fkcart-modal svg { color: #f5f5f7; }

/* ---------- one notification style everywhere ---------- */
/* in-page notices (cart, checkout, account): one calm card */
body.dsi-ios .woocommerce-notices-wrapper .woocommerce-message,
body.dsi-ios .woocommerce-notices-wrapper .woocommerce-info,
body.dsi-ios .woocommerce-notices-wrapper .woocommerce-error,
body.dsi-ios .woocommerce .woocommerce-message,
body.dsi-ios .woocommerce .woocommerce-info,
body.dsi-ios .woocommerce .woocommerce-error,
body.dsi-ios .wc-block-components-notice-banner {
  border: 0 !important;
  border-radius: 14px !important;
  padding: 12px 14px 12px 14px !important;
  padding-inline-start: 44px !important;
  position: relative;
  font-size: 14px !important;
  line-height: 1.6 !important;
  background: var(--dsi-card) !important;
  color: var(--dsi-label) !important;
  box-shadow: var(--dsi-shadow) !important;
  margin: 0 0 12px !important;
  list-style: none;
}
body.dsi-ios .woocommerce-message::before,
body.dsi-ios .woocommerce-info::before,
body.dsi-ios .woocommerce-error::before {
  content: '' !important; font-family: inherit !important;
  position: absolute !important; inset-inline-start: 14px; top: 50% !important; transform: translateY(-50%);
  width: 20px; height: 20px; border-radius: 50%; margin: 0 !important;
}
body.dsi-ios .woocommerce-message::before { background: #34c759 url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%223.5%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M6 12.5 10 16.5 18 8%22/%3E%3C/svg%3E") center/14px no-repeat !important; }
body.dsi-ios .woocommerce-info::before { background: #0a84ff url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22white%22%3E%3Ccircle cx=%2212%22 cy=%227%22 r=%222%22/%3E%3Crect x=%2210.5%22 y=%2210.5%22 width=%223%22 height=%229%22 rx=%221.5%22/%3E%3C/svg%3E") center/14px no-repeat !important; }
body.dsi-ios .woocommerce-error::before { background: #ff3b30 url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22white%22%3E%3Crect x=%2210.5%22 y=%225%22 width=%223%22 height=%229.5%22 rx=%221.5%22/%3E%3Ccircle cx=%2212%22 cy=%2218%22 r=%222%22/%3E%3C/svg%3E") center/14px no-repeat !important; }
body.dsi-ios .woocommerce-message .button,
body.dsi-ios .woocommerce-info .button,
body.dsi-ios .woocommerce-message .wc-forward {
  float: none !important; min-height: 32px !important; height: 32px; line-height: 32px !important; padding: 0 14px !important;
  border-radius: 999px !important; font-size: 13px !important; margin-inline-start: 8px !important;
  background: var(--dsi-green) !important; color: #fff !important; border: 0 !important;
}

/* floating messages (toast, sticky notices) all in one spot: bottom centre, above the tab bar */
.dsi-toast {
  top: auto !important;
  bottom: calc(24px + env(safe-area-inset-bottom)) !important;
  transform: translate(-50%, 160%) !important;
}
.dsi-toast.is-on { transform: translate(-50%, 0) !important; }
@media (max-width: 1024px) {
  .dsi-toast { bottom: calc(76px + env(safe-area-inset-bottom)) !important; }
  body.single-product .dsi-toast { bottom: calc(136px + env(safe-area-inset-bottom)) !important; }
}
html[data-dsi-theme="dark"] .dsi-toast { background: rgba(58, 58, 60, .95) !important; }

/* ---------- Tech promo block (from the Tech plugin) follows the site theme ---------- */
body.dsi-ios .dsi-home-cta { border-radius: 24px; margin: 24px auto; max-width: min(1220px, calc(100% - 32px)); overflow: hidden; }
html[data-dsi-theme="dark"] body.dsi-ios .dsi-home-cta {
  background: #1c1c1e !important;
  background-image: none !important;
  box-shadow: 0 0 0 .5px rgba(255, 255, 255, .08) !important;
}
html[data-dsi-theme="dark"] body.dsi-ios .dsi-home-cta h2,
html[data-dsi-theme="dark"] body.dsi-ios .dsi-home-cta h3,
html[data-dsi-theme="dark"] body.dsi-ios .dsi-home-cta strong { color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.dsi-ios .dsi-home-cta p,
html[data-dsi-theme="dark"] body.dsi-ios .dsi-home-cta span,
html[data-dsi-theme="dark"] body.dsi-ios .dsi-home-cta small { color: #98989d !important; }
body.dsi-ios:not([data-x]) .dsi-home-cta a { border-radius: 14px !important; }

/* ---------- side cart: applied coupon readable in both modes ---------- */
body.dsi-ios #fkcart-modal .fkcart-coupon-applied,
body.dsi-ios #fkcart-modal .fkcart-coupon-code-wrapper,
body.dsi-ios #fkcart-modal .fkcart-coupon-code {
  background: rgba(44, 188, 140, .14) !important;
  color: #1f9f76 !important;
  border: 1px dashed rgba(44, 188, 140, .6) !important;
  border-radius: 10px !important;
}
body.dsi-ios #fkcart-modal .fkcart-coupon-code { border: 0 !important; background: transparent !important; font-weight: 700; letter-spacing: .5px; }
html[data-dsi-theme="dark"] body.dsi-ios #fkcart-modal .fkcart-coupon-applied,
html[data-dsi-theme="dark"] body.dsi-ios #fkcart-modal .fkcart-coupon-code-wrapper { background: rgba(48, 209, 155, .16) !important; color: #30d19b !important; }
html[data-dsi-theme="dark"] body.dsi-ios #fkcart-modal .fkcart-coupon-code { color: #30d19b !important; }
body.dsi-ios #fkcart-modal .fkcart-remove-coupon { color: var(--fkcart-secondary-text-color) !important; background: transparent !important; }
body.dsi-ios #fkcart-modal .fkcart-discounted-price,
body.dsi-ios #fkcart-modal .fkcart-item-price del { opacity: .7; }
body.dsi-ios #fkcart-modal [class*="saving"], body.dsi-ios #fkcart-modal .fkcart-item-saving { color: #2cbc8c !important; }

/* readable green for text (brand green stays for buttons and fills) */
body.dsi-ios { --dsi-green-text: #148a63; }
html[data-dsi-theme="dark"] body.dsi-ios { --dsi-green-text: #30d19b; }
body.dsi-ios .price ins .amount, body.dsi-ios .price > .amount, body.dsi-ios .price ins,
body.dsi-ios .wd-product .price, body.dsi-ios .summary-inner .price ins .amount,
body.dsi-ios .dsh-card__price ins, body.dsi-ios .dsh-float__meta em,
body.dsi-ios .dsh-stats__row b, body.dsi-ios .dsh-eyebrow, body.dsi-ios .dsh-link { color: var(--dsi-green-text) !important; }
body.dsi-ios .wd-product .price del .amount, body.dsi-ios .dsh-card__price del { color: var(--dsi-label-2) !important; }

/* ---------- contrast pass: button green a shade deeper so white text reads well (brand green stays in the header) ---------- */
body.dsi-ios { --dsi-btn: #1f9f76; --dsi-btn-press: #188a66; --btn-accented-bgcolor: var(--dsi-btn); --btn-accented-bgcolor-hover: var(--dsi-btn-press); }
body.dsi-ios .single_add_to_cart_button,
body.dsi-ios .checkout-button,
body.dsi-ios #place_order,
body.dsi-ios .button.alt,
body.dsi-ios .wd-add-btn .add_to_cart_button,
body.dsi-ios .wc-block-components-checkout-place-order-button,
body.dsi-ios .wc-block-cart__submit-button,
body.dsi-ios .elementor-button,
body.dsi-ios .dsh-home .dsh-btn--primary,
body.dsi-ios .dsh-home .dsh-card__btn:not(.dsh-card__btn--ghost),
body.dsi-ios .dsh-home .dsh-search button,
body.dsi-ios .dsi-promo__cta,
body.dsi-ios #fkcart-modal .fkcart-checkout-wrap a,
body.dsi-ios #fkcart-modal .fkcart-primary-button,
body.dsi-ios .woocommerce-message .button,
body.dsi-ios .dswotp-btn { background: var(--dsi-btn) !important; border-color: var(--dsi-btn) !important; color: #fff !important; }
body.dsi-ios .single_add_to_cart_button:hover,
body.dsi-ios .wd-add-btn .add_to_cart_button:hover,
body.dsi-ios .dsh-home .dsh-btn--primary:hover { background: var(--dsi-btn-press) !important; }

/* "اكشف خصمك": a real surface in both modes */
html body.dsi-ios .dsh-home button.dsh-btn.dsh-btn--ghost,
html body.dsi-ios .dsh-home a.dsh-btn.dsh-btn--ghost {
  background: var(--dsi-card) !important; background-color: var(--dsi-card) !important;
  color: var(--dsi-label) !important; box-shadow: inset 0 0 0 1px var(--dsi-sep) !important;
}

/* prices: the theme paints them its own pale green */
body.dsi-ios .price .amount, body.dsi-ios .price .amount bdi,
body.dsi-ios .dsh-card__price .amount, body.dsi-ios .dsh-card__price bdi,
body.dsi-ios .dsh-float__meta .amount, body.dsi-ios .dsh-float__meta bdi { color: var(--dsi-green-text) !important; }
body.dsi-ios .price del .amount, body.dsi-ios .price del bdi,
body.dsi-ios .dsh-card__price del .amount, body.dsi-ios .dsh-card__price del bdi,
body.dsi-ios .dsh-float__meta del .amount, body.dsi-ios .dsh-float__meta del bdi { color: var(--dsi-label-2) !important; }

/* =====================================================================
   v1.9 — content pages (About, policies, terms, shipping, contact, reviews) share one layout
   ===================================================================== */
body.dsi-content-page .main-page-wrapper { background: var(--dsi-bg) !important; }
body.dsi-content-page .page-title,
body.dsi-content-page .wd-page-title {
  background: transparent !important; background-image: none !important;
  padding: clamp(24px, 4vw, 44px) 0 8px !important; text-align: center;
}
body.dsi-content-page .page-title .title,
body.dsi-content-page .wd-page-title .title,
body.dsi-content-page .entry-title {
  color: var(--dsi-label) !important; font-size: clamp(26px, 3.6vw, 40px) !important; font-weight: 800 !important; letter-spacing: 0;
}
body.dsi-content-page .page-title .breadcrumbs,
body.dsi-content-page .wd-breadcrumbs { justify-content: center; }
body.dsi-content-page .entry-content,
body.dsi-content-page article.page > .entry-content {
  max-width: 860px; margin: 8px auto clamp(28px, 5vw, 56px) !important;
  background: var(--dsi-card) !important; border-radius: 24px; box-shadow: var(--dsi-shadow);
  padding: clamp(20px, 4vw, 44px) !important;
  color: var(--dsi-label) !important; font-size: 16px; line-height: 1.95;
}
body.dsi-content-page .entry-content * { background-color: transparent !important; font-family: inherit !important; }
body.dsi-content-page .entry-content h1,
body.dsi-content-page .entry-content h2 { font-size: 22px !important; font-weight: 800 !important; margin: 28px 0 10px !important; color: var(--dsi-label) !important; line-height: 1.5 !important; }
body.dsi-content-page .entry-content h3,
body.dsi-content-page .entry-content h4 { font-size: 18px !important; font-weight: 700 !important; margin: 22px 0 8px !important; color: var(--dsi-label) !important; }
body.dsi-content-page .entry-content > *:first-child,
body.dsi-content-page .entry-content > *:first-child > *:first-child { margin-top: 0 !important; }
body.dsi-content-page .entry-content p,
body.dsi-content-page .entry-content li { color: var(--dsi-label-2) !important; font-size: 16px !important; line-height: 1.95 !important; }
body.dsi-content-page .entry-content strong,
body.dsi-content-page .entry-content b { color: var(--dsi-label) !important; }
body.dsi-content-page .entry-content ul,
body.dsi-content-page .entry-content ol { padding-inline-start: 22px; margin: 6px 0 14px; }
body.dsi-content-page .entry-content li::marker { color: var(--dsi-green-text); }
body.dsi-content-page .entry-content a { color: var(--dsi-green-text) !important; text-decoration: none; font-weight: 600; }
body.dsi-content-page .entry-content a:hover { text-decoration: underline; }
body.dsi-content-page .entry-content hr { border: 0; border-top: .5px solid var(--dsi-sep); margin: 24px 0; }
body.dsi-content-page .entry-content table { width: 100%; border-collapse: separate; border-spacing: 0; border-radius: 14px; overflow: hidden; box-shadow: inset 0 0 0 .5px var(--dsi-sep); }
body.dsi-content-page .entry-content th,
body.dsi-content-page .entry-content td { padding: 10px 12px; border-bottom: .5px solid var(--dsi-sep) !important; text-align: start; }
body.dsi-content-page .entry-content blockquote { border: 0 !important; border-inline-start: 3px solid var(--dsi-green) !important; padding: 4px 16px !important; margin: 14px 0 !important; color: var(--dsi-label) !important; font-style: normal; }
body.dsi-content-page .entry-content img { border-radius: 16px; max-width: 100%; height: auto; }
body.dsi-content-page .entry-content article,
body.dsi-content-page .entry-content [dir] { direction: rtl; text-align: start; }

/* ---------- reviews page (Customer Reviews: [cusrev_all_reviews]) ---------- */
body.dsi-content-page .cr-all-reviews-shortcode { font-family: inherit !important; }
body.dsi-content-page .cr-summaryBox-wrap,
body.dsi-content-page .cr-summaryBox-wrap * { background: transparent !important; }
body.dsi-content-page .cr-summaryBox-wrap {
  border-radius: 20px !important; box-shadow: inset 0 0 0 .5px var(--dsi-sep) !important; padding: 16px !important; margin-bottom: 18px !important;
}
body.dsi-content-page .cr-summaryBox-wrap .cr-overall-rating-wrap,
body.dsi-content-page .cr-summaryBox-wrap .cr-average-rating { color: var(--dsi-label) !important; }
body.dsi-content-page .cr-histogramTable .cr-histogram-bar,
body.dsi-content-page .ivole-meter { background: var(--dsi-fill) !important; border-radius: 999px !important; overflow: hidden; }
body.dsi-content-page .cr-histogramTable .cr-histogram-bar > *,
body.dsi-content-page .ivole-meter .ivole-meter-bar { background: #ff9f0a !important; }
body.dsi-content-page .cr-ajax-reviews-list > li,
body.dsi-content-page .cr-all-reviews-shortcode ol.commentlist > li,
body.dsi-content-page .cr-all-reviews-shortcode .comment_container {
  list-style: none; background: var(--dsi-fill) !important; border: 0 !important; border-radius: 18px !important;
  padding: 14px 16px !important; margin: 0 0 10px !important;
}
body.dsi-content-page .cr-all-reviews-shortcode .comment-text,
body.dsi-content-page .cr-all-reviews-shortcode .description p { color: var(--dsi-label) !important; font-size: 15px !important; }
body.dsi-content-page .cr-all-reviews-shortcode .meta,
body.dsi-content-page .cr-all-reviews-shortcode .woocommerce-review__author,
body.dsi-content-page .cr-all-reviews-shortcode .cr-reviewer-name { color: var(--dsi-label) !important; font-weight: 700; }
body.dsi-content-page .cr-all-reviews-shortcode time,
body.dsi-content-page .cr-all-reviews-shortcode .woocommerce-review__published-date,
body.dsi-content-page .cr-all-reviews-shortcode .cr-reviewer-verified { color: var(--dsi-label-2) !important; }
body.dsi-content-page .cr-all-reviews-shortcode .cr-show-more-reviews-prd,
body.dsi-content-page .cr-all-reviews-shortcode .cr-show-more-button,
body.dsi-content-page .cr-all-reviews-shortcode button {
  background: var(--dsi-btn) !important; color: #fff !important; border: 0 !important; border-radius: 12px !important; min-height: 44px; padding: 0 18px !important;
}
body.dsi-content-page .cr-all-reviews-shortcode img.avatar,
body.dsi-content-page .cr-all-reviews-shortcode .cr-avatar { border-radius: 50% !important; }
body.dsi-content-page .cr-all-reviews-shortcode input,
body.dsi-content-page .cr-all-reviews-shortcode select { background: var(--dsi-fill) !important; color: var(--dsi-label) !important; border: 0 !important; border-radius: 12px !important; }

/* ---------- wishlist page ---------- */
body.dsi-ios .wd-wishlist-content,
body.dsi-ios .wishlist-empty,
body.dsi-ios .wd-empty-wishlist { background: var(--dsi-card); border-radius: 24px; box-shadow: var(--dsi-shadow); padding: clamp(18px, 3vw, 32px); }
body.dsi-ios .wd-wishlist-btn a::before,
body.dsi-ios .wd-wishlist-btn a { transition: color .15s; }
body.dsi-ios .wd-wishlist-btn a.added,
body.dsi-ios .wd-wishlist-btn a.added::before { color: #ff3b30 !important; }

/* content pages built with Elementor: the same card layout */
body.dsi-content-page .main-page-wrapper > .container > .elementor,
body.dsi-content-page .wd-content-area > .elementor,
body.dsi-content-page main .elementor:not(.elementor-location-header):not(.elementor-location-footer) {
  max-width: 860px; margin: clamp(20px, 4vw, 44px) auto clamp(28px, 5vw, 56px) !important;
  background: var(--dsi-card) !important; border-radius: 24px; box-shadow: var(--dsi-shadow);
  padding: clamp(20px, 4vw, 44px) !important; overflow: hidden;
}
body.dsi-content-page main .elementor .e-con,
body.dsi-content-page main .elementor .elementor-section,
body.dsi-content-page main .elementor .elementor-widget-wrap,
body.dsi-content-page main .elementor .elementor-widget-container { background: transparent !important; padding-inline: 0 !important; max-width: none !important; }
body.dsi-content-page main .elementor .elementor-heading-title { color: var(--dsi-label) !important; font-family: inherit !important; font-weight: 800 !important; line-height: 1.45 !important; }
body.dsi-content-page main .elementor h1.elementor-heading-title { font-size: clamp(26px, 3.6vw, 36px) !important; }
body.dsi-content-page main .elementor h2.elementor-heading-title { font-size: 22px !important; }
body.dsi-content-page main .elementor .elementor-widget-text-editor,
body.dsi-content-page main .elementor .elementor-widget-text-editor p,
body.dsi-content-page main .elementor .elementor-widget-text-editor li { color: var(--dsi-label-2) !important; font-family: inherit !important; font-size: 16px !important; line-height: 1.95 !important; }
body.dsi-content-page main .elementor .elementor-widget-text-editor h2,
body.dsi-content-page main .elementor .elementor-widget-text-editor h3,
body.dsi-content-page main .elementor .elementor-widget-text-editor strong { color: var(--dsi-label) !important; }
body.dsi-content-page main .elementor .elementor-widget-text-editor a { color: var(--dsi-green-text) !important; font-weight: 600; }
body.dsi-content-page main .elementor .elementor-button { border-radius: 14px !important; }

/* ---------- product short description: lead + check points + note ---------- */
body.dsi-ios .woocommerce-product-details__short-description .dsi-lead { font-size: 15px; font-weight: 600; color: var(--dsi-label) !important; margin: 0 0 10px; line-height: 1.8; }
body.dsi-ios .dsi-points { list-style: none; margin: 0 0 12px; padding: 0; display: grid; gap: 6px; }
body.dsi-ios .dsi-points li {
  position: relative; padding-inline-start: 28px; font-size: 14px; line-height: 1.7; color: var(--dsi-label-2) !important; margin: 0;
}
body.dsi-ios .dsi-points li::before {
  content: ''; position: absolute; inset-inline-start: 0; top: 4px; width: 18px; height: 18px; border-radius: 50%;
  background: var(--dsi-green-tint) url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%231f9f76%22 stroke-width=%223.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 12.5 10 16.5 18 8%22/%3E%3C/svg%3E") center / 12px no-repeat;
}
body.dsi-ios .dsi-note {
  font-size: 13px; line-height: 1.7; margin: 0 0 12px; padding: 10px 12px; border-radius: 12px;
  background: rgba(255, 159, 10, .12); color: var(--dsi-label) !important;
}
html[data-dsi-theme="dark"] body.dsi-ios .dsi-note { background: rgba(255, 159, 10, .16); }
body.dsi-ios .summary-inner .dsi-short { text-align: start; margin: 4px 0 14px; padding: 14px 16px; border-radius: 16px; background: var(--dsi-fill); }
body.dsi-ios .summary-inner .dsi-short .dsi-points { margin-bottom: 0; }
body.dsi-ios .summary-inner .dsi-short .dsi-note { margin: 10px 0 0; }

/* ======================= v23 checkout restructure (same fields and rules) ======================= */
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page {
  --co-bg: #f2f2f7; --co-card: #fff; --co-fill: #f2f2f7; --co-ink: #1c1c1e; --co-muted: #6e6e73;
  --co-line: rgba(60,60,67,.14); --co-shadow: 0 1px 2px rgba(0,0,0,.04), 0 10px 30px rgba(0,0,0,.06); --co-gtext: #148a63;
}
html[data-dsi-theme="dark"] body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page {
  --co-bg: #000; --co-card: #1c1c1e; --co-fill: #2c2c2e; --co-ink: #f5f5f7; --co-muted: #a1a1a6;
  --co-line: rgba(255,255,255,.1); --co-shadow: 0 10px 30px rgba(0,0,0,.5); --co-gtext: #30d19b;
}
html[data-dsi-theme="dark"] body.woocommerce-checkout { background: #000 !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page {
  background: var(--co-bg) !important; color: var(--co-ink) !important;
  display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 14px; align-items: start;
  max-width: 1080px !important; margin: 0 auto !important; padding: 18px 14px 120px !important; width: auto !important;
}
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page > .dswotp-checkout-wrapper,
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page > form.checkout { width: 100% !important; max-width: none !important; margin: 0 !important; float: none !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page > form.checkout { display: flex !important; flex-direction: column; gap: 14px; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page > form.checkout > * { width: 100% !important; max-width: none !important; float: none !important; margin: 0 !important; flex: none !important; }
@media (min-width: 1000px) {
  html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page { grid-template-columns: 400px minmax(0, 1fr); gap: 20px; padding-top: 28px !important; }
  html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page > .dswotp-checkout-wrapper { grid-column: 1; grid-row: 1; position: sticky; top: 24px; }
  html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page > form.checkout { grid-column: 2; grid-row: 1; }
}
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .dswotp-header-card,
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .dswotp-user-greeting-box,
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page #customer_details,
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .checkout-order-review {
  background: var(--co-card) !important; color: var(--co-ink) !important; border: 1px solid var(--co-line) !important;
  border-radius: 22px !important; box-shadow: var(--co-shadow) !important; padding: 16px !important; width: 100% !important;
}
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .dswotp-header-card { margin: 0 !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page #payment,
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .woocommerce-checkout-review-order { background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; width: 100% !important; max-width: none !important; margin: 0 !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .payment_box { padding: 12px !important; background: var(--co-fill) !important; border-radius: 16px !important; margin-top: 10px !important; color: var(--co-ink) !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .payment_box::before { display: none !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .wc_payment_methods { width: 100% !important; padding: 0 !important; border: 0 !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .wc_payment_methods > li.dswotp-payment-method-card { background: var(--co-fill) !important; border: 1.5px solid transparent !important; border-radius: 16px !important; color: var(--co-ink) !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .wc_payment_methods > li.dswotp-selected-gateway { border-color: #2CBC8C !important; background: rgba(44,188,140,.12) !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page h1, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page h2, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page h3,
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page label, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page strong, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .dswotp-user-text,
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .dswotp-total-block, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .woocommerce-terms-and-conditions-wrapper,
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .form-row { color: var(--co-ink) !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page small, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .description { color: var(--co-muted) !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page a:not(.button) { color: var(--co-gtext) !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page input.input-text, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page select,
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page textarea, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .select2-selection {
  background: var(--co-fill) !important; color: var(--co-ink) !important; border: 1px solid var(--co-line) !important; border-radius: 12px !important; min-height: 46px;
}
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .select2-selection__rendered { color: var(--co-ink) !important; line-height: 44px !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .dswotp-coupon-toggle, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .dswotp-order-details-btn {
  background: var(--co-fill) !important; color: var(--co-ink) !important; border: 0 !important; border-radius: 12px !important; min-height: 40px; font-weight: 600 !important;
}
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page #place_order { width: 100% !important; min-height: 52px; border-radius: 16px !important; font-size: 17px !important; font-weight: 800 !important; background: #1f9f76 !important; color: #fff !important; border: 0 !important; margin-top: 8px !important; }
html[data-dsi-theme="dark"] body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page #place_order { background: #2CBC8C !important; color: #04110c !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .woocommerce-form__label-for-checkbox { display: flex !important; align-items: flex-start; gap: 10px; font-size: 14px !important; line-height: 1.6 !important; text-align: start; margin: 6px 0 !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .woocommerce-form__label-for-checkbox input[type=checkbox] { flex: 0 0 18px; width: 18px; height: 18px; margin: 3px 0 0 !important; accent-color: #1f9f76; }
html[data-dsi-theme="dark"] body.woocommerce-checkout .dswotp-popup-sheet { background: #1c1c1e !important; color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.woocommerce-checkout .dswotp-popup-sheet h3,
html[data-dsi-theme="dark"] body.woocommerce-checkout .dswotp-popup-sheet span,
html[data-dsi-theme="dark"] body.woocommerce-checkout .dswotp-popup-sheet strong { color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.woocommerce-checkout .dswotp-popup-item { background: #2c2c2e !important; border-color: rgba(255,255,255,.08) !important; }
html[data-dsi-theme="dark"] body.woocommerce-checkout .dswotp-discount-line { color: #30d19b !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page { min-width: 0 !important; width: 100% !important; margin-left: auto !important; margin-right: auto !important; left: auto !important; right: auto !important; box-sizing: border-box !important; }
html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .dswotp-checkout-wrapper, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page form.checkout, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .dswotp-user-greeting-box, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page #customer_details, html body.woocommerce-checkout:not(.woocommerce-order-received) .dswotp-page .checkout-order-review { min-width: 0 !important; max-width: none !important; width: 100% !important; }

/* v24: Tech mega panel never shows in the phone drawer or below desktop width */
.mobile-nav .dsi-tech-mega, .wd-side-hidden .dsi-tech-mega, .wd-nav-mobile .dsi-tech-mega, .mobile-nav .dsi-tech-menu > .wd-nav-opener, .wd-nav-mobile .dsi-tech-menu > .wd-nav-opener { display: none !important; }
@media (max-width: 1024px) { .dsi-tech-mega { display: none !important; } .dsi-tech-menu > .wd-nav-opener { display: none !important; } }

/* ======================= v25 checkout: kept fields, address summary + popup, dark payment cards ======================= */
html body.woocommerce-checkout #customer_details .form-row.dsi-keep,
html body.woocommerce-checkout #customer_details .form-row.dsi-keep.dswotp-hidden-filled-field { display: block !important; visibility: visible !important; height: auto !important; opacity: 1 !important; position: static !important; overflow: visible !important; }
html body.woocommerce-checkout #customer_details.dsi-has-kept .woocommerce-billing-fields__field-wrapper { display: grid !important; grid-template-columns: 1fr 1fr; gap: 0 12px; }
html body.woocommerce-checkout #customer_details.dsi-has-kept .woocommerce-billing-fields__field-wrapper > .form-row { grid-column: 1 / -1; }
html body.woocommerce-checkout #customer_details.dsi-has-kept #billing_first_name_field.dsi-keep { grid-column: 1; }
html body.woocommerce-checkout #customer_details.dsi-has-kept #billing_last_name_field.dsi-keep { grid-column: 2; }

.dsi-addr-summary { display: flex; align-items: center; gap: 12px; margin: 6px 0 10px; padding: 12px 14px; border-radius: 16px; background: var(--co-fill, #f2f2f7); }
.dsi-addr-summary > div { flex: 1 1 auto; min-width: 0; }
.dsi-addr-label { display: block; font-size: 12.5px; font-weight: 700; color: var(--co-muted, #6e6e73); }
.dsi-addr-text { margin: 2px 0 0 !important; font-size: 14.5px; line-height: 1.5; color: var(--co-ink, #1c1c1e) !important; }
html body .dsi-addr-summary .dsi-addr-edit { flex: 0 0 auto; background: rgba(44,188,140,.14) !important; color: #148a63 !important; border: 0 !important; border-radius: 12px !important; padding: 8px 14px !important; font-weight: 700 !important; font-size: 14px !important; min-height: 0 !important; cursor: pointer; }
html[data-dsi-theme="dark"] body .dsi-addr-summary .dsi-addr-edit { color: #30d19b !important; }

.dsi-addr-modal { position: fixed; inset: 0; z-index: 100000; display: none; align-items: flex-end; justify-content: center; background: rgba(0,0,0,.42); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.dsi-addr-modal.is-open { display: flex; }
@media (min-width: 700px) { .dsi-addr-modal { align-items: center; } }
.dsi-addr-sheet { width: min(520px, 100%); max-height: 88vh; overflow: auto; background: #fff; color: #1c1c1e; border-radius: 24px 24px 0 0; padding: 18px 18px 22px; box-shadow: 0 30px 80px rgba(0,0,0,.25); }
@media (min-width: 700px) { .dsi-addr-sheet { border-radius: 24px; } }
html[data-dsi-theme="dark"] .dsi-addr-sheet { background: #1c1c1e; color: #f5f5f7; }
.dsi-addr-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.dsi-addr-head h3 { margin: 0 !important; font-size: 18px !important; color: inherit !important; }
html body .dsi-addr-close { width: 34px !important; height: 34px !important; min-height: 0 !important; padding: 0 !important; border-radius: 50% !important; border: 0 !important; background: rgba(120,120,128,.16) !important; color: inherit !important; font-size: 20px !important; line-height: 34px !important; }
html body .dsi-addr-modal .form-row, html body .dsi-addr-modal .form-row.dswotp-hidden-filled-field, html body .dsi-addr-modal .form-row.dswotp-hidden-auto-address-field { display: block !important; visibility: visible !important; height: auto !important; opacity: 1 !important; position: static !important; width: 100% !important; margin: 0 0 10px !important; float: none !important; }
html body .dsi-addr-modal .form-row label { color: inherit !important; font-size: 13.5px !important; font-weight: 600; }
html body .dsi-addr-modal .form-row label.screen-reader-text { position: static !important; clip: auto !important; width: auto !important; height: auto !important; }
html body .dsi-addr-modal input.input-text, html body .dsi-addr-modal select, html body .dsi-addr-modal .select2-selection { width: 100% !important; min-height: 46px; border-radius: 12px !important; border: 1px solid rgba(120,120,128,.3) !important; background: rgba(120,120,128,.1) !important; color: inherit !important; padding: 0 12px !important; }
html body .dsi-addr-modal .select2-container { width: 100% !important; }
html body .dsi-addr-save { width: 100%; min-height: 50px; border-radius: 14px !important; border: 0 !important; background: #1f9f76 !important; color: #fff !important; font-weight: 800 !important; font-size: 16px !important; margin-top: 6px; cursor: pointer; }
.dsi-addr-error { color: #e5483b; font-weight: 600; margin: 0 0 8px; }
html.dsi-addr-open, html.dsi-addr-open body { overflow: hidden; }

/* payment cards readable in dark mode */
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment .wc_payment_methods > li,
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment .wc_payment_methods > li.dswotp-payment-method-card { background: #2c2c2e !important; border-color: rgba(255,255,255,.1) !important; }
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment .wc_payment_methods > li.dswotp-selected-gateway { background: rgba(44,188,140,.18) !important; border-color: #2CBC8C !important; }
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment .wc_payment_methods > li label,
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment .wc_payment_methods > li label * { color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment .wc_payment_methods > li img { background: #fff; border-radius: 6px; padding: 2px 4px; }
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment h3,
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment .dswotp-payment-title,
html[data-dsi-theme="dark"] body.woocommerce-checkout .dswotp-page [class*="payment-title"] { color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment .payment_box,
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment .payment_box fieldset,
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment .wc-credit-card-form { background: #1c1c1e !important; border-color: rgba(255,255,255,.12) !important; color: #f5f5f7 !important; }
html[data-dsi-theme="dark"] body.woocommerce-checkout #payment .payment_box label { color: #f5f5f7 !important; }
body.woocommerce-checkout #payment .payment_box iframe { border-radius: 10px; }

/* PDF tools checkout: the full billing form, tidy */
html body.dt-pro-checkout #customer_details .form-row,
html body.dt-pro-checkout #customer_details .form-row.dswotp-hidden-filled-field,
html body.dt-pro-checkout #customer_details .form-row.dswotp-hidden-auto-address-field { display: block !important; visibility: visible !important; height: auto !important; opacity: 1 !important; position: static !important; }
html body.dt-pro-checkout #customer_details .woocommerce-billing-fields__field-wrapper { display: grid !important; grid-template-columns: 1fr 1fr; gap: 0 12px; }
html body.dt-pro-checkout #customer_details .woocommerce-billing-fields__field-wrapper > .form-row { grid-column: 1 / -1; width: 100% !important; float: none !important; }
html body.dt-pro-checkout #customer_details #billing_first_name_field,
html body.dt-pro-checkout #customer_details #billing_city_field { grid-column: 1; }
html body.dt-pro-checkout #customer_details #billing_last_name_field,
html body.dt-pro-checkout #customer_details #billing_postcode_field { grid-column: 2; }
html body.dt-pro-checkout #customer_details::before { content: "بيانات الفوترة"; display: block; font-weight: 800; font-size: 17px; margin-bottom: 10px; color: var(--co-ink, #1c1c1e); }
html body.dt-pro-checkout #billing_address_2_field label.screen-reader-text { position: static !important; clip: auto !important; width: auto !important; height: auto !important; }
@media (max-width: 520px) {
  html body.dt-pro-checkout #customer_details .woocommerce-billing-fields__field-wrapper,
  html body.woocommerce-checkout #customer_details.dsi-has-kept .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr; }
  html body.dt-pro-checkout #customer_details .woocommerce-billing-fields__field-wrapper > .form-row,
  html body.woocommerce-checkout #customer_details.dsi-has-kept .woocommerce-billing-fields__field-wrapper > .form-row { grid-column: 1 / -1 !important; }
}
