/* Add custom CSS styles below */ 
/* ==========================================================================
   ASAWER ALMADINAH — RAED PRODUCTION CSS V7
   متجر أساور المدينة | سلة - ثيم رائد
   ----------------------------------------------------------------------------
   طريقة الاستخدام:
   1) احذف جميع أكواد CSS السابقة.
   2) الصق هذا الملف وحده في محرر CSS.
   3) لا يوضع في محرر JavaScript.
   4) هذا الملف لا يغيّر تركيب القوائم أو قائمة الجوال أو القوائم المنسدلة.
   ========================================================================== */

/* ==========================================================================
   01) OFFICIAL THEME VARIABLES
   ========================================================================== */
:root,
html,
body {
  --font-main: "DIN Next Arabic", "Tajawal", system-ui, -apple-system,
    "Segoe UI", Tahoma, Arial, sans-serif !important;

  --color-primary: #c6a15b !important;
  --color-primary-dark: #9d783b !important;
  --color-primary-light: #f5ead7 !important;
  --color-primary-reverse: #111111 !important;

  --asw-black: #111111;
  --asw-black-soft: #181818;
  --asw-gold: #c6a15b;
  --asw-gold-dark: #9d783b;
  --asw-white: #ffffff;
  --asw-cream: #faf7f2;
  --asw-surface: #fdfcfb;
  --asw-text: #1a1a1a;
  --asw-muted: #626262;
  --asw-border: #e8e1d7;
  --asw-danger: #b42318;
  --asw-success: #177a58;

  --asw-radius-sm: 9px;
  --asw-radius-md: 14px;
  --asw-radius-lg: 18px;

  --asw-shadow-xs: 0 4px 14px rgba(17, 17, 17, 0.045);
  --asw-shadow-sm: 0 10px 28px rgba(17, 17, 17, 0.075);
  --asw-shadow-md: 0 16px 38px rgba(17, 17, 17, 0.11);

  --asw-container: 1440px;
}

/* ==========================================================================
   02) BASE
   ========================================================================== */
html {
  background: var(--asw-white);
  scroll-behavior: smooth;
  font-size: 16px;
}

body {
  margin: 0;
  background: var(--asw-white) !important;
  color: var(--asw-text);
  font-family: var(--font-main) !important;
  font-size: 16px;
  line-height: 1.75;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body,
button,
input,
select,
textarea {
  font-family: var(--font-main) !important;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
}

main,
#app,
.app-inner,
.page-wrapper,
.content-wrapper,
.store-home {
  background: var(--asw-white) !important;
  color: var(--asw-text);
}

/* لا نستخدم انتقالات عامة على جميع العناصر حفاظًا على السرعة */
a,
button,
.s-product-card-entry,
.product-entry,
.product-card,
.category-entry,
.banner-entry,
.image-banner,
.s-block--banners a {
  transition:
    color 160ms ease,
    background-color 160ms ease,
    border-color 160ms ease,
    box-shadow 160ms ease,
    transform 160ms ease;
}

/* ==========================================================================
   03) TYPOGRAPHY
   ========================================================================== */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  color: var(--asw-text);
  font-family: var(--font-main) !important;
  font-weight: 800;
  line-height: 1.45;
}

h1 {
  font-size: clamp(1.75rem, 2.8vw, 2.5rem);
}

h2 {
  font-size: clamp(1.4rem, 2vw, 1.95rem);
}

h3 {
  font-size: clamp(1.08rem, 1.4vw, 1.3rem);
}

p,
li {
  color: var(--asw-muted);
  line-height: 1.8;
}

/* ==========================================================================
   04) HEADER — مظهر فقط، بدون لمس بنية القائمة
   ========================================================================== */
.top-navbar,
.top-header,
.header-top,
.store-header .top-navbar {
  background: #0d0d0d !important;
  color: #ffffff !important;
  border: 0 !important;
}

.store-header,
header.store-header,
.main-nav-container {
  background: var(--asw-black-soft) !important;
  border-bottom: 1px solid rgba(198, 161, 91, 0.34) !important;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.13) !important;
}

