/**
 * RTL overrides for Cozastore theme when an RTL language (e.g. Persian/fa, Arabic) is selected.
 * Loaded only when dir="rtl" on <html>.
 */

[dir="rtl"] {
  text-align: right;
  direction: rtl;
}

[dir="rtl"] body {
  text-align: right;
  direction: rtl;
  font-family: "Vazirmatn", Arial, sans-serif;
}

/* RTL: use Vazirmatn for all theme text (overrides Poppins from main.css) so product titles, prices, nav, buttons render correctly in Persian */
[dir="rtl"] .stext-101,
[dir="rtl"] .stext-102,
[dir="rtl"] .stext-103,
[dir="rtl"] .stext-104,
[dir="rtl"] .stext-105,
[dir="rtl"] .stext-106,
[dir="rtl"] .stext-107,
[dir="rtl"] .stext-108,
[dir="rtl"] .stext-109,
[dir="rtl"] .stext-110,
[dir="rtl"] .stext-111,
[dir="rtl"] .stext-112,
[dir="rtl"] .stext-113,
[dir="rtl"] .stext-114,
[dir="rtl"] .stext-115,
[dir="rtl"] .stext-116,
[dir="rtl"] .stext-117,
[dir="rtl"] .stext-301,
[dir="rtl"] .mtext-101,
[dir="rtl"] .mtext-102,
[dir="rtl"] .mtext-103,
[dir="rtl"] .mtext-104,
[dir="rtl"] .mtext-105,
[dir="rtl"] .mtext-106,
[dir="rtl"] .mtext-107,
[dir="rtl"] .mtext-108,
[dir="rtl"] .mtext-109,
[dir="rtl"] .mtext-110,
[dir="rtl"] .mtext-111,
[dir="rtl"] .mtext-112,
[dir="rtl"] .mtext-113,
[dir="rtl"] .ltext-101,
[dir="rtl"] .ltext-102,
[dir="rtl"] .ltext-103,
[dir="rtl"] .ltext-104,
[dir="rtl"] .ltext-105,
[dir="rtl"] .ltext-106,
[dir="rtl"] .ltext-107,
[dir="rtl"] .ltext-108,
[dir="rtl"] .ltext-109,
[dir="rtl"] .ltext-201,
[dir="rtl"] .ltext-202 {
  font-family: "Vazirmatn", Arial, sans-serif;
}

/* Ensure header and nav inherit RTL so menu items flow from the right */
[dir="rtl"] header,
[dir="rtl"] .wrap-menu-desktop,
[dir="rtl"] .limiter-menu-desktop,
[dir="rtl"] .menu-desktop,
[dir="rtl"] .main-menu {
  direction: rtl;
}

/* Top bar + header: Persian font (Vazirmatn) for all RTL/FA text */
[dir="rtl"] .top-bar,
[dir="rtl"] .top-bar .left-top-bar,
[dir="rtl"] .top-bar .right-top-bar,
[dir="rtl"] .top-bar .right-top-bar a,
[dir="rtl"] .top-bar .content-topbar,
[dir="rtl"] .top-bar select,
[dir="rtl"] .topbar-mobile .left-top-bar,
[dir="rtl"] .topbar-mobile .right-top-bar,
[dir="rtl"] .topbar-mobile .right-top-bar a,
[dir="rtl"] .topbar-mobile select {
  font-family: "Vazirmatn", Arial, sans-serif !important;
  font-weight: 500;
}

[dir="rtl"] .content-topbar.flex-sb-m {
  flex-direction: row-reverse;
}

/* Desktop nav (RTL): logo and menu on the RIGHT, icons on the LEFT.
   With direction:rtl + row, first child (logo) is on the right, then menu, then icons on the left. */
[dir="rtl"] .wrap-menu-desktop .limiter-menu-desktop {
  flex-direction: row !important;
  justify-content: flex-start !important; /* in RTL, flex-start = right edge */
}

[dir="rtl"] .wrap-menu-desktop .limiter-menu-desktop .logo {
  margin-right: 0 !important;
  margin-left: 55px !important; /* space between logo and menu (menu is to the left in RTL) */
}

/* FA/RTL: search, cart, and favorite icons on the left side of the header */
[dir="rtl"] .wrap-menu-desktop .limiter-menu-desktop .wrap-icon-header {
  flex-grow: 0 !important;
  margin-right: auto !important; /* push icon group to the visual left */
  direction: ltr;
  justify-content: flex-start;
}

