/* Hend Design — consolidated dark/gold theme.
   Replace the previous custom stylesheet; do not append this file.
   Custom features below require their existing HTML/JavaScript.
   Unused selectors cannot be determined without the store DOM.
*/
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&display=swap');

/* 1. Theme — keep the final values from the original cascade. */
:root {
  --background-base: #232323;
  --gold: #ac8d5f;
  --warm-brown: #5e3807;
  --charcoal: #2e2e2e;
  --main-color: #fec76f;
  --infinte-color: #ab8d5f;
  --main-text-color: #ab8d5f;
  --main-text-color2: #ab8d5f;
  --color-primary: #735323;
  --color-primary-dark: #020202;
  --color-primary-light: #020202;
  --color-primary-reverse: #ab8d5f;
  --1: #bda27c;
}

body {
  font-family: 'IBM Plex Sans', 'IBM Plex Sans Arabic', sans-serif;
  background-color: var(--background-base);
  color: #fff;
}


/* Retained global overrides: check white panels and gray labels in preview. */
.bg-white { background-color: var(--background-base); }
.text-primary { color: var(--1); }
.text-gray-400 { color: #fff; margin-top: 1rem; }
.product__description a { color: #ccb387; }

.overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
}

/* 2. Product cards — approved charcoal/champagne design. */
.s-product-card-vertical {
  background: #292929;
  color: #f8f5ef;
  border: 1px solid rgb(204 179 135 / 30%);
  border-radius: 12px;
  padding: 10px;
  box-shadow: 0 3px 12px rgb(0 0 0 / 12%);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.s-product-card-vertical .s-product-card-image {
  background: #f5f0e8;
  border-radius: 8px;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  height: auto;
  flex: 0 0 auto;
}
.s-product-card-vertical .s-product-card-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 8px;
  transform: none;
  filter: none;
}
.s-product-card-vertical .s-product-card-content {
  background: transparent;
  padding: 16px 6px 6px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.s-product-card-vertical .s-product-card-content-title {
  margin-bottom: 8px;
}
.s-product-card-vertical .s-product-card-content-title a {
  font-size: 1rem !important;
  line-height: 1.6;
  font-weight: 600;
  color: #f8f5ef !important;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  min-height: 3.2em;
}
.s-product-card-vertical .s-product-card-content-subtitle {
  color: #bdb9b2 !important;
  font-size: .85rem;
  line-height: 1.6;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.s-product-card-vertical .s-product-card-content-sub {
  margin-block: 12px;
}
.s-product-card-vertical :is(.s-product-card-price, .s-product-card-sale-price h4) {
  color: #ccb387 !important;
  font-size: 1.2rem;
  font-weight: 700;
}
.s-product-card-vertical :is(.s-product-card-sale-price span, del) {
  color: #aaa59e !important;
  font-size: .85rem;
}
.s-product-card-vertical .s-product-card-content-footer {
  margin-top: auto;
  padding-top: 8px;
}
@media (hover: hover) and (pointer: fine) {
  .s-product-card-vertical:hover {
    transform: translateY(-3px);
    border-color: rgb(204 179 135 / 65%);
    box-shadow: 0 8px 20px rgb(0 0 0 / 20%);
  }
}
.s-product-card-promotion-title,
.promotion-title {
  background-color: var(--1);
  color: #fff;
  border-radius: 8px 0 8px 0;
  padding: 4px 8px;
  font-weight: bold;
  text-transform: uppercase;
}
.s-comments-product {
  margin-bottom: 1rem;
  background-color: transparent;
  padding-block: 1rem;
}

/* Decorative effect retained only for feature tiles. */
.s-block--features__item:hover {
  --c: var(--1);
  --b: 3px;
  --g: 5px;
  --_g: #0000 25%, var(--c) 0;
  padding: calc(var(--g) + var(--b));
  background:
    conic-gradient(from 180deg at top var(--b) right var(--b), var(--_g))
      var(--_i, 200%) 0 / 200% var(--_i, var(--b)) no-repeat,
    conic-gradient(at bottom var(--b) left var(--b), var(--_g))
      0 var(--_i, 200%) / var(--_i, var(--b)) 200% no-repeat;
  background-color: #f0e6da;
  transition: .3s, background-position .3s .3s;
  cursor: pointer;
}
.s-block--features__item:hover {
  --_i: 100%;
  transition: .3s, background-size .3s .3s;
}

/* 3. Buttons — retain specific overrides to avoid changing precedence. */
.s-button-primary {
  background-color: #a48952;
  color: var(--warm-brown);
  border: 1px solid var(--color-primary);
  border-radius: 10px;
  transition: all .3s ease;
  box-shadow: 0 2px 8px rgb(172 141 95 / 30%);
}
.s-button-primary:hover {
  background-color: #fff;
  color: var(--gold);
  transform: translateY(-2px) scale(1.03);
  box-shadow: 0 4px 12px rgb(172 141 95 / 40%);
}
.s-button-primary-outline {
  background-color: var(--gold);
  color: #fff;
  border: 2px solid var(--gold);
  border-radius: 10px;
  transition: all .3s ease;
}
.s-button-primary-outline:hover {
  background-color: #fff;
  color: var(--1);
  transform: translateY(-2px) scale(1.03);
}
button.undefined.s-button-element.s-button-btn.s-button-solid.s-button-primary.s-button-loader-center {
  background-color: var(--1);
  color: var(--color-primary);
}
button.undefined.s-button-element.s-button-btn.s-button-solid.s-button-primary.s-button-loader-center:hover,
button.undefined.s-button-element.s-button-btn.s-button-solid.s-button-wide.s-button-primary.s-button-loader-center:hover {
  background-color: var(--color-primary);
  color: var(--1);
}
button.undefined.s-button-element.s-button-btn.s-button-solid.s-button-wide.s-button-primary.s-button-loader-center,
button.undefined.s-button-element.s-button-btn.s-button-outline.s-button-wide.s-button-primary-outline.s-button-loader-center {
  background-color: var(--1);
  color: #fff;
}
button.undefined.s-button-element.s-button-btn.s-button-outline.s-button-wide.s-button-primary-outline.s-button-loader-center {
  border-color: #fff;
}
button.undefined.s-button-element.s-button-btn.s-button-outline.s-button-wide.s-button-primary-outline.s-button-loader-center:hover {
  background-color: #fff;
  color: var(--1);
  border-color: var(--1);
}
button.s-quick-buy-button.s-button-element.s-button-btn.s-button-outline.s-button-wide.s-button-primary-outline.s-button-loader-after:hover {
  color: var(--color-primary);
  background-color: var(--1);
}
button.btn--close-sm.close-mobile-menu.sicon-cancel.hidden {
  background-color: var(--1);
  color: #fff;
}
.header-btn__icon {
  background-color: var(--1);
  color: #fff;
  border: 1px solid #fff;
  transition: all .3s ease;
}
.header-btn__icon:hover {
  background-color: #fff;
  color: var(--1);
  border-color: var(--1);
  transform: translateY(-2px) scale(1.05);
  box-shadow: 0 4px 12px rgb(172 141 95 / 35%);
}
.s-cart-summary-count { border-color: #000; background-color: var(--1); }

/* 4. Header */
.navbar-brand img,
.main-nav-container.fixed-pinned .navbar-brand img {
  max-width: 190px;
  width: auto;
  height: 100%;
  max-height: 116px;
  transition: all .3s ease;
}
.s-user-menu-trigger {
  width: fit-content;
  cursor: pointer;
  align-items: center;
  border-radius: .375rem .375rem 0 0;
  background-color: transparent;
  padding: .875rem .625rem;
  font-size: .875rem;
  line-height: 1.25rem;
}

/* 5. Sliders and banners */
.s-slider-nav-arrow { background-color: var(--1); color: var(--color-primary); }
.s-slider-nav-arrow svg { width: 22px; fill: #77583c; }
salla-slider.photos-slider .swiper-slide { width: 100%; border-radius: .375rem; }
.swiper.s-slider-container.swiper-initialized.swiper-horizontal.swiper-pointer-events.swiper-rtl.swiper-backface-hidden { padding: 0; }
[dir=rtl] salla-slider[type]:not(.hydrated)>div,
[dir=rtl] salla-slider[type]:not(.hydrated) .swiper>div>div,
[dir=rtl] .carousel-slider .swiper { padding: .5rem; }
.banner-entry { background-color: transparent; transition: all .3s ease-in-out; }
a.banner-entry.square-photos:hover { transform: scale(1.1); }
.index>div.app-inner.flex.flex-col.min-h-full>section.s-block.s-block--banners.container>div>a.banner-entry.square-photos { transition: .5s; }
.index>div.app-inner.flex.flex-col.min-h-full>section.s-block.s-block--banners.container>div>a.banner-entry.square-photos:hover { transform: scale(.9); }
body.index div.app-inner.flex.flex-col.min-h-full>section.s-block--banners:nth-child(n) div { transition: transform .3s, box-shadow .3s; }
body.index div.app-inner.flex.flex-col.min-h-full>section.s-block--banners:nth-child(n) div div:hover {
  transform: translateY(-8px);
  box-shadow: 0 -10px 10px 10px rgb(0 0 0 / 1%) !important;
}
/* Main banner: actual theme structure places sections inside main-content.
   Only the first photo-slider section loses its top gap. */
body.index #main-content > section.s-block--photos-slider:first-of-type {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.banner--fixed img {
  display: block;
  width: 100%;
  border-radius: .375rem;
  border-style: none;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
  object-fit: cover;
  box-shadow: 2px 6px 10px 2px #fff;
}
.s-block--features+.s-block--features,
.s-block--fixed-banner+.s-block--fixed-banner,
.s-block--banners+.s-block--banners { margin-top: 1em; }
a.s-block__display-all { color: #000; }
.s-slider-block__display-all {
  padding: 5px;
  color: var(--1);
  margin: 10px auto;
  border-radius: 15px;
  animation: signal 1200ms linear infinite;
}
.s-block--tabs-produtcs .tab-trigger.is-active button {
  border-color: var(--gold);
  background-color: var(--gold);
  color: #020202;
}
/* Existing hidden Splide component retained; verify before removing. */
.splide { width: 0%; height: 0; background-color: #fff; z-index: 10000 !important; }
.splide__list li {
  background-color: #000;
  justify-content: center;
  flex-direction: row;
  align-items: center;
  text-align: center;
  position: relative;
  display: flex;
  gap: 5px;
}
.s-reviews-testimonial__icon svg {
  position: absolute;
  top: 1rem;
  height: 2.25rem;
  width: 2.25rem;
  fill: #fff;
  font-size: 2.25rem;
  line-height: 2.5rem;
}

/* 6. Footer and features */
.store-footer {
  background-color: #232323;
  color: #ccb387;
  border-top-left-radius: 20rem 1rem;
  border-top-right-radius: 20rem 1rem;
}
.store-footer__inner,
.footer-is-light .store-footer .store-footer__inner {
  background-color: #232323;
  color: #ccb387;
  border-top-left-radius: 5rem;
  border-top-right-radius: 5rem;
  box-shadow: 0 2px 5px 1px rgb(64 60 67 / 16%);
  text-align: center;
  padding: 2rem 1rem;
}
.footer-is-light .store-footer .store-footer__inner {
  border-bottom-left-radius: 18px;
  border-bottom-right-radius: 18px;
}
.store-footer h3 { color: #ccb387; }
.footer-is-light .store-footer .store-footer__inner::before {
  content: '';
  display: block;
  height: 110px;
  width: 140px;
  margin: 0 auto 20px;
  background: url('https://i.ibb.co/qydRZ7h/0033.png') center / contain no-repeat;
  position: relative;
}
.flex.mb-6,
.s-product-card-content-sub,
.store-footer a,
.s-product-card-content-title a,
.s-product-card-content-subtitle,
.store-footer .contact-social ul,
.s-social-list,
.footer-is-light .store-footer .store-footer__inner {
  text-align: center !important;
  justify-content: center !important;
}
a.mb-4.last\:mb-0.flex.items-center.text-sm.leading-none { color: #fff; }
a.flex.items-center.m-0 { justify-content: center; }
.container.grid.grid-col-1.lg\:grid-cols-6.gap-8.lg\:gap-6 {
  display: grid;
  text-align: center;
  justify-items: center;
}
.footer-list.store-links-items { columns: 2; }
.store-footer .contact-social { border-top-width: 0; margin-top: .25rem; padding-top: .25rem; }
a.social-link {
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  box-shadow: 0 4px 5px 1px rgb(64 60 67 / 16%);
}
.store-footer .social-link {
  background: linear-gradient(135deg, #ac8d5f, #d2b48c);
  color: var(--1);
  border-radius: 1.25rem;
  width: 3rem;
  height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.125rem;
  line-height: 1.75rem;
  transition: transform .3s ease, box-shadow .3s ease;
}
.store-footer .social-link:hover { transform: scale(1.15); box-shadow: 0 4px 12px rgb(172 141 95 / 35%); }
li.w-12.h-8.bg-white.rounded.flex.items-center.p-1 {
  border-radius: 1.25rem;
  border: 1px solid transparent;
  box-shadow: 0 2px 5px 1px rgb(64 60 67 / 16%);
}
.s-block--features__item {
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
  align-content: center;
}
.s-block--features__item .feature-icon {
  background-color: var(--1);
  cursor: pointer;
  transition: all .5s;
  box-shadow: 0 4px 5px 1px #020202;
}
.s-block--features__item .feature-icon i { color: var(--color-primary); }
.md\:flex.items-center.justify-between.py-4.container.text-center {
  margin: auto;
  padding: 1rem;
  background-color: transparent;
}

/* 7. Custom WhatsApp, cart and announcement elements */
.pulse-whatsapp {
  animation: whatsappPulse 2s infinite;
  box-shadow: 0 2px 8px rgb(172 141 95 / 35%);
  border-radius: 12px !important;
}
body[style] .sicon-whatsapp2::after,
body[cz-shortcut-listen=true] .sicon-whatsapp2::after,
i.sicon-whatsapp2::after {
  width: 56px;
  height: 56px;
  border-radius: 32.5px;
  font-size: 32px;
  box-shadow: 2px 2px 8px #0000006b;
  transition: all .4s ease;
}
/* Corrected pseudo-element hover order; match the existing specificity. */
body[style] .sicon-whatsapp2:hover::after,
body[cz-shortcut-listen=true] .sicon-whatsapp2:hover::after,
i.sicon-whatsapp2:hover::after {
  border-radius: 0;
  border: 0;
  width: 180px;
  height: 60px;
}
.sticky-cart-btn {
  position: fixed !important;
  bottom: 20px;
  right: 20px;
  z-index: 9999;
  box-shadow: 0 4px 16px rgb(172 141 95 / 40%);
  border-radius: 12px;
  transition: all .3s ease;
}
#shibah-announcement {
  position: fixed;
  top: 0;
  width: 100%;
  background: linear-gradient(135deg, #ac8d5f, #d2b48c);
  color: #fff;
  font-size: 1.1rem;
  font-weight: 700;
  text-align: center;
  padding: 12px 0;
  z-index: 9999;
  box-shadow: 0 2px 6px rgb(0 0 0 / 15%);
  animation: slideDown 1s ease forwards;
  font-family: 'IBM Plex Sans', 'IBM Plex Sans Arabic', sans-serif;
  direction: rtl;
  overflow: hidden;
}
#shibah-announcement .close-btn {
  position: absolute;
  top: 8px;
  left: 12px;
  font-size: 1.2rem;
  cursor: pointer;
  color: #fff;
  background: transparent;
  border: none;
  z-index: 10000;
}
#shibah-announcement .text {
  display: inline-block;
  white-space: nowrap;
  animation: scrollText 25s linear infinite;
  padding-left: 100%;
  font-weight: 500;
}

/* 8. General animations — startup logo removed. */
.fade-in-active {
  opacity: 1 !important;
  transform: translateY(0) !important;
  transition: all .6s ease;
}

@keyframes whatsappPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.1); }
}
@keyframes signal {
  0% { box-shadow: 0 0 0 0 var(--color-primary); }
  100% { box-shadow: 0 0 0 5px #fff; }
}
@keyframes slideDown {
  from { top: -60px; opacity: 0; }
  to { top: 0; opacity: 1; }
}
@keyframes scrollText {
  from { transform: translateX(0); }
  to { transform: translateX(-100%); }
}


/* 9. Layout and responsive rules */
.container {
  padding-inline: 10px;
  margin-inline: auto;
}
@media (min-width: 480px) {
  .banner-entry { padding: 2.5rem; }
}
@media (max-width: 650px) {
  .navbar-brand img,
  .main-nav-container.fixed-pinned .navbar-brand img {
    max-width: 132px;
    padding: 6px 0;
  }
}
@media (max-width: 767px) {
  .md\:flex.items-center.justify-between.py-4.container.text-center {
    display: flex;
    flex-direction: column;
  }
}
@media (min-width: 767px) {
  #app>div.app-inner.flex.flex-col.min-h-full>footer>div.store-footer__inner>div {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (min-width: 768px) { .container { width: 750px; } }
@media (max-width: 991px) {
  .s-block.s-block--banners>.grid { grid-template-columns: repeat(3, 1fr); }
  .s-block.s-block--banners>.grid .banner-entry { height: 8rem; }
}
@media (min-width: 992px) { .container { width: 970px; } }
@media (min-width: 1024px) {
  .main-menu li.root-level>a { padding-bottom: 1rem; padding-right: .2rem; }
  .main-nav-container { min-height: 88px; height: 116px !important; }
}
@media (min-width: 1200px) { .container { width: 1170px; } }
@media (min-width: 384px) and (min-height: 824px) {
  .s-product-card-content-subtitle { font-size: .85rem; }
}

/* 10. IBM Plex Sans — preserve elements that explicitly use icon classes. */
body {
  font-family: 'IBM Plex Sans', 'IBM Plex Sans Arabic', sans-serif !important;
}
:is(h1, h2, h3, h4, h5, h6, p, a, button, input, select, textarea, label,
  .s-button-element, .s-product-card-content-title):not([class*="sicon-"]):not([class*="fa-"]):not(.fa):not(.fas):not(.far):not(.fab):not([class*="icon-"]):not([class*="material-icons"]):not([class*="material-symbols"]) {
  font-family: 'IBM Plex Sans', 'IBM Plex Sans Arabic', sans-serif !important;
}

/* 11. Footer text — override theme utilities, including copyright and links. */
.store-footer,
.store-footer__inner,
.footer-is-light .store-footer .store-footer__inner {
  background-color: #232323 !important;
  color: #ccb387 !important;
}
.store-footer :is(h1, h2, h3, h4, h5, h6, p, a, span, li, small, strong,
  em, b, label, address, button, .text-gray-400, .text-primary) {
  color: #ccb387 !important;
}
/* Keep social icons legible against the new dark footer. */
.store-footer .social-link {
  background: #232323;
  color: #ccb387 !important;
  border: 1px solid #ccb387;
}

/* 12. Desktop dropdowns — compact content and dark/gold palette.
   Preserve theme visibility, positioning and mobile menu behavior.
*/
@media (min-width: 1024px) {
  .main-menu li > ul,
  .main-menu .sub-menu {
    background: #232323 !important;
    color: #ccb387 !important;
    height: auto !important;
    min-height: 0 !important;
    border: 1px solid rgb(204 179 135 / 30%);
    border-radius: 10px;
    box-shadow: 0 12px 28px rgb(0 0 0 / 25%);
    padding-block: 8px;
  }

  .main-menu li > ul > li,
  .main-menu .sub-menu > li {
    background-color: transparent !important;
    height: auto !important;
    min-height: 0 !important;
  }

  .main-menu li > ul a,
  .main-menu .sub-menu a {
    background-color: transparent !important;
    color: #ccb387 !important;
    padding: 12px 18px;
    line-height: 1.6;
    white-space: normal;
  }

  .main-menu li > ul a:hover,
  .main-menu li > ul a:focus-visible,
  .main-menu .sub-menu a:hover,
  .main-menu .sub-menu a:focus-visible {
    background-color: rgb(204 179 135 / 12%) !important;
    color: #fff !important;
  }
}

/* Card button overrides follow global button rules; wishlist is unaffected. */
.s-product-card-vertical :is(.s-button-primary, .s-button-primary-outline) {
  background: #ccb387 !important;
  color: #232323 !important;
  border: 1px solid #ccb387 !important;
  border-radius: 8px;
  min-height: 44px;
  box-shadow: none;
  transform: none;
  font-weight: 600;
}
.s-product-card-vertical :is(.s-button-primary, .s-button-primary-outline):hover {
  background: #dbc49f !important;
  color: #232323 !important;
  border-color: #dbc49f !important;
  box-shadow: none;
  transform: none;
}
.s-product-card-vertical :is(.s-button-primary, .s-button-primary-outline):disabled {
  opacity: .55;
  cursor: not-allowed;
}
.s-product-card-vertical .s-button-element:focus-visible {
  outline: 2px solid #f8f5ef;
  outline-offset: 3px;
}
@media (max-width: 479px) {
  .s-product-card-vertical { padding: 7px; }
  .s-product-card-vertical .s-product-card-content { padding: 12px 3px 3px; }
  .s-product-card-vertical .s-product-card-content-title a { font-size: .9rem !important; }
}
@media (prefers-reduced-motion: reduce) {
  .s-product-card-vertical { transition: none; }
  .s-product-card-vertical:hover { transform: none; }
}

/* 13. Header: centered desktop navigation and white account/cart details. */
@media (min-width: 1024px) {
  #mainnav > .inner > .container > .flex {
    display: grid !important;
    grid-template-columns: minmax(170px, 1fr) auto minmax(170px, 1fr);
    align-items: center;
    column-gap: 24px;
  }

  /* Let the logo and menu occupy separate columns in the header row. */
  #mainnav > .inner > .container > .flex > .flex:first-child {
    display: contents;
  }

  #mainnav .navbar-brand {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }

  #mainnav custom-main-menu {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    min-width: 0;
  }

  #mainnav custom-main-menu .main-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-inline: 0;
  }

  #mainnav > .inner > .container > .flex > .flex:last-child {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
  }
}

/* Price and currency beside the cart icon. */
#mainnav .s-cart-summary-content,
#mainnav .s-cart-summary-total,
#mainnav .s-cart-summary-total .sicon-sar,
#mainnav .s-cart-summary-total .sicon-sar::before {
  color: #fff !important;
}