.store-header .container,
.main-nav-container .container {
  max-width: var(--asw-container) !important;
}

.navbar-brand img,
.store-header .logo img,
.main-nav-container .navbar-brand img {
  width: auto !important;
  max-width: 220px !important;
  max-height: 58px !important;
  object-fit: contain !important;
  opacity: 1 !important;
  filter: none !important;
}

/*
  لا توجد في هذا الملف أي قواعد على:
  .main-menu
  .sub-menu
  .dropdown-menu
  .mega-menu
  .mobile-menu
  .s-menu
  drawer / sidebar
  وذلك حتى يبقى تنقل ثيم رائد الأصلي سليمًا.
*/

/* ==========================================================================
   05) SEARCH
   ========================================================================== */
salla-search input,
.s-search-input,
.header-search input,
input[type="search"] {
  min-height: 46px !important;
  background: #ffffff !important;
  color: var(--asw-text) !important;
  border: 1px solid #ddd8d0 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  font-size: 0.95rem !important;
}

salla-search input::placeholder,
.s-search-input::placeholder,
.header-search input::placeholder,
input[type="search"]::placeholder {
  color: #878787 !important;
  opacity: 1 !important;
}

salla-search input:focus,
.s-search-input:focus,
.header-search input:focus,
input[type="search"]:focus {
  border-color: var(--asw-gold) !important;
  outline: 0 !important;
  box-shadow: 0 0 0 3px rgba(198, 161, 91, 0.14) !important;
}

/* ==========================================================================
   06) HERO / SLIDERS
   ========================================================================== */
.photos-slider,
.main-slider,
.hero-slider,
salla-slider.photos-slider {
  overflow: hidden !important;
  background: var(--asw-white) !important;
}

.photos-slider img,
.main-slider img,
.hero-slider img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  object-position: center !important;
}

.photos-slider .swiper-button-next,
.photos-slider .swiper-button-prev,
.main-slider .swiper-button-next,
.main-slider .swiper-button-prev,
.hero-slider .swiper-button-next,
.hero-slider .swiper-button-prev {
  width: 42px !important;
  height: 42px !important;
  color: #ffffff !important;
  background: rgba(17, 17, 17, 0.84) !important;
  border-radius: 50% !important;
  box-shadow: var(--asw-shadow-xs);
}

.swiper-pagination-bullet {
  opacity: 0.35 !important;
}

.swiper-pagination-bullet-active {
  background: var(--asw-gold) !important;
  opacity: 1 !important;
}

/* ==========================================================================
   07) SECTIONS
   ========================================================================== */
.s-block,
main > section {
  margin-block: 28px !important;
}

.s-block > .container,
main > section > .container {
  max-width: var(--asw-container) !important;
}

.s-block__title,
.s-slider-block__title,
.section-title,
.section--title {
  margin-bottom: 18px !important;
  color: var(--asw-text) !important;
  font-size: clamp(1.45rem, 2vw, 2rem) !important;
  font-weight: 800 !important;
  line-height: 1.45 !important;
}

.s-block__title::after,
.s-slider-block__title::after,
.section-title::after,
.section--title::after {
  content: "";
  display: block;
  width: 50px;
  height: 3px;
  margin-top: 8px;
  background: var(--asw-gold);
  border-radius: 999px;
}

.s-block__title a,
.s-slider-block__title a,
.section-title a,
.section--title a {
  color: var(--asw-gold-dark) !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
}

/* ==========================================================================
   08) STORE FEATURES — لماذا تختارنا؟
   ========================================================================== */
.s-block--features,
.store-features,
.features-section {
  padding: 10px 0 !important;
  background: var(--asw-white) !important;
  opacity: 1 !important;
  filter: none !important;
}