/* Product detail page: description and fields use RTL font (Vazirmatn) */
[dir="rtl"] .product-detail-right .product-detail-short-desc,
[dir="rtl"] .product-detail-full-desc,
[dir="rtl"] .product-detail-tabs-content .stext-102,
[dir="rtl"] .product-detail-right .mtext-105,
[dir="rtl"] .product-detail-right .stext-102,
[dir="rtl"] .product-detail-right .mtext-102,
[dir="rtl"] .product-detail-right select.js-select2,
[dir="rtl"] .product-detail-right .rs1-select2,
[dir="rtl"] .product-detail-left .stext-102,
[dir="rtl"] .product-detail-left .mtext-101,
[dir="rtl"] .product-detail-left .mtext-106,
[dir="rtl"] .product-detail-left .mtext-104,
[dir="rtl"] .product-detail-left .num-product,
[dir="rtl"] .product-detail-left .stext-101,
[dir="rtl"] .product-detail-buy-block .stext-102,
[dir="rtl"] .product-detail-buy-block .mtext-101,
[dir="rtl"] .product-detail-buy-block .mtext-106,
[dir="rtl"] .product-detail-buy-block .stext-101,
[dir="rtl"] .product-detail-tabs-nav .product-detail-tab-btn,
[dir="rtl"] .product-detail-tabs-content .table {
  font-family: "Vazirmatn", Arial, sans-serif;
}

/* Default Persian font for menu (desktop + mobile) in RTL/FA mode */
[dir="rtl"] .main-menu,
[dir="rtl"] .main-menu a,
[dir="rtl"] .menu-desktop,
[dir="rtl"] .main-menu-m,
[dir="rtl"] .main-menu-m a {
  font-family: "Vazirmatn", Arial, sans-serif;
}

/* Menu items flow from the right (Home first) when dir=rtl - do NOT reverse; RTL direction handles it */
[dir="rtl"] .menu-desktop,
[dir="rtl"] .main-menu {
  flex-direction: row !important;
}

[dir="rtl"] .main-menu > li {
  padding: 20px 10px 20px 0 !important;
  margin: 0 4px 0 14px !important;
}

/* Sub-menu: open to the left in RTL */
[dir="rtl"] .sub-menu {
  left: auto;
  right: 100%;
}

[dir="rtl"] .main-menu > li > .sub-menu {
  left: auto;
  right: 0;
}

@media (max-width: 1300px) {
  [dir="rtl"] .main-menu > .respon-sub-menu .sub-menu {
    right: auto;
    left: 100%;
  }
  [dir="rtl"] .main-menu > .respon-sub-menu > .sub-menu {
    right: auto;
    left: 0;
  }
}

/* Icon header: badge position */
[dir="rtl"] .icon-header-noti::after {
  right: auto;
  left: 0;
}

/* Header cart: slide from left in RTL; offset so scrollbar doesn't overlap close button */
[dir="rtl"] .wrap-header-cart {
  right: auto;
  left: 0;
}

[dir="rtl"] .header-cart {
  right: auto;
  left: -400px;
  padding-left: 25px;
  padding-right: 65px;
}

[dir="rtl"] .show-header-cart .header-cart {
  right: auto;
  left: 17px; /* clear typical scrollbar width so close (X) is not cut off */
}

[dir="rtl"] .header-cart-item-img {
  margin-right: 0;
  margin-left: 20px;
}

[dir="rtl"] .header-cart-item-txt {
  text-align: right;
}

/* Modal search */
[dir="rtl"] .modal-search-header {
  left: auto;
  right: 0;
}

[dir="rtl"] .container-search-header {
  text-align: right;
}

/* Flex utilities: swap start/end in RTL */
[dir="rtl"] .flex-w {
  /*flex-direction: row-reverse;*/
}

[dir="rtl"] .wrap-search-header.flex-w {
  flex-direction: row-reverse;
}

[dir="rtl"] .header-cart-buttons.flex-w {
  flex-direction: row-reverse;
}

/* Padding/margin utilities used in header/footer - swap L/R for common ones */
[dir="rtl"] .p-l-22 { padding-left: 0 !important; padding-right: 22px !important; }
[dir="rtl"] .p-r-11 { padding-right: 11px !important; padding-left: 11px !important; }
[dir="rtl"] .p-l-65 { padding-left: 0 !important; padding-right: 65px !important; }
[dir="rtl"] .p-r-25 { /*padding-right: 0 !important;*/ padding-left: 25px !important; }
[dir="rtl"] .p-lr-25 { padding-left: 25px !important; padding-right: 25px !important; }
[dir="rtl"] .p-lr-15 { padding-left: 15px !important; padding-right: 15px !important; }
[dir="rtl"] .m-r-8 { margin-right: 0 !important; margin-left: 8px !important; }
[dir="rtl"] .m-r-16 { margin-right: 0 !important; margin-left: 16px !important; }
[dir="rtl"] .m-r-20 { margin-right: 0 !important; margin-left: 20px !important; }
[dir="rtl"] .m-r-32 { margin-right: 0 !important; margin-left: 32px !important; }
[dir="rtl"] .m-l-2 { margin-left: 0 !important; margin-right: 2px !important; }
[dir="rtl"] .m-l-63 { margin-left: 0 !important; margin-right: 63px !important; }
[dir="rtl"] .m-lr-0-xl { margin-left: 0 !important; margin-right: 0 !important; }
[dir="rtl"] .p-r-50 { padding-right: 0 !important; padding-left: 50px !important; }
[dir="rtl"] .p-l-25 { padding-left: 0 !important; padding-right: 25px !important; }
[dir="rtl"] .p-r-30 { padding-right: 0 !important; padding-left: 30px !important; }
[dir="rtl"] .p-lr-38 { padding-left: 38px !important; padding-right: 38px !important; }
[dir="rtl"] .p-lr-40 { padding-left: 40px !important; padding-right: 40px !important; }
[dir="rtl"] .p-b-4.p-l-100 { padding-left: 0 !important; padding-right: 100px !important; }
[dir="rtl"] .p-r-10 { padding-right: 0 !important; padding-left: 10px !important; }
[dir="rtl"] .m-r-5 { margin-right: 0 !important; margin-left: 5px !important; }
[dir="rtl"] .m-all-1 { margin: 0 1px 0 0 !important; }