/* Account button: SVG icon and border, including the logged-in trigger. */
#mainnav .s-user-menu-login-btn,
#mainnav .s-user-menu-trigger {
  color: #fff !important;
  border-color: #fff !important;
}
#mainnav .s-user-menu-login-btn svg,
#mainnav .s-user-menu-login-btn svg path,
#mainnav .s-user-menu-trigger svg {
  color: #fff !important;
  fill: currentColor !important;
}

/* 14. Shared storefront palette: category, search, product and cart pages. */
:root {
  --sh-surface: #292929;
  --sh-text: #f8f5ef;
  --sh-muted: #bdb9b2;
  --sh-accent: #ccb387;
  --sh-border: rgb(204 179 135 / 30%);
}
body.theme-raed,
body.theme-raed .app-inner,
body.theme-raed #main-content {
  background-color: #232323 !important;
  color: var(--sh-text);
}
body.theme-raed .store-header,
body.theme-raed #mainnav,
body.theme-raed #mainnav > .inner {
  background-color: #232323 !important;
  color: var(--sh-text) !important;
}
body.theme-raed .top-navbar {
  background-color: #1e1e1e !important;
  color: var(--sh-text) !important;
}
.store-header .s-contacts-topnav-link,
.store-header .s-localization-modal-trigger-btn,
#mainnav .main-menu > .root-level > a {
  color: #fff !important;
}
.store-header .s-localization-modal-trigger-btn {
  background-color: #333 !important;
}
#mainnav .main-menu > .root-level > a:hover {
  color: var(--sh-accent) !important;
}

