/* ==========================================================================
   ABZARBIN v4.2.0 — Responsive Master Layer
   لایه نهایی ریسپانسیو — بعد از همه فایل‌های CSS لود می‌شود و برنده است.
   بریک‌پوینت‌های یکپارچه: 1400 / 1200 / 992 / 768 / 576 / 480
   ========================================================================== */

/* --------------------------------------------------------------------------
   0-α. v4.4.0 — خنثی‌سازی کامل سیستم float قدیمی «has-sidebar»
   --------------------------------------------------------------------------
   این سیستم (main.css/rtl.css) محتوای #primary را با float:right و عرض ۷۵٪
   به یک سمت صفحه هل می‌داد (صفحات داخلی دیگر وسط‌چین نبودند) و #secondary
   را — که در قالب جدید نوشته تکی داخل ستون گرید ۳۲۰px است — به ۲۵٪ یعنی
   ~۸۰px (۲ سانتی‌متر) فشرده می‌کرد. هرچند functions.php دیگر این کلاس را
   صادر نمی‌کند، این لایه برای اطمینان کامل (کش مرورگر/افزونه صفحه‌ساز/
   کلاس‌های باقی‌مانده) آن را خنثی می‌کند. این فایل آخرین CSS لودشونده است.
   -------------------------------------------------------------------------- */
.has-sidebar #primary,
.has-sidebar #secondary {
    float: none;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}
.has-sidebar #content::after { content: none; }

/* --------------------------------------------------------------------------
   0-β. v4.4.0 — وسط‌چینی یکسان همه صفحات داخلی (به‌جز صفحه اصلی)
   --------------------------------------------------------------------------
   همه کانتینرهای محتوا (ry-wrap / bzb-wrap) با حاشیه مساوی از چپ و راست
   دقیقاً در مرکز قرار می‌گیرند؛ padding هماهنگ (۲۸px دسکتاپ تا ۱۶px موبایل)
   تا هیچ متنی به لبه صفحه نچسبد و فاصله دو سمت همیشه برابر باشد.
   -------------------------------------------------------------------------- */
body:not(.abzarbin-home) #page .ry-wrap,
body:not(.abzarbin-home) #page .bzb-wrap {
    margin-inline: auto;
    padding-inline: clamp(16px, 2.2vw, 28px);
}

:root {
    /* Unified breakpoint-ready tokens */
    --abz-green: #198754;
    --abz-green-dark: #157347;
    --abz-red: #ef4444;
    --abz-orange: #ff6a00;
    --abz-ink: #12181d;
    --abz-line: #d8dee2;
    --abz-paper: #f4f6f7;
    --abz-radius: 16px;
    --abz-toolbar-h: 64px; /* mobile bottom toolbar height */
}

/* --------------------------------------------------------------------------
   0. پایه — فونت سیال، بهبود خوانایی، اسکرول
   -------------------------------------------------------------------------- */
html { -webkit-text-size-adjust: 100%; }

body,
body.home,
body.woocommerce {
    font-size: 15px;
    line-height: 1.8;
    overflow-x: hidden;
    word-wrap: break-word;
}

/* متن‌های خیلی طولانی در کارت‌ها نچینند */
.ry-cart-item-title,
.workshop-product h3,
.pcm-title,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    overflow-wrap: break-word;
    word-break: break-word;
}

/* اعداد فارسی همیشه درست نمایش داده شوند */
.workshop-price,
.workshop-new,
.workshop-old,
.pcm-price,
.woocommerce-Price-amount {
    font-feature-settings: "ss01" 1, "ss02" 1;
}

/* کنار عنوان سکشن — تایمر و لینک */
.workshop-head-side {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
}
@media (max-width: 768px) {
    .workshop-head-side { align-items: stretch; width: 100%; }
    .workshop-head-side .workshop-link { width: 100%; justify-content: center; margin-top: 0 !important; }
}

/* ردیف نشان‌های اعتماد فوتر */
.ry-footer-badges-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 14px 0 18px;
}

/* قیمت قدیمی — خواناتر */
.workshop-old {
    font-size: 11.5px !important;
    margin-bottom: 2px;
}
.workshop-new { font-size: 16.5px; }

/* حذف مشکل زوم دوباره‌ی iOS روی اینپوت‌ها */
input[type="text"], input[type="search"], input[type="email"],
input[type="tel"], input[type="url"], input[type="password"],
input[type="number"], select, textarea {
    font-size: 16px; /* iOS zoom fix — در موبایل حداقل 16px */
}
@media (min-width: 768px) {
    input[type="text"], input[type="search"], input[type="email"],
    input[type="tel"], input[type="url"], input[type="password"],
    input[type="number"], select, textarea {
        font-size: 14px;
    }
}

/* انتخاب متن با رنگ برند */
::selection { background: rgba(255, 106, 0, 0.18); }

/* اسکرول‌بار ظریف */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #eef1f3; }
::-webkit-scrollbar-thumb { background: #c3ccd2; border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: #a8b3ba; }

/* --------------------------------------------------------------------------
   1. هدر — چسبان (Sticky) + بهبودها
   -------------------------------------------------------------------------- */
#page.ry-v5 .ry-header {
    position: sticky;
    top: 0;
    z-index: 990;
    transition: box-shadow 0.25s ease;
}

/* توپ‌بار هنگام اسکرول جمع می‌شود (فقط دسکتاپ) */
@media (min-width: 993px) {
    body.abz-scrolled #page.ry-v5 .ry-topbar {
        position: relative;
        margin-bottom: -38px;
        transform: translateY(-100%);
        opacity: 0;
        pointer-events: none;
        transition: transform 0.3s ease, opacity 0.3s ease;
    }
}

/* دکمه همبرگری — v4.3.0 اصلاح بحرانی:
   در دسکتاپ هرگز نمایش داده نمی‌شود (display:none سراسری).
   فقط در موبایل/تبلت (۹۹۲px به پایین) inline-flex می‌شود.
   باگ قبلی: این قانون بدون مدیاکوئری display:none هدر را له می‌کرد
   و همبرگری در دسکتاپ هم دیده می‌شد. */
#page.ry-v5 .ry-menu-toggle {
    display: none;
    width: 46px;
    height: 46px;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    font-size: 18px;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease;
}
#page.ry-v5 .ry-menu-toggle:hover { background: #eef1f3; }
@media (max-width: 992px) {
    #page.ry-v5 .ry-menu-toggle { display: inline-flex; }
}

/* دکمه‌های حساب/سبد/جستجو — v5.4.2: اندازه دقیق parsacabin (۴۲×۴۲) */
#page.ry-v5 .ry-action {
    min-width: 42px;
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

/* شمارنده سبد خرید — همیشه خوانا */
.ry-action-count {
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    font-size: 11px;
    font-weight: 800;
    line-height: 20px;
    text-align: center;
}

/* فیلد جستجو — حداقل ارتفاع لمسی */
#page.ry-v5 .ry-search-form { min-height: 48px; }

/* --------------------------------------------------------------------------
   1-ب. رفع اسکرول افقی موبایل (v4.3.0) — هدر دو ردیفه استاندارد
   علت باگ ۵۹۲px: در موبایل ردیف هدر (تاگل + لوگو + جستجو + اکشن‌ها)
   هم‌زمان در یک ردیف flex بودند و چون فیلد جستجو عرض درونی ~۲۴۰px دارد،
   ردیف بیرون می‌زد. راه‌حل: جستجو به ردیف دوم تمام‌عرض می‌رود.
   -------------------------------------------------------------------------- */
