/* ==========================================================================
 *   CyberTech PC · שכבת עיצוב חדשה — מודרני, אלגנטי, מקצועי
 *   ההידר נשאר בדיוק כפי שהוא — קובץ זה מעבד רק את האזורים שמתחתיו.
 * ========================================================================== */

:root {
    --ct-bg: #f2f5fa;
    --ct-surface: #ffffff;
    --ct-surface-2: #f8fafc;
    --ct-ink: #0d1526;
    --ct-ink-soft: #5b6b84;
    --ct-muted: #8a99b3;
    --ct-line: #e4eaf3;
    --ct-accent: #2563eb;
    --ct-accent-2: #7c3aed;
    --ct-grad: linear-gradient(135deg, #2563eb 0%, #6d5df6 55%, #7c3aed 100%);
    --ct-grad-soft: linear-gradient(135deg, rgba(37, 99, 235, .10), rgba(124, 58, 237, .10));
    --ct-shadow-sm: 0 1px 2px rgba(13, 21, 38, .04), 0 4px 14px rgba(13, 21, 38, .06);
    --ct-shadow-md: 0 6px 18px rgba(13, 21, 38, .07), 0 16px 40px rgba(13, 21, 38, .07);
    --ct-shadow-lg: 0 12px 30px rgba(13, 21, 38, .10), 0 28px 70px rgba(13, 21, 38, .10);
    --ct-radius: 16px;
    --ct-radius-lg: 22px;
    --ct-radius-pill: 999px;
    --ct-ease: cubic-bezier(.22, .61, .36, 1);
}

/* ───────────────────────────
 *   בסיס
 * ─────────────────────────── */
html { scroll-behavior: smooth; }

body {
    margin: 0;
    background: var(--ct-bg);
    color: var(--ct-ink);
    font-family: 'Inter', 'Heebo', 'Segoe UI', Tahoma, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

::selection { background: rgba(37, 99, 235, .16); color: #0d1526; }
html[data-theme="dark"] ::selection { background: rgba(96, 165, 250, .25); color: #fff; }

* { scrollbar-width: thin; scrollbar-color: rgba(100, 116, 139, .4) transparent; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb {
    background: rgba(100, 116, 139, .35);
    border-radius: 10px;
    border: 2px solid transparent;
    background-clip: content-box;
}
::-webkit-scrollbar-thumb:hover {
    background: rgba(100, 116, 139, .55);
    border: 2px solid transparent;
    background-clip: content-box;
}

#productsGrid,
#productsquery { scroll-margin-top: 110px; }

.white-glass-header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

body.ct-modern-design {
    padding-top: 90px;
}

/* =========================================
 *   HERO — אזור פתיחה כהה ואלגנטי
 * ========================================= */
body .premium-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: clamp(48px, 7vw, 96px) clamp(16px, 4vw, 64px);
    background:
    radial-gradient(1100px 520px at 88% -12%, rgba(124, 58, 237, .28), transparent 58%),
    radial-gradient(900px 480px at 0% 108%, rgba(37, 99, 235, .22), transparent 55%),
    linear-gradient(155deg, #050a19 0%, #0a1230 52%, #0c0f2e 100%);
    border-bottom: 1px solid rgba(148, 163, 184, .16);
}

body .premium-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
    linear-gradient(rgba(148, 163, 184, .055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148, 163, 184, .055) 1px, transparent 1px);
    background-size: 46px 46px;
    mask-image: radial-gradient(ellipse at 72% 28%, #000 0%, transparent 68%);
    -webkit-mask-image: radial-gradient(ellipse at 72% 28%, #000 0%, transparent 68%);
}

body .premium-left {
    position: relative;
    z-index: 2;
    flex: 1 1 430px;
    max-width: 620px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

body .premium-left h2 {
    margin: 0;
    font-size: clamp(34px, 4.6vw, 58px);
    font-weight: 900;
    line-height: 1.04;
    letter-spacing: -.035em;
    background: linear-gradient(115deg, #ffffff 20%, #c3d2ff 65%, #a5b8ff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

body .premium-left h3 {
    margin: 14px 0 0;
    font-size: clamp(17px, 1.9vw, 22px);
    font-weight: 700;
    line-height: 1.5;
}

body .premium-left p {
    margin: 14px 0 0;
    max-width: 560px;
    color: rgba(226, 232, 240, .82);
    font-size: clamp(14.5px, 1.3vw, 16.5px);
    line-height: 1.85;
}

body .all-products-links { margin-top: 30px; }

body .all-products-links .cyber-btn-primary {
    padding: 13px 28px;
    font-size: 14.5px;
    font-weight: 800;
    border-radius: var(--ct-radius-pill);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .22);
    background: linear-gradient(135deg, #2563eb, #6d5df6);
    box-shadow: 0 14px 34px rgba(37, 99, 235, .38), inset 0 1px 0 rgba(255, 255, 255, .22);
    transition: transform .25s var(--ct-ease), box-shadow .25s ease, filter .25s ease;
}

body .all-products-links .cyber-btn-primary:hover {
    transform: translateY(-3px);
    filter: brightness(1.06);
    box-shadow: 0 20px 44px rgba(37, 99, 235, .46), inset 0 1px 0 rgba(255, 255, 255, .25);
}

body .all-products-links .reset-filter-btn {
    padding: 13px 24px;
    font-size: 14.5px;
    font-weight: 800;
    border-radius: var(--ct-radius-pill);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .22);
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15);
    transition: transform .25s var(--ct-ease), background .25s ease, box-shadow .25s ease;
}

body .all-products-links .reset-filter-btn:hover {
    transform: translateY(-3px);
    background: rgba(255, 255, 255, .15);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 12px 26px rgba(0, 0, 0, .25);
}

body .premium-right {
    position: relative;
    z-index: 2;
    flex: 1 1 420px;
    max-width: 640px;
    min-width: 300px;
}

/* ─────────── סליידר ─────────── */
body .hero-slider-box {
    border-radius: 26px;
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, .22);
    box-shadow: 0 40px 90px rgba(0, 0, 0, .5), 0 0 0 6px rgba(148, 163, 184, .06);
}

body .hero-slider {
    position: relative;
    aspect-ratio: 16 / 10;
    min-height: 300px;
    background-color: #0b1226 !important;
}

body .hero-slider .slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .8s ease, visibility .8s;
}

body .hero-slider .slide.active { opacity: 1; visibility: visible; }

body .hero-slider .slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body .slide-title {
    position: absolute;
    right: 16px;
    bottom: 40px;
    z-index: 4;
    max-width: 80%;
    padding: 9px 16px;
    border-radius: var(--ct-radius-pill);
    background: rgba(8, 13, 32, .55);
    border: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    color: #fff;
    font-size: 13.5px;
    font-weight: 700;
    line-height: 1.5;
}

body .slider-dots {
    position: absolute;
    bottom: 16px;
    right: 50%;
    transform: translateX(50%);
    z-index: 4;
    display: flex;
    gap: 7px;
}

body .slider-dot {
    width: 7px;
    height: 7px;
    border-radius: var(--ct-radius-pill);
    background: rgba(255, 255, 255, .4);
    cursor: pointer;
    transition: all .3s ease;
}

body .slider-dot.active {
    width: 26px;
    background: #fff;
    box-shadow: 0 0 12px rgba(255, 255, 255, .5);
}

body .slider-progress {
    position: absolute;
    inset: auto 0 0 0;
    height: 3px;
    z-index: 4;
    background: rgba(255, 255, 255, .12);
}

body .slider-progress-bar {
    height: 100%;
    width: 0;
    background: linear-gradient(90deg, #2563eb, #7c3aed);
}

@media (max-width: 900px) {
    body .premium-hero {
        flex-direction: column;
        align-items: stretch;
        padding: 44px 18px;
        gap: 30px;
    }
    body .premium-left,
    body .premium-right { max-width: 100%; min-width: 0; }
    body .hero-slider { aspect-ratio: 4 / 3; }
}

/* =========================================
 *   שירותים — ct-services
 * ========================================= */
body .ct-services {
    --cts-bg: transparent;
    --cts-card: var(--ct-surface);
    --cts-text: var(--ct-ink);
    --cts-muted: var(--ct-ink-soft);
    --cts-line: var(--ct-line);
    --cts-blue: var(--ct-accent);
    --cts-blue-2: #4f46e5;
    --cts-soft: rgba(37, 99, 235, .08);
    position: relative;
    padding: clamp(46px, 6vw, 84px) clamp(16px, 4vw, 64px);
    margin-top: 0;
    background:
    radial-gradient(900px 400px at 90% 0%, rgba(37, 99, 235, .06), transparent 55%),
    linear-gradient(180deg, #f7f9fd, #eef2f9);
    border: 0;
}

body .ct-services-shell { width: min(1360px, 100%); margin: 0 auto; }

body .ct-services-kicker { color: var(--ct-accent); letter-spacing: .16em; }
body .ct-services-kicker-dot { background: var(--ct-accent); box-shadow: 0 0 0 5px rgba(37, 99, 235, .12); }
body .ct-services-title-row h2 { color: var(--ct-ink); }
body .ct-services-title-row p { color: var(--ct-ink-soft); }

body .ct-services-contact {
    background: linear-gradient(135deg, #1e3a8a, #3730a3);
    border-radius: 16px;
    box-shadow: 0 14px 30px rgba(30, 58, 138, .28);
}

body .ct-services-rail { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }

body .ct-service-card {
    min-height: 200px;
    padding: 20px;
    border-radius: 20px;
    border: 1px solid var(--ct-line);
    background: var(--ct-surface);
    box-shadow: var(--ct-shadow-sm);
    transition: transform .28s var(--ct-ease), box-shadow .28s ease, border-color .28s ease;
}

body .ct-service-card::before { display: none; }

body .ct-service-card:hover,
body .ct-service-card:focus-within {
    transform: translateY(-5px);
    border-color: rgba(37, 99, 235, .32);
    box-shadow: var(--ct-shadow-lg);
}

body .ct-service-card-top {
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom-color: var(--ct-line);
}

body .ct-service-icon {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    background: var(--ct-grad);
    color: #fff;
    border: 0;
    box-shadow: 0 10px 22px rgba(37, 99, 235, .3);
}

body .ct-service-icon svg { stroke-width: 2; }

body .ct-service-card:hover .ct-service-icon,
body .ct-service-card:focus-within .ct-service-icon {
    background: var(--ct-grad);
    box-shadow: 0 12px 26px rgba(37, 99, 235, .38);
    transform: rotate(-5deg) scale(1.05);
}

body .ct-service-card-body h3 { font-size: 17px; }
body .ct-service-card-body p { color: var(--ct-ink-soft); }
body .ct-service-link { color: var(--ct-accent); font-weight: 800; }

body .ct-services-bottom {
    border-color: var(--ct-line);
    background: rgba(255, 255, 255, .75);
    border-radius: 18px;
    box-shadow: var(--ct-shadow-sm);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

@media (max-width: 1020px) {
    body .ct-services-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body .ct-services-title-row { flex-direction: column; align-items: flex-start; gap: 14px; }
}

@media (max-width: 620px) {
    body .ct-services { padding: 38px 14px 40px; }
    body .ct-services-rail {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        gap: 12px;
        padding-bottom: 12px;
    }
    body .ct-service-card { flex: 0 0 min(80vw, 300px); scroll-snap-align: start; }
    body .ct-services-bottom { grid-template-columns: 1fr; }
    body .ct-services-bottom-divider { width: 100%; height: 1px; }
}

/* =========================================
 *   קטגוריות — קרוסלה (ללא אפקט זום)
 * ========================================= */
body .categories-home { padding: clamp(30px, 4vw, 52px) 0; }

body .categories-carousel-wrapper {
    position: relative;
    width: min(1440px, calc(100% - 40px));
    margin: 0 auto;
}

body .categories-carousel {
    display: flex;
    gap: 14px;
    overflow-x: auto;
    scroll-behavior: smooth;
    scroll-snap-type: x proximity;
    padding: 6px 4px 14px;
    scrollbar-width: none;
}

body .categories-carousel::-webkit-scrollbar { display: none; }

body .carousel-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 6;
    width: 42px;
    height: 42px;
    border: 1px solid var(--ct-line);
    border-radius: 50%;
    background: var(--ct-surface);
    color: var(--ct-ink);
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    box-shadow: var(--ct-shadow-md);
    display: grid;
    place-items: center;
    transition: all .25s var(--ct-ease);
}

body .carousel-arrow:hover {
    background: var(--ct-accent);
    color: #fff;
    border-color: var(--ct-accent);
    transform: translateY(-50%) scale(1.06);
}

body .carousel-arrow-left { right: -18px; }
body .carousel-arrow-right { left: -18px; }

@media (max-width: 1100px) { body .carousel-arrow { display: none; } }

body .category-carousel-item {
    flex: 0 0 168px;
    width: 168px;
    scroll-snap-align: start;
    background: #fff;
    background-image: none;
    border: 1px solid var(--ct-line);
    border-radius: 20px;
    padding: 14px 12px 16px;
    text-decoration: none;
    transform: none;
    translate: none;
    box-shadow: var(--ct-shadow-sm);
    transition: border-color .35s ease, box-shadow .35s ease;
}

body .category-carousel-item:hover {
    transform: none;
    translate: none;
    border-color: rgba(37, 99, 235, .35);
    box-shadow: var(--ct-shadow-lg);
}

body .category-carousel-item.is-active-category {
    border-color: var(--ct-accent);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .15), var(--ct-shadow-md);
}

body .category-carousel-item.category-flip-360 { perspective: none; }

body .category-carousel-item.category-flip-360:hover .category-flip-inner,
body .category-carousel-item.category-flip-360:focus-visible .category-flip-inner {
    animation: none;
    transform: none;
}

/* ביטול מוחלט של אפקט הזום והאנימציות בתמונות הקרוסלה */
body .category-image img,
body .category-carousel-item .category-image img,
body .category-carousel-item:hover .category-image img,
body .category-carousel-item:focus .category-image img {
    width: 108px !important;
    height: 108px !important;
    object-fit: contain !important;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    transform: none !important;
    -webkit-transform: none !important;
    transition: none !important;
    -webkit-transition: none !important;
}

body .category-info h3 {
    margin: 10px 0 4px;
    font-size: 14.5px;
    font-weight: 800;
    color: var(--ct-ink);
}

body .category-info p {
    margin: 0;
    font-size: 12px;
    color: var(--ct-ink-soft);
    font-weight: 600;
}

/* =========================================
 *   סינון מהיר — Quick Filter
 * ========================================= */
body .quick-filter-toggle-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
    width: min(1440px, calc(100% - 32px));
    padding: 0;
    margin: 26px auto 10px;
}

body .quick-filter-toggle-button {
    border-radius: 12px;
    padding: 10px 18px;
    font-size: 13px;
    background: linear-gradient(135deg, #1e3a8a, #3730a3);
    box-shadow: 0 10px 24px rgba(30, 58, 138, .28);
}

body .quick-filter-toggle-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(30, 58, 138, .34);
}

body .quick-filter-toggle-wrap .reset-filter-btn {
    background: linear-gradient(135deg, #f43f5e, #e11d48);
    color: #fff;
    border: 0;
    border-radius: 12px;
    padding: 10px 18px;
    font-size: 12.5px;
    box-shadow: 0 10px 22px rgba(225, 29, 72, .25);
}

body .quick-filter-toggle-wrap .reset-filter-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(225, 29, 72, .32);
}

body .quick-filter-section {
    width: min(1440px, calc(100% - 32px));
    padding: 0;
}

body .quick-filter-table {
    border-radius: 20px;
    border-color: var(--ct-line);
    background: var(--ct-surface);
    box-shadow: var(--ct-shadow-md);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

body .quick-filter-heading strong { color: var(--ct-ink); }
body .quick-filter-icon { background: var(--ct-grad); }

body .quick-filter-manual-input,
body .quick-filter-price-control input,
body .quick-filter-price-control button,
body .quick-filter-sort select {
    border-color: var(--ct-line);
    background: var(--ct-surface-2);
    color: var(--ct-ink);
}

body .quick-filter-manual-input input { color: var(--ct-ink); }
body .quick-filter-reset { border-color: var(--ct-line); background: var(--ct-surface-2); color: var(--ct-ink-soft); }
body .quick-filter-reset:hover { border-color: var(--ct-accent); color: var(--ct-accent); }

/* =========================================
 *   סרגל סינון חכם — Facet Sidebar
 * ========================================= */
body .products-with-facets.products-with-facets {
    width: min(1440px, calc(100% - 32px));
    margin: 0 auto 70px;
    padding: 0;
    grid-template-columns: minmax(290px, 330px) minmax(0, 1fr) !important;
    gap: 24px !important;
}

body .products-with-facets.is-filter-collapsed.products-with-facets {
    grid-template-columns: minmax(0, 1fr) !important;
}

@media (max-width: 1200px) {
    body .product-facet-sidebar {
        position: relative !important;
        width: 100% !important;
        max-height: none !important;
    }
    body .products-with-facets.products-with-facets {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

body .product-facet-sidebar {
    border-radius: 22px;
    border: 1px solid var(--ct-line);
    background: var(--ct-surface);
    box-shadow: var(--ct-shadow-sm);
    overflow: hidden;
}

body .facet-sidebar-header {
    padding: 20px 20px 16px;
    border-bottom: 1px solid var(--ct-line);
    background:
    radial-gradient(220px 120px at 90% -20%, rgba(37, 99, 235, .10), transparent 70%),
    var(--ct-surface);
}

body .facet-eyebrow {
    color: var(--ct-accent);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .16em;
}

body .facet-sidebar-header h2 {
    color: var(--ct-ink);
    font-size: 17px;
    line-height: 1.4;
    margin: 5px 0 0;
}

body .facet-result-count {
    background: var(--ct-grad);
    color: #fff;
    border-radius: 12px;
    box-shadow: 0 8px 18px rgba(37, 99, 235, .28);
}

body .facet-group {
    padding: 16px 20px;
    border-bottom: 1px solid var(--ct-line);
}

body .facet-group-title {
    color: var(--ct-ink);
    font-weight: 800;
    font-size: 13.5px;
}

body .facet-group-title small {
    background: var(--ct-grad-soft);
    color: var(--ct-accent);
    border-radius: var(--ct-radius-pill);
    padding: 2px 9px;
    font-size: 11px;
    font-weight: 800;
}

body .facet-step {
    display: inline-grid;
    place-items: center;
    width: 20px;
    height: 20px;
    border-radius: 7px;
    background: var(--ct-grad);
    color: #fff;
    font-size: 11px;
    margin-inline-end: 6px;
}

body .facet-option { padding: 6px 8px; border-radius: 11px; }
body .facet-option:hover { background: rgba(37, 99, 235, .06); }
body .facet-option.is-checked { background: rgba(37, 99, 235, .08); }

body .facet-label { color: var(--ct-ink-soft); font-weight: 600; }
body .facet-option.is-checked .facet-label { color: var(--ct-accent); }

body .facet-square {
    border-radius: 6px;
    border-color: #cbd5e1;
    background: #fff;
}

body .facet-option.is-checked .facet-square {
    background: var(--ct-accent);
    border-color: var(--ct-accent);
    box-shadow: 0 4px 10px rgba(37, 99, 235, .35);
}

body .facet-count {
    background: rgba(148, 163, 184, .1);
    color: var(--ct-muted);
    font-weight: 700;
}

body .facet-actions { padding: 16px 20px; }
body .facet-reset { color: #e11d48; font-weight: 800; font-size: 12.5px; }
body .facet-reset:hover { text-decoration: underline; }

body .facet-guidance {
    border: 1px dashed var(--ct-line);
    border-radius: 14px;
    padding: 14px;
    background: var(--ct-surface-2);
    text-align: center;
}

body .facet-guidance strong { color: var(--ct-ink); font-size: 13px; display: block; margin: 6px 0 2px; }
body .facet-guidance small { color: var(--ct-ink-soft); font-size: 11.5px; }
body .facet-empty { color: var(--ct-ink-soft); font-size: 12.5px; }

/* =========================================
 *   רשת המוצרים וכרטיסי המוצר
 * ========================================= */
body .stock-out {
    background: rgba(239, 68, 68, .12);
    color: #b91c1c;
}

body .product-image {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 190px;
    padding: 12px;
    overflow: hidden;
    border-radius: 15px;
    background:
    radial-gradient(circle at 50% 30%, rgba(37, 99, 235, .06), transparent 48%),
    linear-gradient(180deg, #fbfdff, #f3f6fb);
}

body .product-name {
    min-height: 44px;
    color: var(--ct-ink);
    text-decoration: none;
    font-size: 13.5px;
    font-weight: 800;
    line-height: 1.55;
}

body .product-name:hover {
    color: var(--ct-accent);
}

body .product-price {
    display: block;
    margin-top: auto;
    color: #f97316;
    font-size: 19px;
    font-weight: 900;
    letter-spacing: -.02em;
}

body .product-form {
    display: grid;
    gap: 9px;
}

body .qty-row {
    display: grid;
    grid-template-columns: 40px minmax(48px, 1fr) 40px;
    gap: 7px;
    align-items: center;
}

body .qty-btn,
body .qty-input {
    height: 38px;
    border: 1px solid var(--ct-line);
    border-radius: 10px;
    background: var(--ct-surface-2);
    color: var(--ct-ink);
}

body .qty-btn {
    cursor: pointer;
    font-size: 18px;
    transition: background .2s ease, color .2s ease, border-color .2s ease;
}

body .qty-btn:hover:not(:disabled) {
    color: var(--ct-accent);
    border-color: rgba(37, 99, 235, .35);
    background: rgba(37, 99, 235, .06);
}

body .qty-input {
    width: 100%;
    text-align: center;
    font-weight: 800;
}

body .btn-outline {
    background: transparent;
    cursor: pointer;
    transition: transform .2s ease, background .25s ease, color .25s ease;
}

body .btn-outline:hover { transform: translateY(-2px); }
body .btn-outline:active { transform: scale(.95); }

body .qty-btn:disabled,
body .add-btn:disabled {
    cursor: not-allowed;
    opacity: .48;
    box-shadow: none;
}

/* ADD TO CART */
html body .products-grid .product-card .add-btn:not(:disabled) {
    background: transparent !important;
    color: #2563eb !important;
    border: 1px solid #2563eb !important;
    border-radius: 10px;
    cursor: pointer;
/*    box-shadow: none !important;
    animation: none !important;
    transition: transform .2s ease, background .25s ease, color .25s ease, border-color .25s ease, box-shadow .25s ease !important;
}*/

html body .products-grid .product-card .add-btn:not(:disabled):hover {
    background: #2563eb !important;
    color: #fff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 5px 14px rgba(37, 99, 235, .18) !important;
}

html body .products-grid .product-card .add-btn:not(:disabled):active {
    transform: scale(.95) !important;
    box-shadow: none !important;
}

html body .products-grid .product-card .add-btn:disabled,
html body .products-grid .product-card .out-of-stock-btn {
    background: #fff !important;
    color: #dc2626 !important;
    border: 1px solid #fecaca !important;
    cursor: not-allowed !important;
    transform: none !important;
    box-shadow: none !important;
}

/* ct-services compact */
body .ct-services {
    position: relative;
    width: 100%;
    padding: 42px 20px 38px !important;
    margin: 0 !important;
    overflow: hidden;
    background:
    radial-gradient(700px 300px at 94% 0%, rgba(37, 99, 235, .075), transparent 62%),
    radial-gradient(580px 260px at 2% 100%, rgba(124, 58, 237, .055), transparent 66%),
    linear-gradient(180deg, #f7f9fd 0%, #f2f5fa 100%) !important;
}

body .ct-services-shell {
    width: min(1280px, 100%) !important;
    margin: 0 auto !important;
}

body .ct-services-heading {
    display: block !important;
    margin: 0 0 18px !important;
}

body .ct-services-kicker {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 7px !important;
    color: var(--ct-accent) !important;
    font-size: 10.5px !important;
    font-weight: 900 !important;
    letter-spacing: .17em !important;
}

body .ct-services-title-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 20px !important;
}

body .ct-services-title-row > div { min-width: 0; }

body .ct-services-title-row h2 {
    margin: 0 !important;
    color: var(--ct-ink) !important;
    font-size: clamp(25px, 2.7vw, 38px) !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    letter-spacing: -.035em !important;
}

body .ct-services-title-row p {
    max-width: 650px;
    margin: 7px 0 0 !important;
    color: var(--ct-ink-soft) !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
}

body .ct-services-contact {
    flex: 0 0 auto !important;
    min-width: 195px !important;
    padding: 10px 14px !important;
    border: 1px solid rgba(255, 255, 255, .14) !important;
    border-radius: 13px !important;
    background: linear-gradient(135deg, #1d4ed8, #4338ca) !important;
    color: #fff !important;
    text-decoration: none !important;
    box-shadow: 0 9px 22px rgba(37, 99, 235, .22) !important;
}

body .ct-services-swipe-hint { display: none; }

body .ct-services-rail {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    align-items: stretch !important;
    width: 100% !important;
    overflow: visible !important;
}

body .ct-service-card {
    position: relative !important;
    isolation: isolate !important;
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    width: auto !important;
    height: auto !important;
    min-height: 188px !important;
    max-height: none !important;
    padding: 16px 17px 15px !important;
    overflow: hidden !important;
    border: 1px solid var(--ct-line) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, .96) !important;
    box-shadow: 0 5px 18px rgba(15, 23, 42, .055) !important;
    transform: none;
    transition: transform .26s var(--ct-ease), box-shadow .26s ease, border-color .26s ease !important;
}

body .ct-service-card::before,
body .ct-service-card::after {
    content: none !important;
    display: none !important;
}

body .ct-service-card:hover,
body .ct-service-card:focus-within {
    transform: translateY(-4px) !important;
    border-color: rgba(37, 99, 235, .28) !important;
    box-shadow: 0 15px 34px rgba(15, 23, 42, .09), 0 0 0 1px rgba(37, 99, 235, .03) !important;
}

body .ct-service-card-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 40px !important;
    margin: 0 0 13px !important;
    padding: 0 0 11px !important;
    border-bottom: 1px solid rgba(226, 232, 240, .9) !important;
}

body .ct-service-number {
    color: #94a3b8 !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: .16em !important;
}

body .ct-service-icon {
    flex: 0 0 40px !important;
    display: inline-grid !important;
    place-items: center !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    max-width: 40px !important;
    max-height: 40px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #2563eb, #6366f1) !important;
    color: #fff !important;
    box-shadow: 0 7px 16px rgba(37, 99, 235, .22) !important;
}

body .ct-service-icon svg {
    display: block !important;
    flex: none !important;
    width: 21px !important;
    height: 21px !important;
    min-width: 21px !important;
    min-height: 21px !important;
    max-width: 21px !important;
    max-height: 21px !important;
    overflow: visible !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.9 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

body .ct-service-icon svg path,
body .ct-service-icon svg circle,
body .ct-service-icon svg rect,
body .ct-service-icon svg line,
body .ct-service-icon svg polyline,
body .ct-service-icon svg polygon {
    fill: none !important;
    stroke: currentColor !important;
}

body .ct-service-card-body { min-width: 0 !important; }

body .ct-service-card-body h3 {
    margin: 0 0 6px !important;
    color: var(--ct-ink) !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    font-weight: 900 !important;
}

body .ct-service-card-body p {
    margin: 0 !important;
    color: var(--ct-ink-soft) !important;
    font-size: 12.6px !important;
    line-height: 1.62 !important;
}

body .ct-service-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    width: fit-content !important;
    margin-top: auto !important;
    padding-top: 11px !important;
    color: var(--ct-accent) !important;
    text-decoration: none !important;
    font-size: 12px !important;
    font-weight: 850 !important;
}

body .ct-service-link::before {
    content: "" !important;
    display: block !important;
    width: 15px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: currentColor !important;
    opacity: .28 !important;
    transition: width .22s ease, opacity .22s ease !important;
}

body .ct-service-link:hover::before {
    width: 23px !important;
    opacity: .65 !important;
}

body .ct-services-bottom {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr auto 1fr !important;
    align-items: center !important;
    gap: 14px !important;
    margin: 12px 0 0 !important;
    padding: 11px 15px !important;
    border: 1px solid var(--ct-line) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, .76) !important;
    box-shadow: 0 4px 14px rgba(15, 23, 42, .035) !important;
}

body .ct-services-bottom-item strong {
    display: block;
    margin-bottom: 2px;
    color: var(--ct-ink);
    font-size: 12px;
    font-weight: 900;
}

body .ct-services-bottom-item span {
    display: block;
    color: var(--ct-ink-soft);
    font-size: 11px;
    line-height: 1.45;
}

body .ct-services-bottom-divider {
    width: 1px !important;
    height: 25px !important;
    background: var(--ct-line) !important;
}

@media (min-width: 1201px) {
    body .products-with-facets.products-with-facets {
        grid-template-columns: clamp(315px, 23vw, 350px) minmax(0, 1fr) !important;
        gap: 22px !important;
    }

    body .product-facet-sidebar {
        width: 100% !important;
        min-width: 315px !important;
        max-width: 350px !important;
    }

    body .facet-sidebar-header,
    body .facet-group,
    body .facet-actions {
        padding-inline: 18px !important;
    }

    body .facet-label {
        font-size: 14px !important;
        line-height: 1.45 !important;
    }
}

/* =========================================
 *   מצב כהה
 * ========================================= */
html[data-theme="dark"] {
    --ct-bg: #08111f;
    --ct-surface: #0f1b2e;
    --ct-surface-2: #132238;
    --ct-ink: #f8fafc;
    --ct-ink-soft: #a8b7cc;
    --ct-muted: #7f91aa;
    --ct-line: rgba(148, 163, 184, .17);
}

html[data-theme="dark"] body {
    background: var(--ct-bg);
    color: var(--ct-ink);
}

html[data-theme="dark"] body .ct-services {
    background:
    radial-gradient(700px 300px at 94% 0%, rgba(37, 99, 235, .13), transparent 62%),
    linear-gradient(180deg, #091321, #08111f) !important;
}

html[data-theme="dark"] body .ct-service-card {
    background: rgba(15, 27, 46, .96) !important;
    border-color: rgba(148, 163, 184, .16) !important;
}

html[data-theme="dark"] body .ct-service-card-top {
    border-bottom-color: rgba(148, 163, 184, .14) !important;
}

html[data-theme="dark"] body .ct-services-bottom {
    background: rgba(15, 27, 46, .78) !important;
}

html[data-theme="dark"] body .product-image {
    background:
    radial-gradient(circle at 50% 30%, rgba(59, 130, 246, .08), transparent 48%),
    linear-gradient(180deg, #132238, #0f1b2e);
}

/* =========================================
 *   Responsive
 * ========================================= */
@media (max-width: 1020px) {
    body .ct-services-title-row {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 12px !important;
    }

    body .ct-services-contact {
        min-width: 0 !important;
        width: min(100%, 320px) !important;
    }

    body .ct-services-rail {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body .ct-services-bottom {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    body .ct-services-bottom-divider {
        width: 100% !important;
        height: 1px !important;
    }
}

@media (max-width: 640px) {
    body .ct-services {
        padding: 32px 0 30px !important;
    }

    body .ct-services-heading,
    body .ct-services-bottom {
        margin-inline: 12px !important;
    }

    body .ct-services-title-row h2 {
        font-size: 26px !important;
    }

    body .ct-services-swipe-hint {
        display: inline-flex !important;
        margin-top: 9px !important;
        color: var(--ct-muted) !important;
        font-size: 11.5px !important;
        font-weight: 750 !important;
    }

    body .ct-services-rail {
        display: flex !important;
        gap: 10px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x mandatory !important;
        overscroll-behavior-inline: contain;
        padding: 2px 12px 13px !important;
        scrollbar-width: thin;
    }

    body .ct-service-card {
        flex: 0 0 min(82vw, 292px) !important;
        min-height: 202px !important;
        scroll-snap-align: start !important;
    }

    body .products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    body .product-image {
        min-height: 145px;
        padding: 8px;
    }

    body .product-card {
        padding: 9px 9px 12px;
        border-radius: 15px;
    }

    body .product-name {
        min-height: 40px;
        font-size: 12px;
    }

    body .product-price {
        font-size: 17px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}

/* =========================================================
 *   CATALOG / FACET SCROLL FIX v3.2
 *   ========================================================= */

body .categories-carousel {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 16px !important;
    scrollbar-width: thin !important;
    scrollbar-color: #60a5fa rgba(148,163,184,.14) !important;
    scrollbar-gutter: stable;
    overscroll-behavior-inline: contain;
}

body .categories-carousel::-webkit-scrollbar {
    display: block !important;
    height: 7px !important;
}

body .categories-carousel::-webkit-scrollbar-track {
    background: rgba(148,163,184,.12) !important;
    border-radius: 999px !important;
}

body .categories-carousel::-webkit-scrollbar-thumb {
    background: linear-gradient(90deg,#60a5fa,#2563eb) !important;
    border-radius: 999px !important;
    border: 1px solid transparent !important;
    background-clip: padding-box !important;
}

body .categories-carousel::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(90deg,#3b82f6,#1d4ed8) !important;
    background-clip: padding-box !important;
}

body .categories-carousel-wrapper {
    padding-inline: 8px !important;
}

body .categories-carousel {
    padding-inline: 8px !important;
}

@media (min-width: 1201px) {
    body .products-with-facets.products-with-facets {
        align-items: start !important;
        overflow: visible !important;
    }

    body .product-facet-sidebar {
        position: sticky !important;
        top: 104px !important;
        align-self: start !important;
        max-height: calc(100vh - 124px) !important;
        overflow: hidden !important;
        z-index: 20 !important;
    }

    body .facet-filter-form {
        min-height: 0 !important;
        height: 100% !important;
    }

    body .facet-sidebar-body {
        min-height: 0 !important;
        max-height: calc(100vh - 124px) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        overscroll-behavior: contain !important;
        scrollbar-width: thin !important;
        scrollbar-color: rgba(37,99,235,.65) rgba(148,163,184,.12) !important;
    }

    body .facet-sidebar-body::-webkit-scrollbar {
        width: 8px !important;
    }

    body .facet-sidebar-body::-webkit-scrollbar-track {
        background: rgba(148,163,184,.10) !important;
    }

    body .facet-sidebar-body::-webkit-scrollbar-thumb {
        background: rgba(37,99,235,.62) !important;
        border-radius: 999px !important;
        border: 2px solid transparent !important;
        background-clip: padding-box !important;
    }

    body .facet-sidebar-header {
        position: sticky !important;
        top: 0 !important;
        z-index: 8 !important;
        background:
        radial-gradient(220px 120px at 90% -20%, rgba(37,99,235,.10), transparent 70%),
        var(--ct-surface) !important;
        box-shadow: 0 1px 0 var(--ct-line) !important;
    }
}

body .facet-category-group .facet-category-options {
    max-height: 250px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-inline-end: 4px !important;
    overscroll-behavior: contain !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(37,99,235,.62) rgba(148,163,184,.10) !important;
}

body .facet-brand-group .facet-options {
    max-height: 270px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-inline-end: 4px !important;
    overscroll-behavior: contain !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(79,70,229,.60) rgba(148,163,184,.10) !important;
}

body .facet-series-group .facet-options {
    max-height: 220px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-inline-end: 4px !important;
    overscroll-behavior: contain !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(14,165,233,.58) rgba(148,163,184,.10) !important;
}

body .facet-category-group .facet-category-options::-webkit-scrollbar,
body .facet-brand-group .facet-options::-webkit-scrollbar,
body .facet-series-group .facet-options::-webkit-scrollbar {
    width: 7px !important;
}

body .facet-category-group .facet-category-options::-webkit-scrollbar-track,
body .facet-brand-group .facet-options::-webkit-scrollbar-track,
body .facet-series-group .facet-options::-webkit-scrollbar-track {
    background: rgba(148,163,184,.09) !important;
    border-radius: 999px !important;
}

body .facet-category-group .facet-category-options::-webkit-scrollbar-thumb,
body .facet-brand-group .facet-options::-webkit-scrollbar-thumb,
body .facet-series-group .facet-options::-webkit-scrollbar-thumb {
    background: rgba(37,99,235,.58) !important;
    border-radius: 999px !important;
}

body .facet-group-title {
    position: sticky;
    top: 0;
    z-index: 2;
    padding-block: 4px 7px;
    background: var(--ct-surface);
}

@media (max-width: 1200px) {
    body .product-facet-sidebar {
        position: relative !important;
        top: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body .facet-sidebar-body {
        max-height: none !important;
        overflow: visible !important;
    }

    body .facet-category-group .facet-category-options,
    body .facet-brand-group .facet-options,
    body .facet-series-group .facet-options {
        max-height: 240px !important;
        overflow-y: auto !important;
    }
}

html[dir="rtl"] body .categories-carousel {
    direction: rtl;
}

html[data-theme="dark"] body .facet-group-title {
    background: var(--ct-surface);
}

body .quick-filter-toggle-wrap {
    margin-top: 34px !important;
}

body .products-with-facets {
    scroll-margin-top: 110px;
}

body #productsGrid {
    scroll-margin-top: 120px;
}

/* =========================================================
 *   UI FIX v3.14 — Quick filter + category carousel arrows
 *   ========================================================= */

body .quick-filter-toggle-wrap {
    position: relative !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    width: min(1440px, calc(100% - 32px)) !important;
    margin: 28px auto 10px !important;
    padding: 0 !important;
}

body .quick-filter-toggle-button,
body .quick-filter-toggle-wrap .reset-filter-btn {
    min-height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 13px !important;
    border: 0 !important;
    text-decoration: none !important;
    font-family: inherit !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

body .quick-filter-toggle-button {
    color: #fff !important;
    background: linear-gradient(135deg, #1d4ed8, #3730a3) !important;
    box-shadow: 0 10px 24px rgba(37, 99, 235, .22) !important;
}

body .quick-filter-toggle-wrap .reset-filter-btn {
    color: #fff !important;
    background: linear-gradient(135deg, #f43f5e, #e11d48) !important;
    box-shadow: 0 10px 22px rgba(225, 29, 72, .20) !important;
}

body .quick-filter-toggle-arrow {
    display: inline-block !important;
    font-size: 10px !important;
    transition: transform .22s ease !important;
}

body .quick-filter-toggle-button[aria-expanded="true"] .quick-filter-toggle-arrow {
    transform: rotate(180deg) !important;
}

body .quick-filter-section {
    position: relative !important;
    z-index: 4 !important;
    display: block;
    width: min(1440px, calc(100% - 32px)) !important;
    margin: 0 auto 18px !important;
    padding: 0 !important;
}

body .quick-filter-section[hidden] {
    display: none !important;
}

body .quick-filter-table {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(190px, .72fr) minmax(430px, 1.55fr) minmax(220px, .8fr) auto !important;
    align-items: end !important;
    gap: 18px !important;
    margin: 0 !important;
    padding: 20px 22px !important;
    border: 1px solid rgba(148, 163, 184, .24) !important;
    border-radius: 20px !important;
    background:
    radial-gradient(circle at 100% 0%, rgba(37,99,235,.075), transparent 34%),
    rgba(255,255,255,.97) !important;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .085) !important;
    overflow: hidden !important;
}

body .quick-filter-heading {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-width: 0 !important;
    align-self: center !important;
}

body .quick-filter-icon {
    flex: 0 0 42px !important;
    width: 42px !important;
    height: 42px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 13px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #2563eb, #4f46e5) !important;
    box-shadow: 0 9px 20px rgba(37,99,235,.22) !important;
    font-size: 17px !important;
}

body .quick-filter-heading > div { min-width: 0 !important; }

body .quick-filter-heading strong {
    display: block !important;
    margin: 0 0 3px !important;
    color: #0f172a !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 900 !important;
}

body .quick-filter-heading small {
    display: block !important;
    color: #64748b !important;
    font-size: 11.5px !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
}

body .quick-filter-price {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    grid-template-areas:
    "label label label"
    "min sep max" !important;
    gap: 7px 10px !important;
    align-items: end !important;
    min-width: 0 !important;
}

body .quick-filter-label {
    grid-area: label !important;
    display: block !important;
    color: #475569 !important;
    font-size: 11.5px !important;
    font-weight: 850 !important;
}

body .quick-filter-price-item:first-of-type { grid-area: min !important; }
body .quick-filter-price-item:last-of-type { grid-area: max !important; }
body .quick-filter-price-item { min-width: 0 !important; }

body .quick-filter-price-item > label,
body .quick-filter-sort > label {
    display: block !important;
    margin: 0 0 5px !important;
    color: #64748b !important;
    font-size: 10.5px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
}

body .quick-filter-separator {
    grid-area: sep !important;
    align-self: end !important;
    padding-bottom: 13px !important;
    color: #94a3b8 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}

body .quick-filter-manual-input {
    width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    padding: 0 12px !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 12px !important;
    background: #f8fafc !important;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}

body .quick-filter-manual-input:focus-within {
    border-color: #60a5fa !important;
    background: #fff !important;
    box-shadow: 0 0 0 3px rgba(37,99,235,.10) !important;
}

body .quick-filter-manual-input > span {
    flex: 0 0 auto !important;
    color: #64748b !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}

body .quick-filter-manual-input input {
    min-width: 0 !important;
    width: 100% !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    color: #0f172a !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    text-align: right !important;
    appearance: textfield !important;
    -moz-appearance: textfield !important;
}

body .quick-filter-manual-input input::-webkit-outer-spin-button,
body .quick-filter-manual-input input::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

body .quick-filter-manual-input input::placeholder {
    color: #94a3b8 !important;
    opacity: 1 !important;
    font-weight: 500 !important;
}

body .quick-filter-sort { min-width: 0 !important; }

body .quick-filter-sort select {
    width: 100% !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 12px !important;
    outline: none !important;
    background: #f8fafc !important;
    color: #0f172a !important;
    font-family: inherit !important;
    font-size: 12.5px !important;
    font-weight: 750 !important;
    cursor: pointer !important;
}

body .quick-filter-sort select:focus {
    border-color: #60a5fa !important;
    background: #fff !important;
    box-shadow: 0 0 0 3px rgba(37,99,235,.10) !important;
}

body .quick-filter-reset {
    align-self: end !important;
    min-height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 14px !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 12px !important;
    background: #f8fafc !important;
    color: #475569 !important;
    text-decoration: none !important;
    font-size: 11.5px !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
}

body .quick-filter-reset:hover {
    border-color: #60a5fa !important;
    color: #1d4ed8 !important;
    background: #eff6ff !important;
}

/* CAROUSEL ARROWS */
body .categories-carousel-wrapper {
    position: relative !important;
    overflow: visible !important;
    isolation: isolate !important;
}

body .carousel-arrow {
    position: absolute !important;
    top: 50% !important;
    right: auto !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    z-index: 20 !important;
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    display: grid !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(148,163,184,.34) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.96) !important;
    color: #1d4ed8 !important;
    box-shadow: 0 10px 28px rgba(15,23,42,.13) !important;
    font-size: 0 !important;
    line-height: 0 !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

body .carousel-arrow::before,
body .carousel-arrow::after {
    content: none !important;
    display: none !important;
}

body .carousel-arrow-left {
    left: -20px !important;
    right: auto !important;
}

body .carousel-arrow-right {
    right: -20px !important;
    left: auto !important;
}

body .carousel-arrow .ct-carousel-chevron {
    width: 19px !important;
    height: 19px !important;
    display: block !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.4 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    pointer-events: none !important;
}

body .carousel-arrow:hover {
    color: #fff !important;
    border-color: #2563eb !important;
    background: linear-gradient(135deg,#2563eb,#4f46e5) !important;
    transform: translateY(-50%) scale(1.06) !important;
    box-shadow: 0 14px 30px rgba(37,99,235,.27) !important;
}

body .carousel-arrow:active {
    transform: translateY(-50%) scale(.97) !important;
}

body .carousel-arrow:focus-visible {
    outline: 3px solid rgba(37,99,235,.22) !important;
    outline-offset: 3px !important;
}

body .quick-filter-reset {
    grid-column: 1 / -1 !important;
    justify-self: start !important;
}

@media (max-width: 760px) {
    body .quick-filter-toggle-wrap {
        width: calc(100% - 24px) !important;
        margin-top: 20px !important;
    }

    body .quick-filter-toggle-button,
    body .quick-filter-toggle-wrap .reset-filter-btn {
        flex: 1 1 auto !important;
    }

    body .quick-filter-section {
        width: calc(100% - 24px) !important;
    }

    body .quick-filter-table {
        grid-template-columns: 1fr !important;
        gap: 15px !important;
        padding: 17px !important;
    }

    body .quick-filter-price {
        grid-template-columns: 1fr !important;
        grid-template-areas:
        "label"
        "min"
        "max" !important;
    }

    body .quick-filter-separator {
        display: none !important;
    }

    body .quick-filter-reset {
        width: 100% !important;
        justify-self: stretch !important;
    }

    body .carousel-arrow {
        display: none !important;
    }
}

html[data-theme="dark"] body .quick-filter-table {
    border-color: rgba(148,163,184,.16) !important;
    background:
    radial-gradient(circle at 100% 0%, rgba(37,99,235,.11), transparent 34%),
    rgba(15,27,46,.96) !important;
}

html[data-theme="dark"] body .quick-filter-heading strong,
html[data-theme="dark"] body .quick-filter-manual-input input,
html[data-theme="dark"] body .quick-filter-sort select {
    color: #f8fafc !important;
}

html[data-theme="dark"] body .quick-filter-heading small,
html[data-theme="dark"] body .quick-filter-label,
html[data-theme="dark"] body .quick-filter-price-item > label,
html[data-theme="dark"] body .quick-filter-sort > label {
    color: #a7b5c9 !important;
}

html[data-theme="dark"] body .quick-filter-manual-input,
html[data-theme="dark"] body .quick-filter-sort select,
html[data-theme="dark"] body .quick-filter-reset {
    border-color: rgba(148,163,184,.16) !important;
    background: rgba(17,30,50,.92) !important;
}

html[data-theme="dark"] body .carousel-arrow {
    border-color: rgba(148,163,184,.2) !important;
    background: rgba(17,30,50,.96) !important;
    color: #93c5fd !important;
}

/* =========================================================
 *   OUT OF STOCK — CLEAN PRODUCT CARD v3.15
 *   ========================================================= */

body .product-card.is-out-of-stock .qty-row,
body .product-card:has(.product-stock.stock-out) .qty-row {
    display: none !important;
}

body .product-card.is-out-of-stock .qty-btn,
body .product-card.is-out-of-stock .qty-input,
body .product-card:has(.product-stock.stock-out) .qty-btn,
body .product-card:has(.product-stock.stock-out) .qty-input {
    display: none !important;
}

body .product-card.is-out-of-stock .product-form,
body .product-card:has(.product-stock.stock-out) .product-form {
    margin-top: auto !important;
    display: grid !important;
    gap: 0 !important;
}

body .product-card .out-of-stock-btn,
body .product-card.is-out-of-stock .add-btn:disabled,
body .product-card:has(.product-stock.stock-out) .add-btn:disabled {
    width: 100% !important;
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 9px 12px !important;
    border: 1px solid rgba(239, 68, 68, .18) !important;
    border-radius: 11px !important;
    background: rgba(254, 242, 242, .82) !important;
    color: #b91c1c !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    box-shadow: none !important;
    cursor: default !important;
    pointer-events: none !important;
}

body .product-card.is-out-of-stock .add-btn:disabled:not(.out-of-stock-btn),
body .product-card:has(.product-stock.stock-out) .add-btn:disabled:not(.out-of-stock-btn) {
    font-size: 0 !important;
}

body .product-card.is-out-of-stock .add-btn:disabled:not(.out-of-stock-btn)::after,
body .product-card:has(.product-stock.stock-out) .add-btn:disabled:not(.out-of-stock-btn)::after {
    content: "אזל מהמלאי";
    font-size: 12px;
    font-weight: 850;
}

body .product-card.is-out-of-stock .product-stock.stock-out,
body .product-card:has(.product-stock.stock-out) .product-stock.stock-out {
    color: #b91c1c !important;
    background: rgba(254, 226, 226, .90) !important;
    border: 1px solid rgba(239, 68, 68, .22) !important;
}

body .product-card.is-out-of-stock:hover,
body .product-card:has(.product-stock.stock-out):hover {
    transform: translateY(-2px) !important;
}

@media (max-width: 760px) {
    body .product-card .out-of-stock-btn,
    body .product-card.is-out-of-stock .add-btn:disabled,
    body .product-card:has(.product-stock.stock-out) .add-btn:disabled {
        min-height: 39px !important;
        padding: 8px 9px !important;
        font-size: 11.5px !important;
    }
}

/* =========================================================
 *   PRODUCT CARD v3.16
 *   ========================================================= */

body .products-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 22px 16px !important;
    align-items: start !important;
}

body .product-card {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    min-height: 0 !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 4px 12px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

body .product-card:hover {
    transform: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
}

/* IMAGE PANEL */
body .product-card .product-image {
    position: relative !important;
    width: 100% !important;
    height: 205px !important;
    min-height: 205px !important;
    max-height: 205px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 0 4px !important;
    padding: 7px !important;
    overflow: hidden !important;
    border: 1px solid rgba(219, 228, 240, .58) !important;
    border-radius: 15px !important;
    background:
    radial-gradient(circle at 50% 32%, rgba(37, 99, 235, .055), transparent 50%),
    linear-gradient(180deg, #fafcff 0%, #f3f6fb 100%) !important;
    box-shadow: 0 6px 18px rgba(15, 23, 42, .035) !important;
}

/* ביטול אפקט הזום בכרטיס מוצר בעת Hover */
body .product-card .product-image img,
body .product-card:hover .product-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 210px !important;
    max-height: 188px !important;
    margin: auto !important;
    object-fit: contain !important;
    object-position: center !important;
    transform: none !important;
    -webkit-transform: none !important;
    transition: none !important;
}

/* STOCK BADGE */
body .product-card .product-stock {
    position: absolute !important;
    top: 9px !important;
    right: 10px !important;
    z-index: 5 !important;
    margin: 0 !important;
    padding: 4px 9px !important;
    border-radius: 999px !important;
    font-size: 10px !important;
    line-height: 1 !important;
    font-weight: 850 !important;
    box-shadow: none !important;
}