.s-block--features__item,
.store-features .feature,
.features-section .feature {
  min-height: 150px !important;
  padding: 18px 14px !important;
  background: var(--asw-white) !important;
  color: var(--asw-text) !important;
  border: 1px solid var(--asw-border) !important;
  border-radius: var(--asw-radius-md) !important;
  box-shadow: var(--asw-shadow-xs) !important;
  opacity: 1 !important;
  filter: none !important;
}

.s-block--features__item svg,
.s-block--features__item .sicon,
.store-features svg,
.store-features .sicon,
.features-section svg,
.features-section .sicon {
  width: 31px !important;
  height: 31px !important;
  color: var(--asw-gold) !important;
  opacity: 1 !important;
  filter: none !important;
}

.s-block--features__item h3,
.store-features h3,
.features-section h3 {
  margin: 10px 0 3px !important;
  color: var(--asw-text) !important;
  font-size: 1.08rem !important;
  font-weight: 800 !important;
}

.s-block--features__item p,
.store-features p,
.features-section p {
  margin: 0 !important;
  color: var(--asw-muted) !important;
  font-size: 0.84rem !important;
  line-height: 1.65 !important;
}

@media (hover: hover) {
  .s-block--features__item:hover,
  .store-features .feature:hover,
  .features-section .feature:hover {
    border-color: rgba(198, 161, 91, 0.68) !important;
    box-shadow: var(--asw-shadow-sm) !important;
    transform: translateY(-3px);
  }
}

/* ==========================================================================
   09) CATEGORIES & BANNERS
   ========================================================================== */
.category-entry,
.s-block--categories a,
.categories-slider a,
.banner-entry,
.image-banner,
.s-block--banners a,
.custom-banner {
  overflow: hidden !important;
  background: var(--asw-white) !important;
  border: 1px solid var(--asw-border) !important;
  border-radius: var(--asw-radius-md) !important;
  box-shadow: none !important;
}

.category-entry img,
.s-block--categories img,
.categories-slider img,
.banner-entry img,
.image-banner img,
.s-block--banners img,
.custom-banner img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
}

.category-entry h3,
.s-block--categories h3,
.categories-slider h3 {
  color: #ffffff !important;
  font-weight: 800 !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.6) !important;
}

@media (hover: hover) {
  .category-entry:hover,
  .s-block--categories a:hover,
  .categories-slider a:hover,
  .banner-entry:hover,
  .image-banner:hover,
  .s-block--banners a:hover,
  .custom-banner:hover {
    border-color: rgba(198, 161, 91, 0.6) !important;
    box-shadow: var(--asw-shadow-sm) !important;
    transform: translateY(-3px);
  }
}

/* ==========================================================================
   10) BRANDS
   ========================================================================== */
.brands-slider img,
.s-block--brands img {
  max-width: 145px !important;
  max-height: 50px !important;
  object-fit: contain !important;
  filter: grayscale(1) !important;
  opacity: 0.88 !important;
}

.brands-slider a:hover img,
.s-block--brands a:hover img {
  filter: grayscale(0) !important;
  opacity: 1 !important;
}

/* ==========================================================================
   11) PRODUCT CARDS
   ========================================================================== */
.s-product-card-entry,
.product-entry,
.product-card {
  min-width: 0 !important;
  overflow: hidden !important;
  background: var(--asw-white) !important;
  color: var(--asw-text) !important;
  border: 1px solid var(--asw-border) !important;
  border-radius: var(--asw-radius-md) !important;
  box-shadow: none !important;
  opacity: 1 !important;
  filter: none !important;
}

.s-product-card-image,
.product-entry__image,
.product-card__image {
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 10px !important;
  overflow: hidden !important;
  background: var(--asw-white) !important;
}

.s-product-card-image img,
.product-entry__image img,
.product-card__image img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  opacity: 1 !important;
  filter: none !important;
}

.s-product-card-content,
.product-entry__content,
.product-card__content {
  min-height: 142px !important;
  padding: 13px 14px 14px !important;
  background: var(--asw-white) !important;
  color: var(--asw-text) !important;
}