#page.ry-v5 .ry-search { min-width: 0; }
#page.ry-v5 .ry-search-form { min-width: 0; }
#page.ry-v5 .ry-search-field { min-width: 0; width: 100%; }

@media (max-width: 992px) {
    #page.ry-v5 .ry-header-main {
        flex-wrap: wrap;
        gap: 10px 12px;
    }
    #page.ry-v5 .ry-search {
        order: 50;
        flex-basis: 100%;
        flex-grow: 1;
        max-width: 100%;
    }
    #page.ry-v5 .ry-actions { margin-inline-start: auto; }
}

/* حذف قطعی اسکرول افقی در موبایل/تبلت — قفل عمومی (v4.3.0) */
@media (max-width: 992px) {
    html, body { overflow-x: clip; max-width: 100vw; }
    #page.ry-v5 .ry-shell-container,
    #page.ry-v5 .container { max-width: 100%; }
    img, video, iframe, table { max-width: 100% !important; }
    .wp-container { max-width: 100%; }
}

/* --------------------------------------------------------------------------
   2. تیکر اطلاع‌رسانی (پیام‌های چرخشی توپ‌بار)
   -------------------------------------------------------------------------- */
.ry-ticker {
    position: relative;
    overflow: hidden;
    flex: 1;
    min-width: 0;
    max-width: 560px;
    height: 22px;
}
.ry-ticker-item {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.4s ease, transform 0.4s ease;
    pointer-events: none;
}
.ry-ticker-item.is-active {
    opacity: 1;
    transform: translateY(0);
}
.ry-ticker-item i { color: var(--abz-orange); }
@media (max-width: 768px) {
    .ry-ticker { max-width: 100%; height: 20px; }
}

/* --------------------------------------------------------------------------
   3. پنل‌های موبایل / سبد خرید — رفع باگ 100vw و عرض صحیح
   -------------------------------------------------------------------------- */
#page.ry-v5 .ry-cart-panel,
#page.ry-v5 .ry-mobile-panel {
    max-width: 100vw;
    will-change: transform;
}
@media (max-width: 768px) {
    #page.ry-v5 .ry-cart-panel,
    #page.ry-v5 .ry-mobile-panel {
        width: 100%;
        max-width: 100%;
        border-radius: 0;
    }
}
@media (min-width: 769px) {
    #page.ry-v5 .ry-cart-panel { width: 420px; }
    #page.ry-v5 .ry-mobile-panel { width: 380px; }
}

/* آیتم‌های سبد — ریسپانسیو */
.ry-cart-item {
    display: grid;
    grid-template-columns: 72px 1fr;
    gap: 12px;
    align-items: center;
}
@media (max-width: 480px) {
    .ry-cart-item { grid-template-columns: 60px 1fr; gap: 10px; }
    .ry-cart-item-img img { width: 60px !important; height: 60px !important; }
    .ry-cart-item-title { font-size: 13px; }
    .ry-cart-btn { padding: 12px 14px; font-size: 13px; }
    .ry-cart-total { font-size: 15px; }
}

/* دکمه‌های پنل سبد — تمام عرض در موبایل */
@media (max-width: 480px) {
    .ry-cart-buttons {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }
    .ry-cart-btn { text-align: center; justify-content: center; }
}

/* زیرمنوی موبایل — هدف لمسی بزرگتر */
.ry-mobile-panel .menu-item a {
    min-height: 46px;
    display: flex;
    align-items: center;
    font-size: 14.5px;
}
.ry-mobile-toggle-sub {
    width: 42px !important;
    height: 42px !important;
}

/* --------------------------------------------------------------------------
   4. تولبار پایین موبایل (خانه / دسته‌بندی / جستجو / سبد / حساب)
   فقط در موبایل نمایش داده می‌شود — الگوی asrtools
   -------------------------------------------------------------------------- */
.abz-mobile-toolbar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 980;
    background: #fff;
    border-top: 1px solid var(--abz-line);
    box-shadow: 0 -8px 28px rgba(18, 24, 29, 0.10);
    display: none;
    padding-bottom: env(safe-area-inset-bottom, 0);
    direction: rtl;
}
.abz-mobile-toolbar ul {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    list-style: none;
    margin: 0;
    padding: 0;
    height: var(--abz-toolbar-h);
}
.abz-mobile-toolbar a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    height: 100%;
    color: #5b6870;
    font-size: 10px;
    font-weight: 700;
    text-decoration: none;
    position: relative;
    transition: color 0.2s ease;
    -webkit-tap-highlight-color: transparent;
}
.abz-mobile-toolbar a i { font-size: 19px; }
.abz-mobile-toolbar a.is-active,
.abz-mobile-toolbar a:hover { color: var(--abz-orange); }
.abz-mobile-toolbar .abz-tb-badge {
    position: absolute;
    top: 7px;
    inset-inline-start: calc(50% + 8px);
    min-width: 17px;
    height: 17px;
    padding: 0 4px;
    background: var(--abz-red);
    color: #fff;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    line-height: 17px;
    text-align: center;
}
@media (max-width: 992px) {
    .abz-mobile-toolbar { display: block; }
    /* فضای خالی پایین صفحه تا محتوا زیر تولبار پنهان نشود */
    body:not(.woocommerce-checkout) #colophon.ry-footer { padding-bottom: calc(var(--abz-toolbar-h) + 12px + env(safe-area-inset-bottom, 0)); }
    /* دکمه بازگشت به بالا بالای تولبار */
    #ry-back-to-top { bottom: calc(var(--abz-toolbar-h) + 18px) !important; }
}

/* --------------------------------------------------------------------------
   5. دکمه شناور واتساپ — الگوی abzarbane
   -------------------------------------------------------------------------- */
.abz-whatsapp-float {
    position: fixed;
    bottom: 22px;
    inset-inline-start: 22px;
    z-index: 970;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: #25d366;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    text-decoration: none;
    box-shadow: 0 10px 26px rgba(37, 211, 102, 0.45);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.abz-whatsapp-float:hover,
.abz-whatsapp-float:focus-visible {
    color: #fff;
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 14px 32px rgba(37, 211, 102, 0.55);
}
.abz-whatsapp-float::before {
    content: '';
    position: absolute;
    inset: -5px;
    border-radius: 50%;
    border: 2px solid rgba(37, 211, 102, 0.4);
    animation: abz-wa-pulse 2s ease-out infinite;
}
@keyframes abz-wa-pulse {
    0% { transform: scale(0.9); opacity: 1; }
    100% { transform: scale(1.35); opacity: 0; }
}
@media (max-width: 992px) {
    .abz-whatsapp-float { bottom: calc(var(--abz-toolbar-h) + 18px); inset-inline-start: 14px; width: 48px; height: 48px; font-size: 23px; }
}
@media (prefers-reduced-motion: reduce) {
    .abz-whatsapp-float::before { animation: none; }
}

/* --------------------------------------------------------------------------
   6. دکمه‌ها — یکپارچه‌سازی، حالت‌های لمسی و فوکوس
   -------------------------------------------------------------------------- */
.workshop-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce span.onsale {
    font-family: inherit;
}
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 12px;
    font-weight: 800;
    padding: 10px 18px;
    transition: background 0.2s ease, color 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
    cursor: pointer;
    line-height: 1.4;
}
.woocommerce a.button:active,
.woocommerce button.button:active { transform: scale(0.98); }

/* دکمه افزودن به سبد — سبز (الگوی موفق رقبا) */
.woocommerce ul.products li.product .button,
.pcm-add-to-cart,
.workshop-add {
    background: var(--abz-green) !important;
    color: #fff !important;
    border-radius: 12px;
}
.woocommerce ul.products li.product .button:hover,
.pcm-add-to-cart:hover,
.workshop-add:hover {
    background: var(--abz-green-dark) !important;
    color: #fff !important;
}
.workshop-add {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 0;
    cursor: pointer;
    transition: background 0.2s ease, transform 0.15s ease;
}
.workshop-add:hover { transform: scale(1.06); }