/* Block2 product (wishlist icon, text) */
[dir="rtl"] .block2-txt-child2 {
  margin-left: 0;
  margin-right: auto;
}

[dir="rtl"] .flex-t .block2-txt-child1 {
  text-align: right;
}

/* Footer columns and payment icons */
[dir="rtl"] .flex-c-m.flex-w.p-b-18 {
  flex-direction: row-reverse;
}

[dir="rtl"] .txt-center {
  text-align: center;
}

/* Home slider: in FA/RTL show text and button on the left side */
[dir="rtl"] .section-slide .item-slick1 .container.h-full {
  display: flex;
  justify-content: flex-end; /* in RTL, flex-end = visual left */
}
[dir="rtl"] .section-slide .item-slick1 .flex-col-l-m {
  direction: ltr;
  text-align: left;
  align-items: flex-start;
}

/* Slick arrows (already handled by vendor slick-theme [dir='rtl']) - ensure our overrides don't break them */
[dir="rtl"] .slick-prev {
  left: auto;
  right: 0;
}

[dir="rtl"] .slick-next {
  right: auto;
  left: 0;
}

/* Back to top button */
[dir="rtl"] .btn-back-to-top {
  right: auto;
  left: 15px;
}

/* Breadcrumb: RTL flow (general on right, product on left) */
[dir="rtl"] .breadcrumb {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  direction: rtl;
  text-align: right;
}

[dir="rtl"] .breadcrumb-item {
  float: none;
}

[dir="rtl"] .breadcrumb-item + .breadcrumb-item::before {
  content: " > ";
  padding-right: 0.35rem;
  padding-left: 0.35rem;
}

/* Form elements: text align */
[dir="rtl"] input.plh3,
[dir="rtl"] input.stext-111,
[dir="rtl"] textarea.stext-111 {
  text-align: right;
}

[dir="rtl"] .wrap-input1 .input1 {
  text-align: right;
}

/* Product detail: three columns (right = name/desc/variants, center = images, left = seller/price/cart) */
[dir="rtl"] .product-detail-three-cols {
  direction: rtl;
}

[dir="rtl"] .product-detail-right {
  text-align: right;
}

[dir="rtl"] .product-detail-left .product-detail-buy-block {
  padding-left: 0;
  padding-right: 1.5rem;
  text-align: right;
}

[dir="rtl"] .product-detail-left .flex-w.flex-r-m {
  flex-direction: row-reverse;
}

[dir="rtl"] .product-detail-left .wrap-num-product {
  margin-right: 0;
  margin-left: 1rem;
}

/* Product detail tabs: RTL */
[dir="rtl"] .product-detail-tabs-nav {
  flex-direction: row;
}

[dir="rtl"] .product-detail-tab-btn.active {
  border-bottom: 2px solid #222;
  border-right: none;
  border-left: none;
}

/*------------------------------------------------------------------
  Reviews tab: Cozastore style layout for RTL
-------------------------------------------------------------------*/
[dir="rtl"] .product-detail-reviews-wrap,
[dir="rtl"] #tab-reviews {
  direction: rtl;
  text-align: right;
}

/* Avatar on the right in RTL: row + rtl puts first child (avatar) at start = right */
[dir="rtl"] .product-detail-review-item {
  flex-direction: row;
  direction: rtl;
  text-align: right;
}

[dir="rtl"] .product-detail-review-avatar-wrap {
  margin-right: 0;
  margin-left: 1.25rem;
}

[dir="rtl"] .product-detail-review-body,
[dir="rtl"] .product-detail-review-body p {
  text-align: right;
}

[dir="rtl"] .product-detail-review-meta {
  flex-direction: row-reverse;
}

[dir="rtl"] .product-detail-review-form-stars {
  direction: ltr;
}

[dir="rtl"] .review-form-cozastore textarea,
[dir="rtl"] .review-form-cozastore .review-form-label,
[dir="rtl"] .review-form-cozastore .review-form-input {
  text-align: right;
}

[dir="rtl"] .review-form-name-email {
  flex-direction: row-reverse;
}

/* Product detail meta bar (SKU, Categories) RTL */
[dir="rtl"] .product-detail-meta-bar-inner {
  flex-direction: row-reverse;
  text-align: right;
}

/* Related products section RTL */
[dir="rtl"] .product-detail-related-title {
  text-align: center;
}

/* Product rating summary RTL */
[dir="rtl"] .product-detail-rating-summary .m-l-5,
[dir="rtl"] .product-detail-rating-summary-inline .m-l-5 {
  margin-left: 0;
  margin-right: 0.3rem;
}

