/* Olimo 1 / v1.3.0 — unified brand and UI design system. */
:root{
  --olimo-primary:#8D2BF4;
  --olimo-primary-dark:#7119DA;
  --olimo-purple-light:#F3EAFF;
  --olimo-purple-soft:#F8F4FF;
  --olimo-blue:#259BE2;
  --olimo-blue-light:#EAF7FF;
  --olimo-dark:#101B3D;
  --olimo-heading:#292930;
  --olimo-text:#676B7A;
  --olimo-muted:#858896;
  --olimo-bg:#FFFFFF;
  --olimo-bg-secondary:#F8F9FC;
  --olimo-bg-soft:#F6F7FB;
  --olimo-border:#E8E9EF;
  --olimo-border-light:#F0F0F4;
  --olimo-success:#22B966;
  --olimo-danger:#EF535B;
  --olimo-warning:#FF9B3F;
  --olimo-gradient:linear-gradient(135deg,#8D2BF4 0%,#7A2BEE 45%,#259BE2 100%);
  --olimo-gradient-purple:linear-gradient(135deg,#9B3BFA 0%,#7D25EE 100%);
  --olimo-gradient-soft:linear-gradient(135deg,#FBF9FF 0%,#F7F8FC 50%,#F5FAFF 100%);
  --olimo-shadow-sm:0 5px 20px rgba(31,27,55,.04);
  --olimo-shadow-md:0 10px 30px rgba(31,27,55,.06);
  --olimo-shadow-purple:0 10px 28px rgba(141,43,244,.15);
  --olimo-radius-sm:8px;
  --olimo-radius-input:12px;
  --olimo-radius-card:16px;
  --olimo-radius-lg:20px;
  --olimo-radius-section:24px;
  --olimo-radius-pill:999px;
  --olimo-font-family:'YekanBakhFaNum',Tahoma,Arial,sans-serif;

  /* Compatibility aliases retained for existing theme modules. */
  --olimo-navy:var(--olimo-dark);
  --olimo-dark-700:var(--olimo-heading);
  --olimo-dark-600:var(--olimo-text);
  --olimo-gray-300:var(--olimo-text);
  --olimo-gray-200:var(--olimo-muted);
  --olimo-gray-100:#A0A1AA;
  --olimo-gray-50:#B2B4BD;
  --olimo-light:var(--olimo-bg-secondary);
  --olimo-primary-light:var(--olimo-primary-dark);
  --olimo-white:var(--olimo-bg);
  --olimo-purple:var(--olimo-primary);
  --olimo-red-shadow:var(--olimo-shadow-purple);
  --olimo-gray-shadow:var(--olimo-shadow-sm);
}

::selection{background:var(--olimo-purple-light);color:var(--olimo-dark)}
html,body{background:var(--olimo-gradient-soft);color:var(--olimo-text);font-family:var(--olimo-font-family)}
body,button,input,select,textarea{font-family:var(--olimo-font-family)}
body h1,body h2,body h3,body h4,body h5,body h6{color:var(--olimo-dark)}
body p{color:var(--olimo-text)}
body a{transition:color .25s ease,background-color .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease}
body .entry-content a:not(.button):not(.olimo-button),body .olimo-post-content a:not(.button):not(.olimo-button){color:var(--olimo-primary);text-decoration:none}
body .entry-content a:not(.button):not(.olimo-button):hover,body .olimo-post-content a:not(.button):not(.olimo-button):hover{color:var(--olimo-primary-dark)}

/* Header / navigation */
body .olimo-site-header{background:rgba(255,255,255,.96);border-bottom:1px solid var(--olimo-border-light);box-shadow:none;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
body .olimo-header-main{background:transparent}
body .olimo-primary-menu>li>a,body .olimo-menu-fallback>li>a{color:var(--olimo-dark)}
body .olimo-primary-menu>li:hover>a,body .olimo-primary-menu>li.current-menu-item>a,body .olimo-primary-menu>li.current-menu-ancestor>a{color:var(--olimo-primary)}
body .olimo-primary-menu>li.current-menu-item>a,body .olimo-primary-menu>li.current-menu-ancestor>a{background:#F5EDFF;border-radius:10px}
body .olimo-primary-menu>li.current-menu-item>a::after,body .olimo-primary-menu>li.current-menu-ancestor>a::after{background:var(--olimo-primary)}
body .olimo-primary-menu .sub-menu{background:#fff;border:1px solid var(--olimo-border);border-radius:16px;box-shadow:var(--olimo-shadow-md)}
body .olimo-primary-menu .sub-menu a{color:var(--olimo-dark)}
body .olimo-primary-menu .sub-menu a:hover{background:var(--olimo-purple-soft);color:var(--olimo-primary)}
body .olimo-account-link,body .olimo-mobile-toggle{background:var(--olimo-bg-secondary);border:1px solid var(--olimo-border);color:var(--olimo-dark);box-shadow:none}
body .olimo-account-link:hover,body .olimo-mobile-toggle:hover{background:var(--olimo-purple-soft);color:var(--olimo-primary)}
body .olimo-header-cart-icon{color:var(--olimo-dark)}
body .olimo-header-cart:hover .olimo-header-cart-icon{color:var(--olimo-primary);background:var(--olimo-purple-soft)}
body .olimo-cart-count{background:var(--olimo-primary);color:#fff;border-color:#fff}
body .olimo-header-search input[type=search],body .olimo-mobile-search input{background:#F5F6FA;border:1px solid transparent;color:var(--olimo-dark);border-radius:14px}
body .olimo-header-search input[type=search]::placeholder,body .olimo-mobile-search input::placeholder{color:#A0A1AA}
body .olimo-header-search input[type=search]:focus,body .olimo-mobile-search input:focus{background:#fff;border-color:rgba(141,43,244,.30);box-shadow:0 0 0 4px rgba(141,43,244,.06);outline:none}
body .olimo-mobile-drawer{background:#fff;box-shadow:-20px 0 60px rgba(31,27,55,.10)}
body .olimo-mobile-menu a{color:var(--olimo-dark);border-color:var(--olimo-border-light)}
body .olimo-mobile-menu a:hover,body .olimo-mobile-menu .current-menu-item>a{color:var(--olimo-primary);background:var(--olimo-purple-soft)}
body .olimo-overlay{background:rgba(16,27,61,.28);backdrop-filter:blur(4px)}

/* Cards, sections and surfaces */
body .olimo-product-card,body .woocommerce ul.products li.product,body .olimo-home-category-card,body .olimo-category-card,body .olimo-blog-card,body .olimo-post-card,body .olimo-info-card,body .olimo-contact-card,body .olimo-faq-item,body .olimo-about-card,body .olimo-wishlist-card,body .olimo-wishlist-empty{background:#fff;border:1px solid var(--olimo-border);border-radius:18px;box-shadow:0 8px 30px rgba(26,24,50,.04)}
body .olimo-product-card:hover,body .woocommerce ul.products li.product:hover,body .olimo-home-category-card:hover,body .olimo-category-card:hover,body .olimo-blog-card:hover,body .olimo-post-card:hover{transform:translateY(-4px);border-color:rgba(141,43,244,.22);box-shadow:0 14px 35px rgba(42,31,80,.08)}
body .olimo-home-section,body .olimo-shop-section{background:#fff}

/* Buttons */
body .olimo-button-primary,body .woocommerce a.button.alt,body .woocommerce button.button.alt,body .woocommerce input.button.alt,body #place_order,body .checkout-button,body .single_add_to_cart_button,body .olimo-account-primary-action{background:var(--olimo-gradient-purple);color:#fff;border:0;border-radius:13px;box-shadow:0 8px 22px rgba(141,43,244,.18);transition:transform .25s ease,box-shadow .25s ease}
body .olimo-button-primary:hover,body .woocommerce a.button.alt:hover,body .woocommerce button.button.alt:hover,body .woocommerce input.button.alt:hover,body #place_order:hover,body .checkout-button:hover,body .single_add_to_cart_button:hover,body .olimo-account-primary-action:hover{background:var(--olimo-gradient-purple);color:#fff;transform:translateY(-2px);box-shadow:0 12px 28px rgba(141,43,244,.24)}
body .olimo-button-secondary,body .olimo-button-light,body .olimo-button-outline{background:#fff;border:1px solid var(--olimo-primary);color:var(--olimo-dark);border-radius:12px;box-shadow:none}
body .olimo-button-secondary:hover,body .olimo-button-light:hover,body .olimo-button-outline:hover{background:var(--olimo-purple-soft);color:var(--olimo-primary)}
body .olimo-button-ghost{background:var(--olimo-bg-secondary);border:0;color:var(--olimo-dark);border-radius:12px}

/* Forms */
body input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),body textarea,body select{background:#fff;border:1px solid #E5E7ED;border-radius:12px;color:var(--olimo-dark)}
body textarea{border-radius:14px}
body input::placeholder,body textarea::placeholder{color:#A0A1AA}
body input:focus,body textarea:focus,body select:focus{border-color:var(--olimo-primary);box-shadow:0 0 0 4px rgba(141,43,244,.07);outline:none}
body .olimo-search-results,body .olimo-live-search-results,body .olimo-header-mini-cart{background:#fff;border:1px solid var(--olimo-border);border-radius:18px;box-shadow:var(--olimo-shadow-md)}

/* Product cards */
body .olimo-product-card-title h3,body .woocommerce ul.products li.product .woocommerce-loop-product__title{color:var(--olimo-dark)}
body .olimo-product-card .price,body .woocommerce ul.products li.product .price,body .olimo-product-card-price{color:var(--olimo-primary)}
body .olimo-product-card .price del,body .woocommerce ul.products li.product .price del{color:#EF777D}
body .onsale,body .olimo-sale-badge,body .olimo-product-sale-badge{background:var(--olimo-primary)!important;color:#fff!important}
body .stock.out-of-stock,body .olimo-out-of-stock{background:#F2F2F5;color:var(--olimo-muted)}
body .olimo-product-card-cart{background:var(--olimo-blue-light);color:var(--olimo-dark);box-shadow:none}
body .olimo-product-card-cart:hover{background:var(--olimo-primary);color:#fff}
body .olimo-wishlist-button,body .olimo-product-card-heart{background:#fff;color:var(--olimo-dark);border-color:var(--olimo-border)}
body .olimo-wishlist-button:hover,body .olimo-product-card-heart:hover,body .olimo-wishlist-button.is-active,body .olimo-product-card-heart.is-active{background:var(--olimo-purple-soft);color:var(--olimo-primary);border-color:rgba(141,43,244,.22)}

/* WooCommerce states */
body .woocommerce-message{background:#F2FCF7;border-color:#CDEEDD;color:#188753}
body .woocommerce-error{background:#FFF5F5;border-color:#FFDADA;color:#D83D46}
body .woocommerce-info{background:#F3F9FF;border-color:#D5ECFF;color:#237EB8}
body.woocommerce-checkout .woocommerce-checkout-review-order,body.woocommerce-checkout .olimo-checkout-card{background:#FAFAFC;border:1px solid var(--olimo-border);border-radius:18px}
body.woocommerce-checkout form.checkout>div,body.woocommerce-cart .cart_totals{border-color:var(--olimo-border)}
body .woocommerce-MyAccount-navigation a{background:#fff;color:#60626D}
body .woocommerce-MyAccount-navigation .is-active a{background:var(--olimo-purple-light);color:var(--olimo-primary);border-color:var(--olimo-primary)}
body.woocommerce-account .woocommerce-MyAccount-content,body .olimo-account-panel{background:#fff;border-color:var(--olimo-border);border-radius:16px;box-shadow:var(--olimo-shadow-sm)}

/* Pagination / sliders */
body .woocommerce nav.woocommerce-pagination ul li a,body .woocommerce nav.woocommerce-pagination ul li span,body .olimo-pagination a,body .olimo-pagination span{background:#fff;border-color:var(--olimo-border);color:#676975}
body .woocommerce nav.woocommerce-pagination ul li span.current,body .olimo-pagination .current{background:var(--olimo-primary);color:#fff}
body .woocommerce nav.woocommerce-pagination ul li a:hover,body .olimo-pagination a:hover{background:#fff;border-color:var(--olimo-primary);color:var(--olimo-primary)}
body .swiper-button-next,body .swiper-button-prev,body .olimo-slider-arrow{background:var(--olimo-purple-light);color:var(--olimo-primary)}
body .swiper-button-next:hover,body .swiper-button-prev:hover,body .olimo-slider-arrow:hover{background:var(--olimo-primary);color:#fff}

/* Modal / popup / offcanvas */
body .olimo-modal,body .olimo-modal-panel,body .olimo-bottom-sheet,body .olimo-contact-sheet-box,body .olimo-popup-content,body #custom-thank-you-popup{background:#fff;border:1px solid var(--olimo-border);border-radius:20px;color:var(--olimo-text);box-shadow:0 20px 60px rgba(31,27,55,.12)}
body .olimo-modal-overlay,body .olimo-sheet-overlay,body .olimo-popup-overlay,body #custom-thank-you-overlay{background:rgba(16,27,61,.28);backdrop-filter:blur(4px)}

/* Footer */
.olimo-site-footer{margin-top:56px;background:#fff;border-top:1px solid var(--olimo-border);color:var(--olimo-text)}
.olimo-footer-inner{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:42px 0 22px}
.olimo-footer-main{display:flex;align-items:flex-start;justify-content:space-between;gap:40px}
.olimo-footer-links-wrap h3{margin:0 0 16px;color:var(--olimo-dark);font-size:18px;font-weight:900}
.olimo-footer-links{display:flex;flex-wrap:wrap;gap:10px 24px;max-width:720px}
.olimo-footer-links a{color:#676975;font-size:14px}
.olimo-footer-links a:hover{color:var(--olimo-primary)}
.olimo-enamad{flex:0 0 auto;min-width:110px;text-align:center}
.olimo-enamad img{max-width:110px;max-height:120px;object-fit:contain;margin:auto}
.olimo-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding:22px 0;border-top:1px solid var(--olimo-border-light);border-bottom:1px solid var(--olimo-border-light)}
.olimo-footer-copy{color:#72747E;font-size:13px}
.olimo-footer-store-link{display:inline-flex;align-items:center;gap:7px;color:var(--olimo-dark);font-size:13px;font-weight:800}
.olimo-footer-store-link:hover{color:var(--olimo-primary)}
.olimo-footer-store-link svg{width:18px;height:18px}
.olimo-footer-credit{padding-top:18px;text-align:center;color:var(--olimo-muted);font-size:12px}
.olimo-footer-credit a{color:var(--olimo-primary);font-weight:800}
.olimo-footer-backtop{position:fixed;left:20px;bottom:86px;z-index:30;width:42px;height:42px;border:1px solid var(--olimo-border);border-radius:50%;background:#fff;color:var(--olimo-primary);box-shadow:var(--olimo-shadow-sm);cursor:pointer}

/* Mobile navigation */
body .olimo-mobile-bottom-nav{background:#fff;border-color:var(--olimo-border-light);backdrop-filter:blur(14px)}
body .olimo-mobile-bottom-nav a,body .olimo-mobile-bottom-nav button{color:#6F7180}
body .olimo-mobile-bottom-nav .is-active,body .olimo-mobile-bottom-nav [aria-current=page]{color:var(--olimo-primary)}

/* WordPress login */
body.login{background:var(--olimo-gradient-soft);color:var(--olimo-text)}
body.login form{background:#fff;border-color:var(--olimo-border);box-shadow:var(--olimo-shadow-sm)}

@media(max-width:700px){
  .olimo-site-footer{margin-top:38px}
  .olimo-footer-inner{width:min(100% - 24px,1180px);padding-top:30px}
  .olimo-footer-main{flex-direction:column}
  .olimo-footer-links{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:12px 16px}
  .olimo-footer-bottom{align-items:flex-start;flex-direction:column}
  .olimo-enamad{align-self:center}
  .olimo-footer-backtop{bottom:92px;left:14px}
}

/* v1.4.0 — unavailable products, breadcrumb spacing and back-to-top refinement. */
body .olimo-product-card-cart.is-disabled,
body .olimo-product-card-cart.is-disabled:hover{
  background:#F2F2F5;
  color:#858896;
  border:1px solid var(--olimo-border,#E8E9EF);
  box-shadow:none;
  transform:none;
}
body.olimo-outofstock-grayscale .olimo-product-card.is-out-of-stock .olimo-product-card-image img{
  filter:grayscale(1);
  opacity:.84;
}
body.olimo-outofstock-grayscale.single-product .product.outofstock .olimo-product-gallery-column .woocommerce-product-gallery img{
  filter:grayscale(1);
}
nav.woocommerce-breadcrumb.olimo-breadcrumb{
  padding-top:12px;
  padding-bottom:12px;
}
.olimo-footer-backtop{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  padding:0;
  border:0;
  border-radius:50%;
  background:var(--olimo-gradient-purple);
  color:#fff;
  box-shadow:0 10px 28px rgba(141,43,244,.20);
  transition:transform .22s ease,box-shadow .22s ease;
}
.olimo-footer-backtop:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(141,43,244,.28)}
.olimo-footer-backtop svg{width:22px;height:22px;display:block}
.olimo-footer-backtop:focus-visible{outline:0;box-shadow:0 0 0 4px rgba(141,43,244,.13),0 10px 28px rgba(141,43,244,.20)}
.olimo-footer-backtop{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px)}
.olimo-footer-backtop.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.olimo-footer-backtop.is-visible:hover{transform:translateY(-3px)}