/* حالت لودینگ دکمه‌ها */
.woocommerce a.button.loading,
.woocommerce button.button.loading {
    opacity: 0.7;
    pointer-events: none;
}

/* فوکوس قابل مشاهده برای دسترس‌پذیری */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.ry-menu-toggle:focus-visible {
    outline: 3px solid rgba(255, 106, 0, 0.5);
    outline-offset: 2px;
    border-radius: 6px;
}

/* حذف outline قدیمی که در چندجا مانده */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible) { outline: none; }

/* --------------------------------------------------------------------------
   7. کارت محصول — افکت براق (الگوی abzarbane) + نشان تخفیف
   -------------------------------------------------------------------------- */
.workshop-product,
.woocommerce ul.products li.product,
.pcm-card {
    position: relative;
    overflow: hidden;
}

/* انیمیشن براق روی هاور تصویر */
.workshop-product .workshop-product-media::after,
.woocommerce ul.products li.product a img { position: relative; }
.workshop-product .workshop-product-media::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 55%;
    inset-inline-start: -60%;
    background: linear-gradient(105deg, transparent, rgba(255, 255, 255, 0.55), transparent);
    transform: skewX(-18deg);
    z-index: 2;
    transition: none;
    pointer-events: none;
}
.workshop-product:hover .workshop-product-media::before {
    animation: abz-shine 0.85s ease;
}
@keyframes abz-shine {
    0% { inset-inline-start: -60%; }
    100% { inset-inline-start: 130%; }
}
@media (prefers-reduced-motion: reduce) {
    .workshop-product:hover .workshop-product-media::before { animation: none; }
}

/* نشان درصد تخفیف — قرمز قرصی */
.workshop-chip,
.pcm-badge-sale {
    background: var(--abz-red) !important;
    color: #fff;
    border-radius: 999px;
    padding: 5px 9px;
    font-size: 10.5px;
    font-weight: 800;
    box-shadow: 0 6px 14px rgba(239, 68, 68, 0.35);
}

/* نشان موجودی در کارت محصول */
.pcm-badge-out { background: #6b7680 !important; }

/* دکمه علاقه‌مندی — انیمیشن قلب */
.workshop-wishlist {
    width: 38px;
    height: 38px;
    cursor: pointer;
    transition: transform 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.workshop-wishlist:hover { color: var(--abz-red); border-color: rgba(239, 68, 68, 0.4); transform: scale(1.08); }
.workshop-wishlist.is-active {
    color: var(--abz-red) !important;
    border-color: rgba(239, 68, 68, 0.4);
    background: rgba(239, 68, 68, 0.06);
}
.workshop-wishlist.is-active i { font-weight: 900; }

/* --------------------------------------------------------------------------
   8. صفحه اصلی — بهبود ریسپانسیو سکشن‌ها
   -------------------------------------------------------------------------- */

/* هیرو */
@media (max-width: 640px) {
    .workshop-hero { min-height: 0; }
    .workshop-hero-inner {
        min-height: 0;
        padding: 96px 14px 40px;
        grid-template-columns: 1fr;
        gap: 30px;
    }
    .workshop-hero h1 { font-size: clamp(30px, 10.5vw, 44px); }
    .workshop-cta-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
    .workshop-btn { width: 100%; padding: 13px 14px; font-size: 13px; }
    .workshop-specs { grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 26px; }
    .workshop-spec b { font-size: 19px; }
    .workshop-hero-card { transform: none; }
    .workshop-hero-card:hover { transform: translateY(-4px); }
    .workshop-price { font-size: 18px; }
}

/* قرص‌های میانبر دسته‌بندی (الگوی abzarbane) */
.abz-cat-pills {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding: 6px 2px 14px;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}
.abz-cat-pills::-webkit-scrollbar { display: none; }
.abz-cat-pill {
    flex: 0 0 auto;
    scroll-snap-align: start;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    background: #fff;
    border: 1px solid var(--abz-line);
    border-radius: 999px;
    color: #33404a;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease, transform 0.15s ease;
    min-height: 44px;
}
.abz-cat-pill i { color: var(--abz-orange); font-size: 14px; }
.abz-cat-pill:hover {
    border-color: var(--abz-orange);
    color: var(--abz-orange);
    background: rgba(255, 106, 0, 0.04);
    transform: translateY(-1px);
}

/* تایمر شمارش معکوس */
.workshop-countdown {
    display: flex;
    align-items: center;
    gap: 8px;
    direction: ltr; /* اعداد ساعت چپ‌به‌راست */
    justify-content: flex-end;
}
.workshop-cd-box {
    min-width: 54px;
    padding: 8px 6px;
    background: #fff;
    border: 1px solid #e3e8eb;
    border-radius: 10px;
    text-align: center;
    box-shadow: 0 3px 10px rgba(18, 24, 29, 0.05);
}
.workshop-cd-box b {
    display: block;
    font-size: 20px;
    font-weight: 900;
    color: var(--abz-ink);
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
}
.workshop-cd-box small {
    display: block;
    font-size: 9.5px;
    color: #7b858c;
    margin-top: 2px;
}
.workshop-cd-sep { color: #aab5bd; font-weight: 900; }
@media (max-width: 640px) {
    .workshop-cd-box { min-width: 46px; padding: 6px 4px; }
    .workshop-cd-box b { font-size: 16px; }
}

/* گرید محصولات موبایل — ۲ ستونه با فاصله بهتر */
@media (max-width: 480px) {
    .workshop-product-grid { gap: 10px; }
    .workshop-product-body { padding: 12px; }
    .workshop-product h3 { font-size: 12.5px; min-height: 42px; }
    .workshop-rating { font-size: 10px; }
    .workshop-new { font-size: 14px; }
    .workshop-old { font-size: 10px; }
}

/* دسته‌بندی‌ها — تصویر شاخص همیشه پر شود */
.workshop-category { min-height: 170px; }
@media (max-width: 480px) {
    .workshop-category { min-height: 130px; }
    .workshop-category h3 { font-size: 14px; }
    .workshop-category small { font-size: 9px; }
}

/* برندها */
@media (max-width: 480px) {
    .workshop-brand-card { min-height: 68px; font-size: 13px; }
}

/* مقالات */
@media (max-width: 480px) {
    .workshop-article-body { padding: 14px; }
    .workshop-article h3 { font-size: 15px; }
}

/* --------------------------------------------------------------------------
   9. فروشگاه ووکامرس — گرید، فیلترها، صفحه محصول
   -------------------------------------------------------------------------- */

/* گرید محصولات — ستون‌های سیال */
.woocommerce ul.products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}
@media (max-width: 1200px) {
    .woocommerce ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 992px) {
    .woocommerce ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 768px) {
    .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
}
@media (max-width: 400px) {
    .woocommerce ul.products { grid-template-columns: 1fr; }
}

/* تصاویر محصول نکشد بیرون */
.woocommerce ul.products li.product img {
    width: 100% !important;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    margin: 0 auto 12px;
    border-radius: 12px;
    background: #f1f3f4;
}

/* نوار ابزار فروشگاه */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
    margin: 0;
    font-size: 13px;
}
.woocommerce .woocommerce-ordering select {
    min-height: 44px;
    padding: 8px 34px 8px 14px;
    border-radius: 10px;
    border: 1px solid var(--abz-line);
    background-color: #fff;
}

/* سایدبار فیلتر — در تبلت زیر گرید */
@media (max-width: 992px) {
    .shop-layout,
    .woocommerce-products-header + .shop-content,
    .pcm-shop-layout {
        grid-template-columns: 1fr !important;
    }
}

/* --------------------------------------------------------------------------
   10. صفحه محصول تکی
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {
    .sp-layout,
    .woocommerce div.product {
        grid-template-columns: 1fr !important;
    }
    .sp-gallery,
    .woocommerce div.product div.images {
        width: 100% !important;
        float: none !important;
    }
}
.woocommerce div.product div.summary {
    float: none !important;
    width: 100% !important;
}
.woocommerce div.product form.cart .button {
    min-height: 50px;
    font-size: 15px;
    width: auto;
    min-width: 200px;
}
.woocommerce div.product form.cart div.quantity {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--abz-line);
    border-radius: 12px;
    overflow: hidden;
}
.woocommerce .quantity input[type="number"] {
    min-height: 46px;
    border: 0;
    text-align: center;
}
/* تب‌ها و توضیحات */
.woocommerce div.product .woocommerce-tabs ul.tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0;
    margin: 0 0 18px;
    list-style: none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: #fff;
    border: 1px solid var(--abz-line);
    border-radius: 10px;
    margin: 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    background: var(--abz-ink);
    border-color: var(--abz-ink);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: #fff; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    padding: 10px 16px;
    display: block;
    font-size: 13.5px;
    font-weight: 700;
}

