/** Sanitarija Commerce V4.5 — smart multi-select catalogue filters. */

/* Give the catalogue sidebar enough room for readable controls. */
@media(min-width:1025px){
  .smk-smart-filter-catalogue .smk-shop-layout,
  .smk-smart-filter-catalogue .smkvb-shop-products .smk-shop-layout{grid-template-columns:300px minmax(0,1fr);gap:26px}
  .smk-smart-filter-catalogue .smkvb-shop-products .smk-shop-layout--right{grid-template-columns:minmax(0,1fr) 300px}
}

.smk-smart-filter-catalogue .smk-shop-sidebar{scrollbar-width:thin;scrollbar-color:#c9d7e6 transparent}
.smk-smart-filter-catalogue .smk-shop-sidebar>.widget,
.smk-smart-filter-catalogue .smk-smart-filters{margin-bottom:16px}
.smk-smart-filter-catalogue .smk-shop-sidebar--collapsible .smk-filter-panel.is-filter-open>*{display:block}
.smk-smart-filter-catalogue .smk-shop-sidebar--collapsible .smk-filter-panel:not(.is-open)>.smk-filter-panel-body{display:none!important}

/* Category navigator. */
.smk-smart-category-widget{padding:0!important;overflow:hidden!important;border-radius:12px!important;box-shadow:0 8px 24px rgba(8,49,91,.055)}
.smk-filter-panel-heading,
.smk-smart-filter-group-toggle{width:100%;display:flex;align-items:center;gap:9px;text-align:left;border:0;background:#fff;color:var(--smk-navy);cursor:pointer}
.smk-filter-panel-heading{min-height:54px;padding:0 18px;background:linear-gradient(100deg,#073b70,#0e63c8);color:#fff;font-size:13px;font-weight:850;letter-spacing:.035em;text-transform:uppercase}
.smk-filter-panel-heading i,
.smk-smart-filter-group-toggle i,
.smk-category-children-toggle i{position:relative;display:block;width:16px;height:16px;margin-left:auto;flex:0 0 auto}
.smk-filter-panel-heading i:before,.smk-filter-panel-heading i:after,
.smk-smart-filter-group-toggle i:before,.smk-smart-filter-group-toggle i:after,
.smk-category-children-toggle i:before,.smk-category-children-toggle i:after{content:"";position:absolute;left:50%;top:50%;width:10px;height:2px;border-radius:9px;background:currentColor;transform:translate(-50%,-50%)}
.smk-filter-panel-heading i:after,
.smk-smart-filter-group-toggle i:after,
.smk-category-children-toggle i:after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .2s}
.smk-filter-panel.is-open>.smk-filter-panel-heading i:after,
.smk-smart-filter-group.is-open>.smk-smart-filter-group-toggle i:after,
.smk-smart-category-item.is-open>.smk-smart-category-row .smk-category-children-toggle i:after{transform:translate(-50%,-50%) rotate(0)}
.smk-smart-category-widget .smk-filter-panel-body{padding:8px 10px 10px;background:#fff}
.smk-smart-category-tree,.smk-smart-category-children{list-style:none!important;margin:0!important;padding:0!important}
.smk-smart-category-row{display:flex;align-items:center;min-width:0;border-bottom:1px solid #edf1f5}
.smk-smart-category-all>a,.smk-smart-category-row>a{min-height:43px;display:flex;align-items:center;gap:8px;min-width:0;flex:1;padding:8px 10px;border-radius:7px;color:#24313e!important;font-size:13px!important;font-weight:650;line-height:1.3}
.smk-smart-category-row>a span{min-width:0;flex:1}
.smk-smart-category-row>a b{flex:0 0 auto;color:#8995a3;font-size:10px;font-weight:650}
.smk-smart-category-all{border-bottom:1px solid #edf1f5}
.smk-smart-category-all>a:after{content:'›';margin-left:auto;color:#8d9bab;font-size:17px}
.smk-smart-category-all.is-current>a,.smk-smart-category-item.is-current>.smk-smart-category-row>a{background:#eaf4ff;color:#0e63c8!important;font-weight:800}
.smk-smart-category-row>a:hover,.smk-smart-category-all>a:hover{background:#f2f7fc;color:#0e63c8!important}
.smk-category-children-toggle{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;padding:0;border:0;border-radius:7px;background:transparent;color:#0e63c8;cursor:pointer}
.smk-category-children-toggle:hover{background:#edf5fd}
.smk-smart-category-children{display:none;margin:0 0 5px 12px!important;padding-left:9px!important;border-left:1px solid #dce6ef}
.smk-smart-category-item.is-open>.smk-smart-category-children{display:block}
.smk-smart-category-children .smk-smart-category-row>a{min-height:38px;padding-block:6px;font-size:12px!important}

/* Unified filter card and active chips. */
.smk-smart-filters{padding:0;border:1px solid var(--smk-line);border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(8,49,91,.055);overflow:hidden}
.smk-smart-filter-summary{padding:14px;border-bottom:1px solid #e8eef4;background:#f6faff}
.smk-smart-filter-summary-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.smk-smart-filter-summary-head strong{font-size:12px;color:var(--smk-navy)}
.smk-smart-filter-summary-head a{color:#b13a3a;font-size:10px;font-weight:750}
.smk-smart-filter-chips{display:flex;flex-wrap:wrap;gap:6px}
.smk-smart-filter-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:28px;padding:4px 8px;border:1px solid #c9dced;border-radius:999px;background:#fff;color:#155eaa!important;font-size:10px;font-weight:700;line-height:1.2}
.smk-smart-filter-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smk-smart-filter-chip b{font-size:15px;line-height:1;font-weight:500}

/* Accordion groups. */
.smk-smart-filter-group{border-bottom:1px solid #e7edf3}
.smk-smart-filter-group:last-of-type{border-bottom:0}
.smk-smart-filter-group-toggle{min-height:52px;padding:0 16px;font-size:12.5px;font-weight:850;letter-spacing:.025em;text-transform:uppercase}
.smk-smart-filter-group-toggle:hover{background:#f8fbfe}
.smk-filter-selected-count{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 6px;border-radius:99px;background:#0e63c8;color:#fff;font-size:10px;font-weight:800}
.smk-smart-filter-group-body{display:none;padding:0 14px 15px}
.smk-smart-filter-group.is-open>.smk-smart-filter-group-body{display:block}
.smk-filter-search-wrap{display:block;margin:0 0 9px}
.smk-filter-search{width:100%;height:38px;padding:0 11px;border:1px solid #d9e2eb;border-radius:8px;background:#f9fbfd;color:#1d2a36;font-size:12px;outline:none}
.smk-filter-search:focus{border-color:#6eaae6;box-shadow:0 0 0 3px rgba(14,99,200,.1)}
.smk-filter-options{max-height:288px;overflow:auto;padding-right:3px;scrollbar-width:thin;scrollbar-color:#cbd8e5 transparent}
.smk-filter-options::-webkit-scrollbar{width:5px}.smk-filter-options::-webkit-scrollbar-thumb{background:#cbd8e5;border-radius:10px}
.smk-filter-option{position:relative;display:flex;align-items:center;gap:9px;min-height:39px;margin:0!important;padding:6px 4px;border-bottom:1px solid #f0f3f6;color:#263442;cursor:pointer;user-select:none}
.smk-filter-option:last-of-type{border-bottom:0}
.smk-filter-option:hover{color:#0e63c8}
.smk-filter-option input{position:absolute;opacity:0;pointer-events:none}
.smk-filter-check{position:relative;width:18px;height:18px;flex:0 0 18px;border:1.5px solid #b9c7d4;border-radius:5px;background:#fff;transition:.16s}
.smk-filter-option input:checked+.smk-filter-check{border-color:#0e63c8;background:#0e63c8}
.smk-filter-option input:checked+.smk-filter-check:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.smk-filter-option input:focus-visible+.smk-filter-check{outline:3px solid rgba(14,99,200,.2);outline-offset:2px}
.smk-filter-option-name{min-width:0;flex:1;font-size:12.5px;font-weight:650;line-height:1.35}
.smk-filter-option-count{flex:0 0 auto;color:#8a96a2;font-size:10px;font-weight:600}
.smk-filter-option.is-extra{display:none}
.smk-smart-filter-group.is-expanded .smk-filter-option.is-extra{display:flex}
.smk-filter-option[hidden]{display:none!important}
.smk-filter-show-more{display:inline-flex;margin:9px 0 0;padding:0;border:0;background:transparent;color:#0e63c8;font-size:11px;font-weight:800;cursor:pointer}
.smk-filter-no-results{margin:9px 0 0;color:#7d8995;font-size:11px}

/* Price and actions. */
.smk-filter-price-fields{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:8px}
.smk-filter-price-fields>span{padding-bottom:11px;color:#9aa6b2}
.smk-filter-price-fields label span{display:block;margin-bottom:5px;color:#6f7c89;font-size:10px;font-weight:750;text-transform:uppercase}
.smk-filter-price-fields input{width:100%;height:42px;padding:0 10px;border:1px solid #d5dfe8;border-radius:8px;background:#fff;font-size:12px}
.smk-smart-filter-actions{position:sticky;z-index:3;bottom:-1px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:12px;border-top:1px solid #dfe7ef;background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}
.smk-smart-filter-clear{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 13px;border:1px solid #ccd8e3;border-radius:8px;background:#fff;color:#5f6c79!important;font-size:11px;font-weight:800}
.smk-smart-filter-apply{min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;border:0;border-radius:8px;background:#0e63c8;color:#fff;font-size:12px;font-weight:850;cursor:pointer;box-shadow:0 7px 17px rgba(14,99,200,.2)}
.smk-smart-filter-apply:hover{background:#073b70}
.smk-smart-filter-apply b,[data-smk-filter-badge]{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#fff;color:#0e63c8;font-size:10px}
.smk-smart-filter-spinner{display:none;width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:smkV45Spin .7s linear infinite}
.smk-filter-loading .smk-smart-filter-spinner{display:block}
.smk-filter-loading .smk-smart-filter-apply{pointer-events:none;opacity:.76}
.smk-filter-loading .smk-shop-products{position:relative;opacity:.52;pointer-events:none;transition:opacity .18s}
.smk-filter-loading .smk-shop-products:after{content:"";position:absolute;z-index:20;left:50%;top:100px;width:36px;height:36px;margin-left:-18px;border:3px solid #c6d8ea;border-top-color:#0e63c8;border-radius:50%;animation:smkV45Spin .7s linear infinite}
@keyframes smkV45Spin{to{transform:rotate(360deg)}}

.smk-shop-filter-toggle [data-smk-filter-badge]{margin-left:auto;background:#0e63c8;color:#fff}

@media(max-width:1024px) and (min-width:761px){
  .smk-smart-filter-catalogue .smk-shop-layout,.smk-smart-filter-catalogue .smkvb-shop-products .smk-shop-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px}
}

@media(max-width:760px){
  .smk-smart-filter-catalogue .smk-shop-sidebar{padding:0;background:#f4f7fa}
  .smk-smart-filter-catalogue .smk-shop-sidebar-head{position:sticky;z-index:20;top:0;margin:0;padding:12px 14px;border-bottom:1px solid #dbe5ee;background:#fff}
  .smk-smart-filter-catalogue .smk-shop-sidebar-head strong{font-size:14px}
  .smk-smart-filter-catalogue .smk-shop-sidebar>.widget,.smk-smart-filter-catalogue .smk-smart-filters{margin:12px}
  .smk-smart-filter-catalogue .smk-smart-filters{margin-top:0}
  .smk-smart-filter-actions{bottom:0;padding-bottom:max(12px,env(safe-area-inset-bottom))}
  .smk-filter-panel-heading{min-height:50px;font-size:12.5px}
  .smk-smart-filter-group-toggle{min-height:50px}
  .smk-filter-option{min-height:44px}
  .smk-filter-option-name{font-size:13px}
  .smk-smart-filter-apply{min-height:48px}
}

/* V4.5.3 — centred catalogue grid, footer-grid and synthetic-render stability. */
.smk-smart-filter-catalogue .smkvb-shop-products{width:100%;min-width:0}
/* Keep the Builder product block inside the same 1440px container as the hero,
   header and footer. V4.5.2 accidentally forced this container to max-width:100%. */
.smk-smart-filter-catalogue .smkvb-shop-products>.smk-container{
  width:min(calc(100% - 34px),1440px)!important;
  max-width:1440px!important;
  margin-inline:auto!important;
}
.smk-smart-filter-catalogue .smk-shop-layout,
.smk-smart-filter-catalogue .smk-shop-products{width:100%;min-width:0}
.smk-smart-filter-catalogue .smk-shop-layout{margin-inline:0}
/* A long filter column scrolls with the document instead of creating an
   artificial lower gap in full-page screenshots. */
.smk-smart-filter-catalogue .smk-shop-sidebar{position:static!important;align-self:start}
.site-footer{clear:both;width:100%;max-width:none;margin:0;overflow:hidden}
.site-footer .smk-footer-main{width:100%}
.site-footer .smk-footer-main>.smk-container{width:min(calc(100% - 34px),1440px)!important;max-width:1440px!important;margin-inline:auto!important}
@media(min-width:1025px){
  /* The saved Builder footer hides the payment block. Collapse its otherwise
     empty sixth grid track so the visible columns stay centered and balanced. */
  .site-footer--builder .smk-footer-grid:has(>.smk-footer-payments.smkvb-hide-desktop){grid-template-columns:minmax(220px,1.35fr) repeat(4,minmax(130px,1fr))}
}
@media(max-width:760px){
  .smk-smart-filter-catalogue .smkvb-shop-products>.smk-container,
  .site-footer .smk-footer-main>.smk-container{width:calc(100% - 22px)!important}
}


/* V4.5.4 — deterministic Builder footer columns and centred homepage footer. */
.site-footer--builder .smk-footer-main>.smk-footer-grid{
  display:grid;
  width:min(calc(100% - 40px),1320px)!important;
  max-width:1320px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.site-footer--builder .smkvb-footer-bottom{grid-column:1/-1!important;width:100%}
@media(min-width:1025px){
  .site-footer--builder.smk-footer-layout--5 .smk-footer-grid{
    grid-template-columns:minmax(250px,1.35fr) repeat(4,minmax(145px,1fr))!important;
    column-gap:clamp(28px,3.1vw,58px)!important;
  }
  .site-footer--builder.smk-footer-layout--6 .smk-footer-grid{
    grid-template-columns:minmax(235px,1.3fr) repeat(5,minmax(125px,1fr))!important;
    column-gap:clamp(20px,2.2vw,40px)!important;
  }
}
@media(max-width:1024px) and (min-width:761px){
  .site-footer--builder .smk-footer-main>.smk-footer-grid{width:min(calc(100% - 34px),920px)!important}
}
@media(max-width:760px){
  .site-footer--builder .smk-footer-main>.smk-footer-grid{width:calc(100% - 24px)!important}
}
