/* --- GLNZ Compare Section Styles --- */
/* Only new glnz elements are styled; all colors come from the site's palette. */
.glnz-add, .glnz-open, .glnz-close, .glnz-remove, .glnz-clear {
  font: inherit; color: var(--text); background: var(--card-white);
  border: 1px solid var(--border); cursor: pointer; border-radius: 12px;
  min-height: 44px; padding: 8px 14px; line-height: 1.5;
}
.glnz-add { display: block; width: calc(100% - 24px); margin: 0 12px 12px; }
.glnz-add[aria-pressed="true"] { background: var(--green); color: var(--white); }
.glnz-add:focus-visible, .glnz-open:focus-visible, .glnz-close:focus-visible,
.glnz-remove:focus-visible, .glnz-clear:focus-visible, .glnz-scroll:focus-visible {
  outline: 2px solid var(--gold); outline-offset: 3px;
}
.glnz-open { position: relative; display: inline-flex; align-items: center;
  justify-content: center; flex: 0 0 44px; width: 44px; height: 44px; padding: 10px; }
.glnz-icon { width: 20px; height: 20px; flex-shrink: 0; }
.glnz-badge { position: absolute; inset-inline-end: -2px; top: -3px;
  display: grid; place-items: center; min-width: 18px; height: 18px;
  padding: 0 3px; border-radius: 50%; background: var(--green); color: var(--white);
  font-size: 10px; line-height: 1; font-weight: 600; }
.glnz-dialog { box-sizing: border-box; position: fixed; inset: 0; margin: auto;
  width: min(1100px, calc(100% - 24px)); max-width: calc(100% - 24px);
  max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px);
  padding: 24px; overflow: auto; overscroll-behavior: contain;
  background: var(--card-white); color: var(--text); border: 1px solid var(--border);
  border-radius: 20px; box-shadow: var(--shadow); font: inherit;
  opacity: 0; transform: translateY(12px); transition: opacity .2s ease, transform .2s ease;
}
.glnz-dialog[open] { display: block; }
.glnz-dialog.glnz-visible { opacity: 1; transform: translateY(0); }
.glnz-dialog::backdrop { background: var(--border); }
.glnz-dialog-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.glnz-dialog-heading h2 { font-size: clamp(18px, 3vw, 26px); margin: 0; }
.glnz-close, .glnz-remove { min-width: 44px; font-size: 24px; }
.glnz-help, .glnz-panel-status { margin: 12px 0; color: var(--text-light); }
.glnz-scroll { overflow-x: auto; max-width: 100%; margin-block: 18px; overscroll-behavior-x: contain; }
.glnz-table { width: 100%; border-collapse: collapse; text-align: right; }
.glnz-table th, .glnz-table td { padding: 14px; border: 1px solid var(--border);
  min-width: 180px; vertical-align: top; overflow-wrap: anywhere; }
.glnz-table th:first-child { min-width: 108px; background: var(--white); }
.glnz-product-heading { display: flex; align-items: start; justify-content: space-between; gap: 8px; }
.glnz-product-image { width: 150px; height: 150px; object-fit: contain; margin: auto; }
.glnz-empty { padding: 40px 16px; text-align: center; }
.glnz-footer { display: flex; justify-content: flex-end; }
.glnz-clear:disabled { opacity: .5; cursor: default; }
.glnz-toast { position: fixed; inset-inline: 16px; bottom: 20px; z-index: 2147483647;
  margin-inline: auto; width: max-content; max-width: calc(100% - 32px);
  padding: 12px 20px; border: 1px solid var(--border); border-radius: 12px;
  background: var(--green); color: var(--white); box-shadow: var(--shadow);
  direction: rtl; pointer-events: none; }
.glnz-toast:empty { display: none; }
.glnz-sr-only { position: absolute; width: 1px; height: 1px; padding: 0;
  margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.glnz-dialog [hidden] { display: none !important; }
@media (max-width: 600px) {
  .glnz-dialog { padding: 16px; border-radius: 16px; }
  .glnz-table th, .glnz-table td { min-width: 160px; padding: 10px; }
  .glnz-table th:first-child { min-width: 92px; }
  .glnz-product-image { width: 130px; height: 130px; }
}
@media (prefers-reduced-motion: reduce) { .glnz-dialog { transition: none; transform: none; } }

/* --- GLNZ Compare: unified product buttons --- */

.glnz-add.glnz-all-add {
    box-sizing: border-box;

    display: flex;
    align-items: center;
    justify-content: center;

    width: calc(100% - 24px);
    max-width: calc(100% - 24px);
    min-width: 0;
    min-height: 44px;

    margin: 0 12px 12px;
    padding: 8px 14px;

    font: inherit;
    line-height: 1.5;
    text-align: center;
    direction: rtl;

    color: var(--text);
    background: var(--card-white);
    border: 1px solid var(--border);
    border-radius: 12px;

    white-space: normal;
    overflow-wrap: anywhere;
    cursor: pointer;
    touch-action: manipulation;

    /* برای فهرست‌هایی با چیدمان grid یا flex */
    grid-column: 1 / -1;
    flex: 0 1 auto;
    align-self: center;
}

/* محصول انتخاب‌شده برای مقایسه */
.glnz-add.glnz-all-add[aria-pressed="true"] {
    color: var(--white);
    background: var(--green);
}

/* نمایش واضح فوکوس هنگام استفاده از کیبورد */
.glnz-add.glnz-all-add:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
}

/* فاصله از نتیجهٔ جست‌وجو، لینک محصول یا دکمهٔ سبد */
.glnz-add.glnz-all-add {
    margin-block-start: 8px;
}

/* حفظ فاصلهٔ مشابه کارت‌های اولیه */
.product-card > .glnz-add.glnz-all-add,
.catalog-product > .glnz-add.glnz-all-add {
    margin-block-start: 0;
}

/* صفحهٔ اختصاصی محصول */
.product-detail-info .glnz-add.glnz-all-add {
    width: 100%;
    max-width: 100%;
    margin: 12px 0;
}

/* موبایل‌های کوچک */
@media (max-width: 359px) {
    .glnz-add.glnz-all-add {
        padding-inline: 10px;
        font-size: 13px;
        min-height: 44px;
    }
}
/* مخفی کردن دکمه مقایسه فقط در بنر اصلی */
.glzj .glnz-all-add {
    display: none !important;
}