/* --------------------------------------------------------------------------
   11. سبد خرید، تسویه حساب، حساب کاربری
   -------------------------------------------------------------------------- */

/* جدول سبد در موبایل — کارت‌مانند */
@media (max-width: 768px) {
    .woocommerce-cart-form .shop_table,
    .woocommerce-checkout-review-order-table,
    .shop_table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }
    .shop_table th, .shop_table td {
        padding: 10px 8px;
        font-size: 13px;
    }
}
/* دکمه‌های سبد و تسویه */
.woocommerce .cart-collaterals .cart_totals a.checkout-button,
.woocommerce-cart-form button[type="submit"],
.place-order-button,
#place_order {
    width: 100%;
    min-height: 52px;
    font-size: 15px;
    border-radius: 14px;
}
/* کوپن */
.woocommerce form .form-row-first,
.woocommerce form .form-row-last {
    float: none !important;
    width: 100% !important;
}
/* فیلدهای فرم تسویه */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
    min-height: 48px;
    border-radius: 10px;
    border: 1px solid var(--abz-line);
    padding: 10px 14px;
    background: #fff;
}
/* حساب کاربری — تب‌ها در موبایل اسکرول شوند */
@media (max-width: 768px) {
    .woocommerce-MyAccount-navigation ul {
        display: flex;
        overflow-x: auto;
        gap: 8px;
        padding-bottom: 6px;
        -webkit-overflow-scrolling: touch;
    }
    .woocommerce-MyAccount-navigation li {
        flex: 0 0 auto;
    }
    .woocommerce-MyAccount-navigation a {
        white-space: nowrap;
        padding: 10px 14px;
        border: 1px solid var(--abz-line);
        border-radius: 10px;
    }
    .woocommerce-MyAccount-navigation li.is-active a {
        background: var(--abz-ink);
        color: #fff;
        border-color: var(--abz-ink);
    }
}

/* --------------------------------------------------------------------------
   12. برگه‌های داخلی — ریسپانسیو عمومی
   -------------------------------------------------------------------------- */

/* گریدهای ۳ و ۴ ستونه داخلی به ۱/۲ ستون
   v6.4: .ry-brands-grid حذف شد — گرید A-Z برندها بریک‌پوینت خودش را در
   template-brands.php دارد (6→5→4→3→2) و این override های !important
   با آن تضاد داشتند */
@media (max-width: 992px) {
    .ry-about-grid,
    .ry-about-members,
    .ry-faq-groups,
    .ry-contact-grid,
    .ry-compare-table-wrap,
    .ry-wishlist-grid,
    .ry-terms-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 640px) {
    .ry-about-grid,
    .ry-about-members,
    .ry-faq-groups,
    .ry-contact-grid,
    .ry-wishlist-grid,
    .ry-terms-grid {
        grid-template-columns: 1fr !important;
    }
    .ry-about-hero h1,
    .ry-faq-hero h1,
    .ry-contact-hero h1,
    .ry-brands-hero h1,
    .ry-wishlist-hero h1,
    .ry-terms-hero h1,
    .ry-page-hero h1 {
        font-size: clamp(24px, 7vw, 34px) !important;
    }
    .ry-about-hero p,
    .ry-faq-hero p,
    .ry-contact-hero p,
    .ry-brands-hero p,
    .ry-page-hero p {
        font-size: 13.5px !important;
    }
}

/* آکاردئون سوالات متداول */
.ry-faq-group-head,
.ry-faq-q {
    min-height: 52px;
    cursor: pointer;
}

/* جدول مقایسه — اسکرول افقی امن */
.ry-compare-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* فرم تماس */
.ry-contact-form input,
.ry-contact-form textarea,
.ry-contact-form select {
    min-height: 48px;
    border-radius: 10px;
}

/* ۴۰۴ */
.error-404 .page-title { font-size: clamp(56px, 14vw, 120px); line-height: 1; }

/* جستجو و بلاگ */
@media (max-width: 768px) {
    .search-results .site-main,
    .blog .site-main,
    .archive .site-main {
        padding-inline: 4px;
    }
    .post-card,
    .ry-post-card {
        grid-template-columns: 1fr !important;
    }
}

/* پیوست‌ها و برچسب‌های تصویر */
img { max-width: 100%; height: auto; }

/* --------------------------------------------------------------------------
   13. فوتر — بهبود ریسپانسیو و نشان‌ها
   -------------------------------------------------------------------------- */
@media (max-width: 992px) {
    #colophon.ry-footer .ry-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 34px 24px;
    }
}
@media (max-width: 640px) {
    #colophon.ry-footer .ry-footer-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    #colophon.ry-footer .ry-footer-cta-inner {
        flex-direction: column;
        text-align: center;
        gap: 16px;
    }
    #colophon.ry-footer .ry-footer-newsletter {
        width: 100%;
        flex-direction: column;
        gap: 10px;
    }
    #colophon.ry-footer .ry-footer-newsletter input,
    #colophon.ry-footer .ry-footer-newsletter button {
        width: 100%;
        min-height: 48px;
    }
    .ry-footer-bottom-inner {
        flex-direction: column;
        gap: 12px;
        text-align: center;
    }
}

/* نشان‌های اعتماد فوتر — استایل جعبه‌ای بهتر */
.ry-footer-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 12px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 10px;
    font-size: 12px;
    transition: border-color 0.2s ease, background 0.2s ease;
}
.ry-footer-badge:hover { border-color: rgba(255, 106, 0, 0.45); background: rgba(255, 106, 0, 0.06); }