/* Breadcrumbs and category/search toolbar. */
.s-breadcrumb-item,
.s-breadcrumb-item a,
.s-breadcrumb-arrow {
  color: var(--sh-muted) !important;
}
.s-breadcrumb-item:last-child,
.s-breadcrumb-item a:hover { color: var(--sh-accent) !important; }
.s-breadcrumb-arrow svg { fill: currentColor !important; }
#page-main-title,
label[for="product-filter"] { color: var(--sh-text) !important; }

/* Explicit input colors prevent white text on white controls. */
body.theme-raed :is(main, .s-search-panel) :is(
  .form-input, .form-select, .s-comment-form-input, .s-search-input
),
body.theme-raed .header-search .s-search-input,
select#product-filter {
  background-color: #292929 !important;
  color: #f8f5ef !important;
  border: 1px solid rgb(204 179 135 / 40%) !important;
  border-radius: 8px;
  color-scheme: dark;
  caret-color: #ccb387;
}
select#product-filter option,
main select.form-input option,
main select.form-select option {
  background-color: #292929 !important;
  color: #f8f5ef !important;
}
:is(.form-input, .s-comment-form-input, .s-search-input)::placeholder {
  color: #bdb9b2 !important;
  opacity: 1;
}
body.theme-raed :is(.form-input, .form-select, .s-comment-form-input, .s-search-input):focus-visible {
  outline: 2px solid #ccb387;
  outline-offset: 2px;
}