.s-product-card-content-title,
.s-product-card-content-title a,
.product-entry__title,
.product-card__title {
  display: -webkit-box !important;
  min-height: 48px !important;
  overflow: hidden !important;
  color: var(--asw-text) !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  line-height: 1.7 !important;
  white-space: normal !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

.s-product-card-content-subtitle,
.product-entry__subtitle,
.product-card__subtitle {
  color: #898989 !important;
  font-size: 0.82rem !important;
}

.s-product-card-price,
.product-entry__price,
.product-card__price {
  color: var(--asw-black) !important;
  font-size: 1.16rem !important;
  font-weight: 900 !important;
  line-height: 1.4 !important;
}

.s-product-card-sale-price,
.sale-price {
  color: var(--asw-danger) !important;
  font-weight: 900 !important;
}

.s-product-card-regular-price,
.regular-price {
  color: #969696 !important;
}

.s-product-card-wishlist-btn,
.s-product-card-quick-view-btn,
.wishlist-btn {
  color: #5f5f5f !important;
  background: rgba(255, 255, 255, 0.97) !important;
  border: 1px solid #bdbdbd !important;
  border-radius: 10px !important;
  opacity: 1 !important;
  filter: none !important;
}

.s-product-card-promotion-title,
.discount-badge,
.offer-badge {
  color: #ffffff !important;
  background: var(--asw-danger) !important;
  font-size: 0.78rem !important;
  font-weight: 800 !important;
}

@media (hover: hover) {
  .s-product-card-entry:hover,
  .product-entry:hover,
  .product-card:hover {
    border-color: rgba(198, 161, 91, 0.62) !important;
    box-shadow: var(--asw-shadow-sm) !important;
    transform: translateY(-3px);
  }
}

/* ==========================================================================
   12) BUTTONS
   ========================================================================== */
.s-button-primary,
button.s-button-primary,
salla-add-product-button button,
.add-to-cart,
.btn-primary {
  min-height: 42px !important;
  color: #ffffff !important;
  background: var(--asw-black) !important;
  border: 1px solid var(--asw-black) !important;
  border-radius: var(--asw-radius-sm) !important;
  box-shadow: none !important;
  font-size: 0.9rem !important;
  font-weight: 800 !important;
}

.s-button-primary:hover,
button.s-button-primary:hover,
salla-add-product-button button:hover,
.add-to-cart:hover,
.btn-primary:hover {
  color: var(--asw-black) !important;
  background: var(--asw-gold) !important;
  border-color: var(--asw-gold) !important;
}

.s-button-outline,
.btn-outline {
  color: var(--asw-black) !important;
  background: transparent !important;
  border-color: var(--asw-black) !important;
  border-radius: var(--asw-radius-sm) !important;
}

/* ==========================================================================
   13) PRODUCT PAGE & FORMS
   ========================================================================== */
.product-single,
.product-details,
.product-page {
  background: var(--asw-white) !important;
  color: var(--asw-text) !important;
}

.product-single .product-title,
.product-details h1,
.product-page h1 {
  color: var(--asw-text) !important;
  font-size: clamp(1.65rem, 2.7vw, 2.3rem) !important;
  font-weight: 800 !important;
  line-height: 1.5 !important;
}

.product-description {
  color: var(--asw-text);
  font-size: 1rem;
  line-height: 1.9;
}

.product-description h2,
.product-description h3 {
  color: var(--asw-text) !important;
  font-weight: 800 !important;
}

.breadcrumbs,
.s-breadcrumbs {
  padding: 10px 14px !important;
  background: var(--asw-cream) !important;
  border-radius: 10px !important;
}

input,
select,
textarea {
  color: var(--asw-text) !important;
  background: var(--asw-white) !important;
  border-color: #ddd8d0 !important;
  border-radius: var(--asw-radius-sm) !important;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--asw-gold) !important;
  outline: 0 !important;
  box-shadow: 0 0 0 3px rgba(198, 161, 91, 0.14) !important;
}

/* ==========================================================================
   14) NEWSLETTER
   ========================================================================== */