/* بج نماد اعتماد بزرگ‌تر و رسمی‌تر */
.abz-enamad {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 14px 12px;
    background: #fff;
    border-radius: 14px;
    min-width: 118px;
    text-align: center;
}
.abz-enamad i { font-size: 34px; color: #0d5eaf; }
.abz-enamad span { font-size: 11px; font-weight: 700; color: #2c3a45; }

/* --------------------------------------------------------------------------
   14. ریسپانسیو عمومی — تبلت و موبایل
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {
    /* عنوان‌های سکشن سیال */
    .workshop-title,
    .ry-about-hero h1 { line-height: 1.35; }
    .workshop-sub { font-size: 13px; line-height: 1.9; }

    /* پدینگ سکشن‌ها کمتر */
    .workshop-section { padding: 44px 0; }
    .workshop-section.compact { padding: 30px 0; }

    /* سر سکشن‌ها ستونی شود */
    .workshop-head {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }
    .workshop-link { width: 100%; justify-content: center; }

    /* بنرهای پرومو */
    .workshop-promo-content { padding: 24px 18px; }
    .workshop-promo h3 { font-size: 22px; }
    .workshop-promo p { font-size: 12.5px; }
}

@media (max-width: 576px) {
    /* تایتل‌های داخلی */
    h1 { font-size: clamp(24px, 7vw, 32px); }
    h2 { font-size: clamp(20px, 5.5vw, 26px); }

    /* توپ‌بار فقط پیام */
    .ry-topbar-contact { display: none; }
    .ry-topbar .container { justify-content: center; }

    /* برندینگ کوچکتر */
    .ry-branding-title { font-size: 17px !important; }

    /* بک‌توتاپ */
    #ry-back-to-top { width: 44px; height: 44px; font-size: 16px; }
}

@media (max-width: 380px) {
    /* گوشی‌های خیلی کوچک */
    .workshop-hero h1 { font-size: clamp(26px, 9.5vw, 36px); }
    .workshop-cta-row { grid-template-columns: 1fr; }
    .workshop-specs { grid-template-columns: repeat(2, 1fr); }
}

/* --------------------------------------------------------------------------
   15. اهداف لمسی کوچک — بزرگ‌سازی با ناحیه لمسی گسترش‌یافته (v4.2.0)
   دکمه‌های حذف/بستن در مقایسه، علاقه‌مندی، برندها و جدول‌ها
   -------------------------------------------------------------------------- */
/* حذف آیتم در جدول‌های ووکامرس */
.woocommerce a.remove,
.shop_table .product-remove .remove {
    width: 32px;
    height: 32px;
    font-size: 20px;
    color: #b91c1c !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    transition: background 0.2s ease, color 0.2s ease;
}
.woocommerce a.remove:hover {
    background: rgba(239, 68, 68, 0.1);
    color: #ef4444 !important;
}
/* ناحیه لمسی گسترش‌یافته بدون تغییر چیدمان */
@media (pointer: coarse) {
    .woocommerce a.remove,
    .shop_table .product-remove .remove { position: relative; }
    .woocommerce a.remove::before,
    .shop_table .product-remove .remove::before {
        content: '';
        position: absolute;
        inset: -6px;
    }
    /* حروف الفبای برندها */
    .ry-brands-index a,
    .ry-az-index a {
        min-width: 40px;
        min-height: 40px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    /* دکمه حذف کارت مقایسه/علاقه‌مندی */
    .ry-compare-remove,
    .ry-wishlist-remove,
    .pcm-remove,
    .ry-close-btn {
        min-width: 40px;
        min-height: 40px;
    }
}

/* دکمه‌های جدول حساب کاربری */
.woocommerce table.my_account_orders .button,
.woocommerce-MyAccount-content table .button {
    min-height: 40px;
    padding: 8px 14px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 700;
}

/* فرم‌های تسویه — فقط رفع تداخل احتمالی؛ گرید اصلی در خود قالب تعریف شده */
form.checkout .ry-checkout-grid { min-width: 0; }

/* سبد خرید — گرید و موبایل در خود قالب تعریف شده؛ اینجا فقط بهبود لمسی */
.woocommerce-cart .ry-cart-grid { min-width: 0; }

/* حساب کاربری — چیدمان ناوبری + محتوا (ناوبری سمت راست در RTL، طبیعی DOM) */
.ry-account-grid {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 32px;
    align-items: start;
}
.woocommerce-account .woocommerce-MyAccount-content {
    min-width: 0;
}
.ry-account-grid .woocommerce-MyAccount-navigation {
    position: sticky;
    top: calc(var(--ry-header-h, 76px) + 24px);
}
@media (max-width: 992px) {
    .ry-account-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .ry-account-grid .woocommerce-MyAccount-navigation {
        position: static;
    }
    /* اهداف لمسی بزرگتر برای لینک‌های ناوبری */
    .woocommerce-account .woocommerce-MyAccount-navigation ul li a {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
    }
}

/* چاپ */
@media print {
    .ry-header, .ry-topbar, .ry-nav, .ry-footer, .abz-mobile-toolbar,
    .abz-whatsapp-float, #ry-back-to-top, .ry-breadcrumb-bar { display: none !important; }
    body { background: #fff; }
}

/* کانتینر واکنش‌گرا */
@media (max-width: 1300px) and (min-width: 993px) {
    #page.ry-v5 .container,
    #page.ry-v5 .ry-shell-container,
    .wp-container { padding-inline: 20px; }
}

/* --------------------------------------------------------------------------
   16. v4.3.0 — برندهای صفحه اصلی با رنگ رسمی هر برند
   -------------------------------------------------------------------------- */
.workshop-brand-card {
    --bzc: #EA580C; --bzc-glow: rgba(234, 88, 12, 0.16);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
}
.workshop-brand-dot {
    width: 10px; height: 10px;
    border-radius: 4px;
    background: var(--bzc);
    box-shadow: 0 0 0 3px var(--bzc-glow);
    flex-shrink: 0;
    transition: transform 0.25s ease;
}
.workshop-brand-card:hover {
    border-color: var(--bzc) !important;
    box-shadow: 0 10px 26px var(--bzc-glow);
    color: var(--bzc) !important;
}
.workshop-brand-card:hover .workshop-brand-dot { transform: scale(1.25); }
@media (max-width: 480px) {
    .workshop-brand-dot { width: 8px; height: 8px; }
}

/* --------------------------------------------------------------------------
   17. v4.3.0 — حساب کاربری: قالب‌های استاندارد ووکامرس (form-login /
   dashboard / navigation) — چیدمان و ریسپانسیو نهایی
   -------------------------------------------------------------------------- */
/* تبلت: ناوبری حساب به بالای صفحه می‌آید (بریک‌پوینت هماهنگ سایت) */
@media (max-width: 991px) {
    .woocommerce-account .woocommerce,
    .woocommerce-page.woocommerce-account .woocommerce {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
    .woocommerce-account .woocommerce-MyAccount-navigation { position: static !important; }
}
/* محتوای حساب همیشه داخل مرز خودش بماند */
.woocommerce-account .woocommerce-MyAccount-content { min-width: 0; }
/* جداول حساب (سفارش‌ها) در موبایل */
@media (max-width: 767px) {
    .woocommerce-account .woocommerce-MyAccount-content { padding: 14px !important; }
    .woocommerce-account .woocommerce-MyAccount-content table { font-size: 11.5px !important; }
}
/* دکمه‌های جدول سفارش‌ها */
.woocommerce-account .woocommerce-MyAccount-content table .button {
    min-height: 40px; padding: 8px 14px; border-radius: 10px;
    display: inline-flex; align-items: center; gap: 6px; font-weight: 700;
}

/* --------------------------------------------------------------------------
   18. v4.3.0 — تایپوگرافی محتوای مقالات بلاگ (فارسی، خوانا، ریسپانسیو)
   برای مقالات ~۲۰۰۰ کلمه‌ای: figure، جدول، لیست، نقل‌قول
   -------------------------------------------------------------------------- */
.abz-article-content { line-height: 2.1; }

.abz-article-content figure {
    margin: 30px 0;
    position: relative;
}
.abz-article-content figure img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 18px;
    box-shadow: 0 14px 40px rgba(28, 25, 23, 0.12);
}
.abz-article-content figcaption {
    margin-top: 12px;
    text-align: center;
    font-size: 12px;
    color: #A8A29E;
    line-height: 1.9;
    font-weight: 600;
}

/* جداول مقاله */
.abz-article-content table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    margin: 28px 0;
    border: 1px solid #EDE9E3;
    border-radius: 16px;
    overflow: hidden;
    font-size: 13.5px;
    display: table;
}
.abz-article-content table thead th {
    background: #1C1917;
    color: #fff;
    font-weight: 800;
    padding: 12px 16px;
    text-align: right;
    font-size: 12.5px;
    white-space: nowrap;
}
.abz-article-content table td {
    padding: 12px 16px;
    border-top: 1px solid #F4F1EC;
    background: #fff;
    line-height: 1.9;
    vertical-align: top;
}
.abz-article-content table tbody tr:nth-child(even) td { background: #FAF8F5; }

/* لیست‌ها — تورفتگی صحیح RTL */
.abz-article-content ul,
.abz-article-content ol {
    padding-inline-start: 8px;
    padding-inline-end: 24px;
    margin: 18px 0;
}
.abz-article-content ul li,
.abz-article-content ol li {
    margin-bottom: 10px;
    line-height: 2.05;
}
.abz-article-content ul li::marker { color: #EA580C; }
.abz-article-content ol li::marker { color: #EA580C; font-weight: 800; }

/* پاراگراف اول مقاله برجسته */
.abz-article-content > p:first-of-type {
    font-size: 17px;
    font-weight: 600;
    color: #292524;
    line-height: 2.1;
}

/* لینک‌های داخلی مقاله */
.abz-article-content a {
    color: #C2410C;
    font-weight: 700;
    text-decoration: none;
    border-bottom: 2px solid rgba(234, 88, 12, 0.25);
    transition: border-color 0.2s ease;
}
.abz-article-content a:hover { border-bottom-color: #EA580C; }

/* جدول در موبایل — اسکرول امن */
@media (max-width: 640px) {
    .abz-article-content .table-scroll,
    .abz-article-content table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }
    .abz-article-content { font-size: 15px; }
    .abz-article-content h2 { font-size: 19px; }
    .abz-article-content h3 { font-size: 16.5px; }
    .abz-article-content figure { margin: 22px 0; }
    .abz-article-content figure img { border-radius: 14px; }
}

/* ===============================================================
 * v5.1.0 — بخش ۱۹: صفحه اصلی (محصول واقعی هیرو، مارکی برندها،
 * مجله یکسان‌اندازه) + فروشگاه بدون هیرو (الگوی ostadabzar)
 * =============================================================== */

/* ---------- ۱۹-۱) باکس محصول واقعی در هیرو (تصویر شفاف) ---------- */
.workshop-hero-card-product {
    background:
        radial-gradient(120% 90% at 70% 20%, rgba(251, 146, 60, 0.16), transparent 60%),
        radial-gradient(90% 80% at 20% 85%, rgba(251, 191, 36, 0.10), transparent 55%),
        linear-gradient(160deg, #141a20 0%, #0d1115 100%);
}
.workshop-hero-card-product::after {
    content: '';
    position: absolute;
    inset: 12px;
    border: 1px dashed rgba(255, 255, 255, 0.10);
    border-radius: 12px;
    pointer-events: none;
}
.workshop-hero-card-product img {
    object-fit: contain !important;
    padding: 16px;
    filter: drop-shadow(0 22px 30px rgba(0, 0, 0, 0.55)) drop-shadow(0 6px 12px rgba(251, 146, 60, 0.18));
    transition: transform 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.workshop-hero-card:hover .workshop-hero-card-product img { transform: scale(1.045) rotate(-1deg); }
.workshop-hero-card { text-decoration: none; }
.workshop-hero-card-foot strong { color: #fff; }
.workshop-hero-card-foot .workshop-price { display: inline-flex; align-items: baseline; gap: 4px; }

/* ---------- ۱۹-۲) مجله ابزار — کارت‌های کاملاً یکسان در یک سطح ---------- */
.workshop-blog-grid { grid-template-columns: repeat(3, 1fr) !important; }
.workshop-article {
    display: flex; flex-direction: column;
    min-height: 100%;
}
.workshop-article-media { aspect-ratio: 16/10; flex-shrink: 0; }
.workshop-article-body {
    display: flex; flex-direction: column; flex: 1;
    padding: 18px 16px 16px;
}
.workshop-article h3 {
    font-size: 15.5px !important;
    line-height: 1.75 !important;
    min-height: 82px;              /* عنوان‌ها هم‌سطح */
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.workshop-article p {
    margin-top: auto;               /* توضیح در یک سطح */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.workshop-article .workshop-article-meta {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 10.5px; font-weight: 700; color: #7d888f;
    padding-bottom: 10px; border-bottom: 1px solid #eef1f3; margin-bottom: 10px;
}

/* ---------- ۱۹-۳) نوار متحرک برندها (الگوی hajabzar) ---------- */
.workshop-brands-section { overflow: hidden; }
.workshop-brands-marquee {
    position: relative;
    direction: ltr;
    padding: 22px 0 26px;
    background: linear-gradient(180deg, #fafbfc 0%, #f3f5f7 100%);
    border-top: 1px solid #e8ecef;
    border-bottom: 1px solid #e8ecef;
    overflow: hidden;
}
.workshop-brands-marquee::before,
.workshop-brands-marquee::after {
    content: '';
    position: absolute;
    top: 0; bottom: 0;
    width: clamp(40px, 8vw, 120px);
    z-index: 2;
    pointer-events: none;
}
.workshop-brands-marquee::before { left: 0; background: linear-gradient(90deg, #fafbfc, transparent); }
.workshop-brands-marquee::after  { right: 0; background: linear-gradient(270deg, #f3f5f7, transparent); }
.workshop-brands-track {
    display: flex;
    width: max-content;
    animation: bzbBrandsScroll 42s linear infinite;
    will-change: transform;
}
.workshop-brands-marquee:hover .workshop-brands-track { animation-play-state: paused; }
@keyframes bzbBrandsScroll {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}
.workshop-brands-group {
    display: flex;
    align-items: center;
    gap: clamp(10px, 1.6vw, 18px);
    padding-inline: clamp(5px, 0.8vw, 9px);
}
.workshop-brand-marquee-item {
    /* v6.11.0 — رنگ اصلی برند در حالت عادی (نه فقط هاور) */
    background: linear-gradient(180deg, #ffffff 0%, var(--bzc-tint, #ffffff) 100%);
    border: 1px solid var(--bzc-bd, #e4e8eb);
    border-radius: 14px;
    min-width: clamp(120px, 13vw, 168px);
    height: clamp(64px, 6.5vw, 84px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    text-decoration: none;
    box-shadow: 0 2px 8px rgba(28, 25, 23, 0.04);
    transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
    position: relative;
}
.workshop-brand-marquee-item::after {
    content: '';
    position: absolute;
    bottom: 0; inset-inline: 14%;
    height: 4px;
    border-radius: 99px 99px 0 0;
    background: linear-gradient(90deg, var(--bzc, #EA580C), var(--bzc2, #B4430A));
    opacity: 1;
    transition: height 0.25s ease, inset 0.25s ease;
}
.workshop-brand-marquee-item:hover {
    border-color: var(--bzc, #EA580C);
    box-shadow: 0 10px 26px var(--bzc-glow, rgba(28, 25, 23, 0.10)), 0 4px 12px rgba(28, 25, 23, 0.06);
    transform: translateY(-4px);
}
.workshop-brand-marquee-item:hover::after { height: 6px; inset-inline: 8%; }
.workshop-brand-marquee-item img {
    max-height: 52px;
    max-width: 100%;
    object-fit: contain;
    display: block;
}
.workshop-brand-wordmark {
    font-size: clamp(17px, 1.8vw, 22px);
    font-weight: 900;
    font-style: italic;
    letter-spacing: 0.5px;
    font-family: 'Vazirmatn', Arial, sans-serif;
    white-space: nowrap;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
}
@media (prefers-reduced-motion: reduce) {
    .workshop-brands-track { animation: none; }
    .workshop-brands-marquee { overflow-x: auto; }
}

/* ---------- ۱۹-۴) فروشگاه — هدر فشرده بدون هیرو (الگوی ostadabzar) ---------- */
.shop-topbar {
    background: #fff;
    border-bottom: 1px solid #e8ecef;
    padding: 18px 0 0;
}
.shop-topbar-breadcrumb {
    display: flex; align-items: center; flex-wrap: wrap; gap: 8px;
    font-size: 12.5px; color: #78716c; font-weight: 600;
    padding-bottom: 14px;
}
.shop-topbar-breadcrumb a { color: #78716c; text-decoration: none; transition: color 0.2s; }
.shop-topbar-breadcrumb a:hover { color: var(--wp-ink, #1C1917); }
.shop-topbar-breadcrumb .current { color: var(--wp-ink, #1C1917); font-weight: 800; }
.shop-topbar-breadcrumb .sep { font-size: 9px; color: #b8b1ab; }
.shop-topbar-breadcrumb i.fa-home { font-size: 13px; }
.shop-topbar-row {
    display: flex; align-items: center; justify-content: space-between;
    gap: 14px; flex-wrap: wrap;
    padding-bottom: 14px;
}
.shop-topbar-title {
    font-size: clamp(19px, 2.6vw, 26px);
    font-weight: 900; color: var(--wp-ink, #1C1917);
    margin: 0; display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap;
    row-gap: 6px; /* v6.11.0 — فاصله مرتب وقتی نشان تعداد به خط بعد می‌رود */
    position: relative;
}
.shop-topbar-title::after {
    content: '';
    position: absolute;
    bottom: -10px; right: 0;
    width: 64px; height: 4px; border-radius: 99px;
    background: linear-gradient(90deg, #EA580C, #FBBF24);
}
/* v6.11.0 — صفحه برند: نشان و رنگ برند در هدر فروشگاه */
.shop-topbar-title.is-brand {
    align-items: center; /* وسط‌چین نشان با نام */
}
.shop-topbar-title.is-brand::after {
    background: linear-gradient(90deg, var(--bzc, #EA580C), var(--bzc2, #B4430A));
}
.shop-topbar-count { font-size: 13px; font-weight: 700; color: #78716c; }
.shop-topbar-count b { color: #EA580C; font-weight: 900; }
.shop-topbar-clear {
    display: inline-flex; align-items: center; gap: 7px;
    font-size: 12px; font-weight: 800; color: #dc2626;
    text-decoration: none; background: #fef2f2;
    border: 1px solid #fecaca; border-radius: 99px; padding: 8px 16px;
    transition: all 0.2s;
}
.shop-topbar-clear:hover { background: #dc2626; color: #fff; }
.shop-topbar-cats {
    display: flex; align-items: center; gap: 8px;
    overflow-x: auto;
    padding: 4px 2px 14px;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.shop-topbar-cats::-webkit-scrollbar { display: none; }
.shop-topbar-cats a {
    flex-shrink: 0;
    display: inline-flex; align-items: center; gap: 7px;
    font-size: 12.5px; font-weight: 800; color: #44403c;
    text-decoration: none;
    background: #faf8f5;
    border: 1px solid #e5e0d8;
    border-radius: 99px;
    padding: 9px 16px;
    transition: all 0.22s ease;
    white-space: nowrap;
}
.shop-topbar-cats a i { font-size: 11px; color: #78716c; }
.shop-topbar-cats a small {
    font-size: 10.5px; font-weight: 800; color: #78716c;
    background: #fff; border-radius: 99px; padding: 2px 8px;
    border: 1px solid #e5e0d8;
}
.shop-topbar-cats a:hover {
    background: #fff; border-color: #EA580C; color: #EA580C;
    box-shadow: 0 6px 16px rgba(234, 88, 12, 0.14);
    transform: translateY(-2px);
}
.shop-topbar-cats a.active {
    background: linear-gradient(120deg, #EA580C, #c2410c);
    border-color: #EA580C; color: #fff;
    box-shadow: 0 8px 20px rgba(234, 88, 12, 0.28);
}
.shop-topbar-cats a.active i,
.shop-topbar-cats a.active small { color: #fff; background: rgba(255,255,255,0.18); border-color: rgba(255,255,255,0.25); }
.shop-container-modern { background: #faf8f5; }

/* موبایل */
@media (max-width: 767px) {
    .shop-topbar { padding-top: 14px; }
    .shop-topbar-breadcrumb { font-size: 11.5px; padding-bottom: 10px; }
    .shop-topbar-row { padding-bottom: 16px; }
    .shop-topbar-title { font-size: 18px; }
    .shop-topbar-cats { padding-bottom: 12px; gap: 6px; }
    .shop-topbar-cats a { font-size: 11.5px; padding: 8px 13px; }
    .shop-topbar-cats a small { display: none; }
    .workshop-blog-grid { grid-template-columns: 1fr !important; }
    .workshop-article h3 { min-height: 0; }
    .workshop-brands-marquee { padding: 16px 0 20px; }
    .workshop-brand-marquee-item { min-width: 118px; height: 60px; }
    .workshop-brand-marquee-item img { max-height: 42px; }
    .workshop-hero-card-product img { padding: 10px; }
}

/* ---------- ۱۹-۵) اصلاحات کارت محصول صفحه اصلی ---------- */
.workshop-product-media a { display: block; width: 100%; height: 100%; }
.workshop-product h3 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.workshop-add.add_to_cart_button.loading { opacity: 0.6; pointer-events: none; }

/* ============================================================================
   ██ بخش ۲۰ — v5.2.0: لنداسکیپ کامل موبایل (تمام صفحات) ██
   گوشی در حالت افقی (عرض کم، ارتفاع کم): هدر فشرده، هیروها کوتاه،
   محتوای قابل اسکرول بدون بریدگی و تولبار پایین بدون هم‌پوشانی.
   ============================================================================ */

/* الف) ارتفاع‌های 100vh → پویا (نوار آدرس مرورگر موبایل) */
@supports (height: 100dvh) {
    .ry-mobile-panel,
    .abz-whatsapp-float { height: auto; }
}

/* ب) لنداسکیپ — ارتفاع کم */
@media (orientation: landscape) and (max-height: 540px) and (max-width: 1024px) {

    /* هدر و نوار بالا */
    .ry-topbar { display: none !important; }
    .abz-mobile-toolbar { height: 52px; }
    .abz-mobile-toolbar a { padding: 6px 10px; }
    .abz-mobile-toolbar a i { font-size: 16px; }
    .abz-mobile-toolbar a span { font-size: 9px; }
    .ry-back-to-top { bottom: 60px; }
    .abz-whatsapp-float { bottom: 60px; }
    body { padding-bottom: 52px !important; }

    /* هیروهای اصلی — کوتاه و متناسب */
    .workshop-hero { min-height: auto !important; padding: 24px 0 !important; }
    .workshop-hero-card { min-height: 0 !important; padding: 14px 18px !important; }
    .workshop-hero-title { font-size: 20px !important; }
    .workshop-hero-sub { font-size: 12px !important; }
    .bzb-hero { min-height: 0 !important; }
    .bzb-hero-inner { padding: 22px 0 !important; }
    .bzb-hero .ry-hero-title { font-size: 22px !important; margin-bottom: 6px !important; }
    .bzb-hero .ry-hero-title::after { margin-top: 8px !important; }
    .bzb-hero .ry-hero-desc { font-size: 12px !important; margin-bottom: 10px !important; line-height: 1.7 !important; }

    /* بخش‌های عمومی */
    .workshop-section { padding: 26px 0 !important; }
    .workshop-section-head { margin-bottom: 14px !important; }
    .workshop-section-title { font-size: 16px !important; }
    .workshop-section-sub { font-size: 11.5px !important; }

    /* دسته‌های سریع صفحه اصلی */
    .workshop-categories-grid,
    .workshop-cats-grid { grid-template-columns: repeat(4, 1fr) !important; }
    .workshop-cat-card { padding: 12px !important; }
    .workshop-cat-card .ry-cat-title { font-size: 11px !important; }

    /* محصولات صفحه اصلی */
    .workshop-products-grid { grid-template-columns: repeat(4, 1fr) !important; }
    .workshop-product h3 { font-size: 11.5px !important; }

    /* مجله */
    .workshop-blog-grid { grid-template-columns: repeat(3, 1fr) !important; }
    .workshop-article { min-height: 0 !important; }

    /* فرم‌ها و کارت‌های عمومی */
    .ry-contact-grid,
    .ry-track-grid { gap: 14px; }
    .faq-hero-title, .ry-faq .ry-hero-title { font-size: 18px !important; }

    /* سایدبار فروشگاه در لنداسکیپ */
    .shop-container-modern { padding-top: 14px; }

    /* فوتر فشرده */
    .ry-footer-cta { padding: 18px 0; }
    .ry-footer-main { padding: 26px 0 22px; }
    .ry-footer-grid { gap: 18px; }
}

/* پ) لنداسکیپ تبلت (ارتفاع کم اما بزرگ‌تر) */
@media (orientation: landscape) and (max-height: 900px) and (min-width: 1025px) {
    .workshop-hero { min-height: auto; }
}

/* ==========================================================================
   v6.9.0 — «برترین برندها» سربرگ وسط‌چین (specificity-تقویت‌شده)
   قاعدهٔ پایهٔ .workshop-head (align-items:end در workshop-precision.css)
   بعد از woocommerce.css لود می‌شود؛ این نسخهٔ دوکلاسی همیشه برنده است.
   ========================================================================== */
.workshop-head.workshop-brands-head {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 6px;
}

.workshop-head.workshop-brands-head .workshop-kicker {
    display: inline-block;
}

.workshop-head.workshop-brands-head .workshop-title {
    margin-inline: auto;
}

.workshop-brands-more {
    text-align: center;
    margin-top: 14px;
}

.workshop-brands-more .workshop-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

@media (max-width: 680px) {
    .workshop-head.workshop-brands-head .workshop-title { font-size: clamp(20px, 6vw, 26px); }
    .workshop-brands-more { margin-top: 10px; }
}

/* ==========================================================================
   v6.10.0 — کارت‌های کاملاً یکسان (صفحه اصلی «محصولات منتخب کارگاه» + فروشگاه)
   - حذف خط دوم برند از کارت‌ها (مارک‌آپ) + یکسان‌سازی ارتفاع عنوان (۲ خط)
   - سنجاق شدن نوار پایین کارت (دکمه استعلام/قیمت) در یک راستا برای همه کارت‌ها
   ========================================================================== */
.workshop-product {
    display: flex;
    flex-direction: column;
}
.workshop-product-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}
.workshop-product h3 {
    margin: 0 0 8px;
    height: 47px;               /* دقیقاً ۲ خط — همه کارت‌ها هم‌قد */
    min-height: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.workshop-product-bottom,
.workshop-product-inq {
    margin-top: auto;            /* دکمه استعلام همیشه در یک راستا */
    padding-top: 12px;
}
.workshop-product .workshop-product-bottom { gap: 10px; }

/* کارت فروشگاه (pcm): بدون خط برند، عنوان و توضیح کوتاه با ارتفاع ثابت */
.product-card-modern .pcm-content { min-height: 0; }
.product-card-modern .pcm-brand { display: none !important; }
.product-card-modern .pcm-title,
.pcm-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 34px;
}
.product-card-modern .pcm-short-desc {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 34px;
}
.product-card-modern .pcm-rating {
    min-height: 18px;
}
.product-card-modern .pcm-bottom,
.product-card-modern .pcm-bottom-inquiry {
    margin-top: auto;
    padding-top: 10px;
}

@media (max-width: 680px) {
    .workshop-product h3 { height: 40px; }
    .product-card-modern .pcm-title,
    .pcm-title { min-height: 30px; }
    .product-card-modern .pcm-short-desc { min-height: 30px; }
}

/* ==========================================================================
   v6.10.0 — صفحه محصول تکی در حالت استعلام:
   «استعلام بگیرید» به شکل متن در جای قیمت + دکمه استعلام پایین‌تر
   ========================================================================== */
.sp-price-inquiry {
    display: flex;
    align-items: baseline;
    gap: 12px;
    background: linear-gradient(180deg, #FFF7ED 0%, #FFFBF5 100%);
    border: 1px solid #FED7AA;
    border-radius: 14px;
    padding: 14px 16px;
}
.sp-price-inquiry .sp-price-inq-label {
    font-size: 13px;
    color: #9A3412;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    white-space: nowrap;
}
.sp-price-inquiry .sp-price-inq-label i { color: #FF6B1A; font-size: 14px; }
.sp-price-inquiry .sp-price-inq-value {
    font-size: 21px;
    font-weight: 900;
    color: #C2410C;
    line-height: 1.4;
}
.sp-inquiry-row {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 4px;
}


/* ============================================================================
   v6.13.0 — کارت‌های «محصولات منتخب» صفحهٔ اصلی: کاملاً یکدست
   - بدنهٔ کارت فلکس-ستونی → ردیف دکمه همیشه در یک سطح (margin-top:auto)
   - عنوان دقیقاً دوخطی با برش خط سوم
   - تصویر aspect-ratio ثابت + object-fit:cover → هیچ بالا/پایین‌شدنی نیست
   - دکمهٔ گرد «+» افزودن به سبد با موتور واقعی AbzCart
   ============================================================================ */
.workshop-product {
    display: flex;
    flex-direction: column;
}

.workshop-product-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-width: 0;
}

.workshop-product h3 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    height: 46px; /* دقیقاً دو خط — همهٔ کارت‌ها هم‌قد */
}

.workshop-product-bottom,
.workshop-product-bottom.workshop-product-inq {
    margin-top: auto;
    padding-top: 10px;
    align-items: stretch;
}

.workshop-product-inq .abz-inquiry-btn {
    flex: 1 1 auto;
    min-width: 0;
    justify-content: center;
}

.workshop-product-inq .workshop-atc-mini {
    flex: 0 0 38px;
    width: 38px;
    min-width: 38px;
    height: 38px;
    border-radius: 10px;
}

.workshop-product-inq .workshop-atc-mini.abz-atc-done {
    background: linear-gradient(145deg, #16A34A, #15803D) !important;
}

/* دکمه خرید غیر-استعلامی هم هم‌راستا */
.workshop-product-bottom .workshop-add {
    align-self: flex-end;
}

@media (max-width: 680px) {
    .workshop-product h3 { height: 40px; }
    .workshop-product-inq .abz-inquiry-btn { font-size: 12px; }
}