/* Shared primary actions; branded express-payment buttons keep their styles. */
body.theme-raed :is(.s-button-primary, .s-button-primary-outline, .btn--primary, .btn--outline-primary) {
  background: #ccb387 !important;
  color: #232323 !important;
  border-color: #ccb387 !important;
  box-shadow: none;
}
body.theme-raed :is(.s-button-primary, .s-button-primary-outline, .btn--primary, .btn--outline-primary):hover {
  background: #dbc49f !important;
  color: #232323 !important;
  border-color: #dbc49f !important;
}
body.theme-raed :is(.s-button-primary, .s-button-primary-outline) .s-button-text {
  color: inherit !important;
}
body.theme-raed :is(.s-button-primary, .s-button-primary-outline):disabled {
  opacity: .55;
  cursor: not-allowed;
}

/* Product details, specifications and quantity control. */
.container--product-details .main-content > h1,
.container--product-details .form-label,
.container--product-details .product-weight {
  color: var(--sh-text) !important;
}
.container--product-details .product__description,
.container--product-details .product__description :is(p, li, h2, h3, h4, strong, span) {
  color: var(--sh-text) !important;
}
.container--product-details .product__description a {
  color: var(--sh-accent) !important;
  text-decoration: underline;
}
.container--product-details .total-price,
.container--product-details [data-testid="store-product-price"] p {
  color: var(--sh-accent) !important;
}
.container--product-details .before-price {
  color: var(--sh-muted) !important;
}
.container--product-details .main-content .bg-white,
.container--product-details .sticky-product-bar,
.s-comment-form-wrapper {
  background-color: var(--sh-surface) !important;
  color: var(--sh-text);
}
.s-quantity-input-container {
  background: var(--sh-surface) !important;
  border: 1px solid var(--sh-border) !important;
  border-radius: 8px;
}
.s-quantity-input-input,
.s-quantity-input-button {
  background: var(--sh-surface) !important;
  color: var(--sh-text) !important;
  border-color: var(--sh-border) !important;
}
.s-quantity-input-button svg { fill: currentColor; }
.s-quantity-input-button:hover { color: var(--sh-accent) !important; }
.container--product-details :is(.btn--wishlist, .s-social-share-btn).s-button-element {
  background: #292929 !important;
  color: #ccb387 !important;
  border-color: var(--sh-border) !important;
}
.container--product-details .details-slider {
  border: 1px solid var(--sh-border);
  border-radius: 12px;
}
.s-comments-header,
.similar-products__title,
.no-content-placeholder { color: var(--sh-text) !important; }
.no-content-placeholder > .icon { color: var(--sh-accent) !important; }

