/* Shop filter dimensions and typography from Figma. */
.ir-shop-archive .ir-shop-filters{padding:29px;background:var(--e-global-color-irlight);border:1px solid #376dec1a;border-radius:20px;font-family:var(--e-global-typography-text-font-family),sans-serif;font-size:16px;line-height:20px;color:var(--e-global-color-secondary)}
.ir-shop-filters fieldset{border:0;padding:0 0 23px;margin:0 0 24px;border-bottom:1px solid #5c5c5c26;min-width:0}
.ir-shop-filters fieldset:last-child{border:0;padding:0;margin:0}
.ir-shop-filters legend{font-size:19px;font-weight:600;line-height:15px;margin-bottom:20px;padding:0}
.ir-shop-filters fieldset:first-child legend{font-size:20px}
.ir-shop-filters fieldset:not(:first-child) legend{line-height:14px}
.ir-shop-filters label{display:flex;align-items:center;gap:12px;margin:0 0 18px;cursor:pointer;line-height:14px;color:var(--e-global-color-text)}
.ir-shop-filters label:last-child{margin-bottom:0}
.ir-shop-filters input[type=checkbox]{appearance:none;-webkit-appearance:none;flex:0 0 14px;width:14px;height:14px;margin:0;border:1.5px solid var(--e-global-color-text);border-radius:1px;background:transparent;display:grid;place-content:center}
.ir-shop-filters input[type=checkbox]:checked{background:var(--e-global-color-irblue2);border-color:var(--e-global-color-irblue2)}
.ir-shop-filters input[type=checkbox]:checked::before{content:'';width:7px;height:4px;border:solid white;border-width:0 0 1.5px 1.5px;transform:rotate(-45deg) translateY(-1px)}
.ir-shop-filters input:focus-visible{outline:2px solid var(--e-global-color-primary);outline-offset:3px}
.ir-shop-filters .ir-shop-category{height:48px;padding:0 10px;border-left:2px solid transparent;border-radius:6px;margin:0;position:relative;font-weight:600;line-height:20px;color:var(--e-global-color-secondary)}
.ir-shop-filters .ir-shop-category:first-of-type{height:50px}
.ir-shop-category input{position:absolute;opacity:0;width:1px;height:1px}
.ir-shop-category:has(input:checked){background:white;color:var(--e-global-color-irblue2);border-left-color:var(--e-global-color-irblue2)}
.ir-shop-category:has(input:focus-visible){outline:2px solid var(--e-global-color-primary)}
.ir-shop-category small{margin-left:auto;display:flex;align-items:center;justify-content:center;min-width:44px;height:24px;background:var(--e-global-color-irblue2);color:white;border-radius:20px;padding:0 10px;font-size:14px;line-height:1;font-weight:600}
.ir-shop-category:not(:has(input:checked)) small{display:none}
/* Category archives navigate between terms; price, stock and sorting remain AJAX. */
.ir-category-archive .ir-shop-filters a.ir-shop-category{display:flex;align-items:center;gap:12px;text-decoration:none}
.ir-category-archive .ir-shop-category[aria-current=page]{background:var(--e-global-color-irwhite);color:var(--e-global-color-irblue2);border-left-color:var(--e-global-color-irblue2)}
.ir-category-archive .ir-shop-category[aria-current=page] small{display:flex}
.ir-category-archive .ir-shop-category:hover{color:var(--e-global-color-irblue2)}
.ir-category-archive .ir-shop-category:focus-visible{outline:2px solid var(--e-global-color-primary);outline-offset:2px}
.ir-shop-price-values{display:flex;justify-content:space-between;gap:12px;font-size:14px;font-weight:700;line-height:10px;color:var(--e-global-color-text)}
.ir-shop-price-output{font:inherit;color:inherit}
.ir-shop-range{width:100%;accent-color:var(--e-global-color-irblue2);cursor:pointer}
.ir-shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--e-global-color-secondary)}
.elementor .ir-shop-toolbar h2{font-family:var(--e-global-typography-irh4-font-family);font-size:24px;line-height:32px;font-weight:600;margin:0 0 8px}
.ir-shop-toolbar p{font-size:16px;line-height:20px;margin:0;color:var(--e-global-color-text)}
.ir-shop-toolbar>label{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:18px;line-height:25px;font-weight:600}
.elementor .ir-shop-toolbar select{appearance:none;-webkit-appearance:none;width:139px;height:50px;border:1px solid var(--e-global-color-text);border-radius:6px;font-family:inherit;font-size:16px;font-weight:400;line-height:25px;padding:0 40px 0 15px;color:var(--e-global-color-secondary);background:var(--e-global-color-irwhite) url("assets/innovex-sort-chevron.svg") right 15px center/20px 20px no-repeat}
.ir-shop-results{position:relative;min-width:0}
.ir-shop-results[aria-busy=true] .ir-shop-grid{opacity:.35;pointer-events:none}
.ir-shop-grid{transition:opacity .15s ease}
.ir-shop-results[aria-busy=true]::after{content:'';position:absolute;top:90px;left:calc(50% - 18px);width:36px;height:36px;border:3px solid #c7ddff;border-top-color:var(--e-global-color-primary);border-radius:50%;animation:ir-shop-spin .65s linear infinite;z-index:3}
.ir-shop-pages{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.ir-shop-archive .ir-shop-pages button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;min-width:40px;max-width:40px;height:40px;min-height:40px;padding:0;border:0;border-radius:50%;color:var(--e-global-color-secondary);background:#f2f2f2;background-image:none;box-shadow:none;font:inherit;font-weight:500;line-height:1;letter-spacing:normal;text-align:center;text-indent:0}
.ir-shop-archive .ir-shop-pages button[aria-current],.ir-shop-archive .ir-shop-pages button:hover{background:var(--e-global-color-irblue2);background-image:none;color:white}
.ir-shop-error{color:#a21b35}
@keyframes ir-shop-spin{to{transform:rotate(360deg)}}
@media(max-width:1024px){.ir-shop-archive .ir-shop-filters{padding:23px 19px}.ir-shop-toolbar{align-items:flex-start}}
@media(max-width:767px){.ir-shop-toolbar{flex-wrap:wrap;gap:14px}.elementor .ir-shop-toolbar h2{font-size:22px}.ir-shop-filters fieldset{padding-bottom:16px;margin-bottom:16px}.ir-shop-filters legend{margin-bottom:12px}.ir-shop-archive .ir-shop-pages button{flex-basis:32px;width:32px;min-width:32px;max-width:32px;height:32px;min-height:32px}}
@media(prefers-reduced-motion:reduce){.ir-shop-grid{transition:none}.ir-shop-results[aria-busy=true]::after{animation:none}}

/* Shop cards retain the existing loop design over the white catalogue section. */
.ir-shop-archive.ir-best-sellers .ir-product-card .ir-product-details.e-con{background:var(--e-global-color-irlight)}
.ir-shop-range-pair{position:relative;height:14px;margin-top:12px;background:linear-gradient(var(--e-global-color-irblue2),var(--e-global-color-irblue2)) center/100% 6px no-repeat;border-radius:10px}
.ir-shop-range-pair .ir-shop-range{position:absolute;inset:0;margin:0;height:14px;appearance:none;-webkit-appearance:none;background:transparent;pointer-events:auto}
.ir-shop-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;pointer-events:auto;width:14px;height:14px;border:2px solid var(--e-global-color-irblue2);border-radius:50%;background:white;cursor:ew-resize}
.ir-shop-range::-moz-range-thumb{pointer-events:auto;width:10px;height:10px;border:2px solid var(--e-global-color-irblue2);border-radius:50%;background:white;cursor:ew-resize}
.ir-shop-range::-moz-range-track{background:transparent}
@media(min-width:768px){
 .ir-shop-archive .ir-shop-sidebar{position:sticky;top:24px;align-self:flex-start;max-height:calc(100dvh - 48px);overflow-y:auto;scrollbar-width:thin}
 body.admin-bar .ir-shop-archive .ir-shop-sidebar{top:56px;max-height:calc(100dvh - 80px)}
}

/* Original Figma chevrons, inside the same circles as numbered pages. */
.ir-shop-archive .ir-shop-pages .ir-shop-page-arrow:not(:disabled){background:var(--e-global-color-irblue2);color:white}
.ir-shop-archive .ir-shop-pages .ir-shop-page-arrow:disabled{opacity:1;background:#f2f2f2;color:var(--e-global-color-secondary);cursor:default}
.ir-shop-page-arrow img{display:block;width:16px;height:16px;max-width:none}
.ir-shop-page-arrow[aria-label="Previous page"]:not(:disabled) img{filter:brightness(0) invert(1)}
.ir-shop-page-arrow[aria-label="Next page"]:disabled img{filter:brightness(0)}
.ir-shop-page-ellipsis{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#f2f2f2;color:var(--e-global-color-secondary)}
@media(max-width:767px){.ir-shop-page-arrow img{width:14px;height:14px}.ir-shop-page-ellipsis{width:32px;height:32px}}

/* Figma trims the heading and result-count text to their cap heights. */
@supports(text-box-trim:trim-both){
 .elementor .ir-shop-toolbar h2,.ir-shop-toolbar p{text-box-trim:trim-both;text-box-edge:cap alphabetic}
 .elementor .ir-shop-toolbar h2{margin-bottom:20px}
}