.newsletter,
.s-block--newsletter,
.footer-newsletter {
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--asw-black), #241e15) !important;
  border-top: 1px solid rgba(198, 161, 91, 0.35) !important;
  border-bottom: 1px solid rgba(198, 161, 91, 0.35) !important;
}

.newsletter h2,
.newsletter h3,
.s-block--newsletter h2,
.s-block--newsletter h3,
.footer-newsletter h2,
.footer-newsletter h3 {
  color: var(--asw-gold) !important;
}

.newsletter p,
.s-block--newsletter p,
.footer-newsletter p {
  color: #ececec !important;
}

/* ==========================================================================
   15) FOOTER — ألوان وخطوط فقط، بدون تعديل التخطيط
   ========================================================================== */
.store-footer,
footer.store-footer,
.store-footer__inner {
  color: #eeeeee !important;
  background: linear-gradient(180deg, #171717, #0b0b0b) !important;
  border-top: 2px solid var(--asw-gold) !important;
  opacity: 1 !important;
  filter: none !important;
}

.store-footer__inner {
  padding-top: 30px !important;
  padding-bottom: 22px !important;
}

.store-footer h3,
.store-footer h4 {
  color: var(--asw-gold) !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
}

.store-footer p,
.store-footer li,
.store-footer span {
  color: #e9e9e9 !important;
  font-size: 0.9rem !important;
  line-height: 1.72 !important;
}

.store-footer a {
  color: #ffffff !important;
  text-decoration: none !important;
}

.store-footer a:hover {
  color: var(--asw-gold) !important;
}

/* ==========================================================================
   16) MOBILE
   ========================================================================== */
@media (max-width: 768px) {
  html,
  body {
    font-size: 15px;
  }

  .container {
    padding-inline: 12px !important;
  }

  .navbar-brand img,
  .store-header .logo img,
  .main-nav-container .navbar-brand img {
    max-width: 158px !important;
    max-height: 44px !important;
  }

  .s-block,
  main > section {
    margin-block: 20px !important;
  }

  .s-block__title,
  .s-slider-block__title,
  .section-title,
  .section--title {
    font-size: 1.48rem !important;
  }

  .s-block--features__item,
  .store-features .feature,
  .features-section .feature {
    min-height: auto !important;
    padding: 14px 9px !important;
  }

  .s-block--features__item svg,
  .s-block--features__item .sicon,
  .store-features svg,
  .store-features .sicon,
  .features-section svg,
  .features-section .sicon {
    width: 27px !important;
    height: 27px !important;
  }

  .s-block--features__item h3,
  .store-features h3,
  .features-section h3 {
    margin-top: 8px !important;
    font-size: 1rem !important;
  }

  .s-block--features__item p,
  .store-features p,
  .features-section p {
    font-size: 0.76rem !important;
  }

  .s-product-card-image,
  .product-entry__image,
  .product-card__image {
    padding: 8px !important;
  }

  .s-product-card-content,
  .product-entry__content,
  .product-card__content {
    min-height: 126px !important;
    padding: 10px !important;
  }

  .s-product-card-content-title,
  .s-product-card-content-title a,
  .product-entry__title,
  .product-card__title {
    min-height: 42px !important;
    font-size: 0.84rem !important;
    line-height: 1.62 !important;
  }

  .s-product-card-content-subtitle,
  .product-entry__subtitle,
  .product-card__subtitle {
    font-size: 0.75rem !important;
  }

  .s-product-card-price,
  .product-entry__price,
  .product-card__price {
    font-size: 1.05rem !important;
  }

  .s-button-primary,
  button.s-button-primary,
  salla-add-product-button button,
  .add-to-cart,
  .btn-primary {
    min-height: 40px !important;
    font-size: 0.83rem !important;
  }

  .store-footer__inner {
    padding-bottom: 72px !important;
  }
}

/* ==========================================================================
   17) ACCESSIBILITY & PERFORMANCE
   ========================================================================== */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid rgba(198, 161, 91, 0.75) !important;
  outline-offset: 2px !important;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}