/* Search drawer and its compact result cards. */
.s-search-panel,
.s-search-input-row,
.s-search-results-body,
.s-search-idle-panel {
  background-color: #232323 !important;
  color: var(--sh-text) !important;
}
.s-search-product-card-entry,
.s-search-idle-category-chip {
  background-color: #292929 !important;
  color: var(--sh-text) !important;
  border: 1px solid var(--sh-border);
  border-radius: 8px;
}
.s-search-product-card-content-title,
.s-search-product-card-content-title a,
.s-search-most-searched-item,
.s-search-idle-category-chip,
.s-search-idle-section-title,
.s-search-back-btn { color: var(--sh-text) !important; }
.s-search-product-card-price-value { color: var(--sh-accent) !important; }
.s-search-product-card-content-subtitle { color: var(--sh-muted) !important; }
.s-search-icon svg,
.s-search-back-btn svg { fill: #ccb387 !important; }
.s-search-product-card-image {
  background-color: #f5f0e8;
  border-radius: 6px;
}
.s-search-product-card-image img { object-fit: contain; }

/* Consistent product media box on every listing. */
.s-product-card-vertical .s-product-card-image > a {
  display: block;
  width: 100%;
  height: 100%;
}
.s-product-card-vertical .s-product-card-price .sicon-sar {
  color: inherit;
}

/* Mobile navigation retains the theme's native opening/closing behavior. */
@media (max-width: 1023px) {
  #mobile-menu {
    background-color: #232323 !important;
    color: #f8f5ef !important;
  }
  #mobile-menu :is(a, span),
  #mobile-menu::before,
  #mobile-menu::after { color: #f8f5ef !important; }
  #mobile-menu ul { background-color: #232323 !important; }
}

/* Gold footer text regardless of the page's footer-is-light/dark setting. */
body.theme-raed .store-footer,
body.theme-raed .store-footer__inner {
  background: #232323 !important;
  color: #ccb387 !important;
}

/* 15. Product text: override inline editor colors, including nested bold text. */
body.theme-raed .container--product-details .main-content {
  color: #fff;
}
body.theme-raed .container--product-details :is(
  .main-content > h1, .product-entry__sub-title,
  .product-sku-wrapper, .product-sku,
  .form-label, .form-label span, .form-label b, .product-weight,
  .btn-tab, .btn-tab span
) {
  color: #fff !important;
}
body.theme-raed .product__description,
body.theme-raed .product__description :is(
  article, p, div, span, strong, b, em, i, a, li,
  h1, h2, h3, h4, h5, h6, table, th, td, blockquote
) {
  color: #fff !important;
}
body.theme-raed .product__description a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.theme-raed .product__description a:hover { color: #ccb387 !important; }
body.theme-raed .container--product-details [data-testid="store-product-price"] p,
body.theme-raed .container--product-details [data-testid="store-product-price"] p .sicon-sar,
body.theme-raed .container--product-details .total-price,
body.theme-raed .container--product-details .total-price .sicon-sar {
  color: #ccb387 !important;
}
body.theme-raed .container--product-details [data-testid="store-product-price"] .line-through {
  color: #bdb9b2 !important;
}
.container--product-details .main-content > .mb-3 > a {
  color: #fff !important;
}
.container--product-details .s-add-product-button-mini-checkout-content {
  background-color: #292929 !important;
  color: #fff !important;
  border: 1px solid #ccb387 !important;
  border-radius: 8px;
}

/* 16. Store testimonials: dark cards with readable names and comments.
   Preserve the slider's native sizing, transforms and navigation behavior. */
body.theme-raed .s-reviews-header {
  color: #fff !important;
}
body.theme-raed .s-reviews-testimonial {
  background: #292929 !important;
  color: #fff !important;
  border: 1px solid rgb(204 179 135 / 30%) !important;
  border-radius: 14px;
  box-shadow: 0 6px 20px rgb(0 0 0 / 14%);
}
body.theme-raed .s-reviews-testimonial__inner,
body.theme-raed .s-reviews-testimonial__text,
body.theme-raed .s-reviews-testimonial__name_wrapper,
body.theme-raed .s-reviews-testimonial__info {
  background: transparent !important;
  color: #fff !important;
}
body.theme-raed .s-reviews-testimonial__text p,
body.theme-raed .s-reviews-testimonial__info :is(h2, h3, a, span) {
  color: #fff !important;
}
body.theme-raed .s-reviews-testimonial__text p {
  line-height: 1.9;
  overflow-wrap: anywhere;
}
body.theme-raed .s-reviews-testimonial__text > p:empty {
  display: none;
}
body.theme-raed .s-reviews-testimonial__icon svg {
  fill: #ccb387 !important;
  color: #ccb387 !important;
  opacity: 0.55;
}
body.theme-raed .s-reviews-testimonial .s-rating-stars-selected,
body.theme-raed .s-reviews-testimonial .s-rating-stars-selected svg {
  color: #ccb387 !important;
  fill: #ccb387 !important;
}
body.theme-raed .s-reviews-testimonials-slider .s-slider-nav-arrow {
  background: #292929 !important;
  color: #ccb387 !important;
  border: 1px solid rgb(204 179 135 / 45%) !important;
}
body.theme-raed .s-reviews-testimonials-slider .s-slider-nav-arrow svg {
  fill: currentColor !important;
}
body.theme-raed .s-reviews-testimonials-slider .s-slider-nav-arrow:hover {
  background: #ccb387 !important;
  color: #232323 !important;
}

/* 17. Audit fixes: product options and attachments.
   Scoped to product forms; payment-provider branding is not overridden. */
body.theme-raed .container--product-details .s-product-options-wrapper {
  background: #292929 !important;
  color: #fff !important;
  border: 1px solid rgb(204 179 135 / 30%);
  border-radius: 12px;
}
body.theme-raed .container--product-details :is(
  .s-product-options-option-container, .s-product-options-option,
  .s-product-options-option-content
) {
  background-color: transparent !important;
  color: #fff;
  min-width: 0;
}
body.theme-raed .container--product-details :is(
  .s-product-options-option-label, .s-product-options-option-label b,
  .s-product-options-thumbnails-wrapper p
) {
  color: #fff !important;
}
body.theme-raed .container--product-details .s-product-options-option-label small {
  color: #c8c3ba !important;
}
body.theme-raed .container--product-details .s-product-options-option-label b > span {
  color: #ff9a9a !important;
}
body.theme-raed .container--product-details .s-product-options-wrapper :is(
  input.s-form-control, textarea.s-form-control, select, option
) {
  background-color: #232323 !important;
  color: #fff !important;
  border-color: #998567 !important;
  color-scheme: dark;
  font-family: inherit;
}
body.theme-raed .container--product-details .s-product-options-wrapper :is(
  input.s-form-control, textarea.s-form-control, select
) {
  border-width: 1px;
  border-style: solid;
  border-radius: 8px;
  max-width: 100%;
  min-height: 44px;
}
body.theme-raed .container--product-details .s-form-control::placeholder {
  color: #bdb9b2 !important;
  opacity: 1;
}
body.theme-raed .container--product-details .s-product-options-wrapper :is(
  input.s-form-control, textarea.s-form-control, select
):focus-visible {
  outline: 2px solid #ccb387;
  outline-offset: 2px;
}
body.theme-raed .container--product-details .s-product-options-wrapper :is(
  input, textarea, select
)[aria-invalid="true"] {
  border-color: #ff9a9a !important;
}
body.theme-raed .s-product-options-thumbnails-wrapper input:checked + label {
  outline: 2px solid #ccb387;
  outline-offset: 2px;
}
body.theme-raed .s-product-options-thumbnails-wrapper input:focus-visible + label {
  outline: 2px solid #fff;
  outline-offset: 4px;
}
body.theme-raed .s-product-options-thumbnails-icon {
  background-color: #ccb387 !important;
  color: #232323 !important;
}
body.theme-raed .s-product-options-thumbnails-icon svg {
  fill: currentColor !important;
}
body.theme-raed .container--product-details .btn-tab {
  background: #35312b !important;
  color: #fff !important;
  border: 1px solid #998567 !important;
  border-radius: 8px;
  min-height: 44px;
}
body.theme-raed .container--product-details .btn-tab :is(span, i) {
  color: inherit !important;
}
body.theme-raed .container--product-details .btn-tab:hover,
body.theme-raed .container--product-details .btn-tab[aria-expanded="true"] {
  background: #ccb387 !important;
  color: #232323 !important;
}
body.theme-raed .container--product-details .btn-tab:focus-visible {
  outline: 2px solid #ccb387;
  outline-offset: 3px;
}
body.theme-raed .container--product-details .s-file-upload .filepond--panel-root {
  background-color: #232323 !important;
}
body.theme-raed .container--product-details .s-file-upload :is(
  .filepond--drop-label, .profile-filepond-placholder-text
) {
  color: #fff !important;
}
body.theme-raed .container--product-details .s-file-upload :is(
  .filepond--label-action, .product-option-uploader-placholder-icon
) {
  color: #ccb387 !important;
}

/* 18. FAQ uses Shadow DOM. These are its verified public CSS variables.
   Host overrides also win over the component's inline color configuration. */
body.theme-raed .s-block--bundle-faq > * {
  --faq-border-color: #998567 !important;
  --faq-question-bg-color: #292929 !important;
  --faq-question-text-color: #ffffff !important;
  color: #fff !important;
  font-family: 'IBM Plex Sans', 'IBM Plex Sans Arabic', sans-serif;
}

/* 19. Readable empty states in cart and product listings. */
body.theme-raed main .no-content-placeholder,
body.theme-raed main .no-content-placeholder p {
  color: #e0dbd2 !important;
}
body.theme-raed main .no-content-placeholder > .icon {
  background-color: #292929 !important;
  color: #ccb387 !important;
  border: 1px solid rgb(204 179 135 / 35%);
}

/* Keep controls comfortable on small screens without changing the header. */
@media (max-width: 767px) {
  body.theme-raed .container--product-details .s-product-options-wrapper :is(
    input.s-form-control, textarea.s-form-control, select
  ) {
    font-size: 16px;
  }
  body.theme-raed .container--product-details .s-product-options-option-label {
    overflow-wrap: anywhere;
  }
}