/* Liscano Commerce OS 0.8.9 — catalog filter / sort / view system.
   Scoped to theme-owned WooCommerce archive. Elementor templates are untouched. */
body.lco-editorial .lco-archive { overflow:visible; }
.lco-archive .lco-catalog-toolbar {
  --lco-catalog-toolbar-offset:82px;
  position:sticky;top:var(--lco-catalog-toolbar-offset);z-index:82;
  display:grid;grid-template-columns:1fr 1fr 0.8fr;
  margin-top:26px;border:1px solid #e3e3e3;background:rgba(255,255,255,.97);
  box-shadow:0 6px 22px rgba(10,10,10,.035);backdrop-filter:blur(18px);
}
.lco-archive .lco-catalog-toolbar > * + * {border-left:1px solid #e3e3e3;}
.lco-archive .lco-catalog-tool,
.lco-archive .lco-catalog-sort,
.lco-archive .lco-catalog-view {min-height:67px;}
.lco-archive .lco-catalog-tool {
  width:100%;border:0;border-radius:0;background:transparent;
  display:flex;justify-content:center;align-items:center;gap:15px;
  color:#202020;letter-spacing:.11em;font-size:12px;font-weight:650;
  transition:background .2s ease;
}
.lco-archive .lco-catalog-tool:hover,.lco-archive .lco-catalog-tool:focus-visible{background:#f5f5f5}
.lco-archive .lco-filter-count{display:inline-grid;place-items:center;min-width:19px;height:19px;background:var(--lco-red,#be1a34);color:#fff;border-radius:50%;font-size:10px;letter-spacing:0;margin-left:4px}
.lco-archive .lco-catalog-sort{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;padding:0 12px;color:#202020;}
.lco-archive .lco-catalog-sort select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:16px;}
.lco-archive .lco-catalog-sort:focus-within{outline:2px solid var(--lco-red,#be1a34);outline-offset:-3px;}
.lco-archive .lco-sort-title{font-weight:650;font-size:12px;letter-spacing:.11em;pointer-events:none}
.lco-archive .lco-sort-current{font-weight:450;font-size:11px;color:#888;max-width:155px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}
.lco-archive .lco-catalog-sort-arrow{font-size:23px;line-height:1;color:#666;transform:translateY(-4px);pointer-events:none}
.lco-archive .lco-catalog-view{display:flex;align-items:center;justify-content:center;gap:11px;}
.lco-archive .lco-catalog-view-title{font-size:11px;letter-spacing:.1em;color:#777;margin-right:7px;}
.lco-archive .lco-view-button{width:38px;height:38px;padding:0;display:grid;place-items:center;background:transparent;border:1px solid transparent;border-radius:0;color:#999;transition:background .2s,border-color .2s,color .2s;}
.lco-archive .lco-view-button[aria-pressed="true"]{color:#111;border-color:#111;background:#fafafa}
.lco-archive .lco-view-button:hover{color:#111}
.lco-view-grid-icon{display:grid;grid-template-columns:repeat(2,9px);grid-template-rows:repeat(2,9px);gap:3px}
.lco-view-grid-icon i,.lco-view-list-icon i{background:currentColor;display:block}
.lco-view-list-icon{display:grid;gap:4px}.lco-view-list-icon i{width:22px;height:6px}
.lco-archive .lco-catalog-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:45px;color:#6b6b6b;font-size:12px}
.lco-archive .lco-catalog-meta .woocommerce-result-count{margin:0;float:none;font-size:12px}
.lco-archive .lco-catalog-meta a{color:var(--lco-red,#be1a34);font-weight:600;text-decoration:underline;text-underline-offset:3px}
/* One-column product list — presentation only; no change to Woo query or product markup. */
body.lco-editorial .lco-archive.lco-view-list ul.products {
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:22px!important;
}
body.lco-editorial .lco-archive.lco-view-list ul.products > li.product {
  display:grid!important;grid-template-columns:minmax(105px,240px) minmax(0,1fr);
  gap:0 23px;align-content:start;align-items:start;padding-bottom:22px!important;
  border-bottom:1px solid #e9e9e9;
}
.lco-archive.lco-view-list .lco-card-media{grid-column:1;grid-row:1/span 5;aspect-ratio:4/4.6!important;border-radius:12px;}
.lco-archive.lco-view-list .lco-card-meta{grid-column:2;margin-top:9px;}
.lco-archive.lco-view-list .lco-card-name{grid-column:2;margin:9px 0 4px;font-size:clamp(18px,2vw,26px);}
.lco-archive.lco-view-list .lco-card-bottom{grid-column:2;margin:11px 0 0;justify-content:flex-start;gap:14px;}
.lco-archive.lco-view-list .lco-card-price{font-size:clamp(16px,2vw,24px)}
.lco-archive.lco-view-list .lco-card-hover-arrow{display:none}
/* HY-DO inspired visual treatment; original Liscano identity/colors. */
.lco-sale-badge{position:absolute;left:13px;top:13px;z-index:4;display:inline-flex;align-items:center;gap:8px;
  max-width:calc(100% - 26px);background:var(--lco-promo-bg,#1a1a1a);color:var(--lco-promo-text,#fff);
  padding:6px 7px 6px 11px;border-radius:3px;line-height:1.1;white-space:nowrap;
  font-size:10px;font-weight:700;letter-spacing:.055em;box-shadow:0 3px 15px #00000018;
}
.lco-sale-badge-label{overflow:hidden;text-overflow:ellipsis}
.lco-sale-badge-percent{background:var(--lco-promo-accent,#be1a34);color:#fff;display:inline-block;
  padding:6px 7px;border-radius:2px;font-size:12px;line-height:1;letter-spacing:0;font-weight:750;
}
.lco-pdp-summary .lco-sale-badge-single{position:static;margin:4px 0 17px;box-shadow:none;font-size:12px;}
.lco-pdp-summary .lco-sale-badge-percent{font-size:13px;}
/* Off-canvas filter panel; moved to body in JS to escape sticky ancestors. */
.lco-filter-drawer[hidden]{display:none!important}
.lco-filter-drawer{position:fixed;inset:0;z-index:320;display:block;}
.lco-filter-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.58);border:0;border-radius:0;cursor:pointer;width:100%;height:100%;}
.lco-filter-panel{position:absolute;right:0;top:0;bottom:0;width:min(490px,100%);background:#fff;color:#1e1e1e;display:flex;flex-direction:column;box-shadow:-12px 0 50px #0002;outline:none;}
.lco-filter-head{padding:28px 28px 20px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border-bottom:1px solid #eaeaea}
.lco-filter-eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:.17em;color:#ba223e;margin-bottom:8px}
.lco-filter-head h2{font-size:clamp(30px,5vw,41px);line-height:1.06;margin:0;font-weight:650;letter-spacing:-.045em}
.lco-filter-head h2 span{color:var(--lco-red,#be1a34)}
.lco-filter-close{border:1px solid #e0e0e0;background:#fff;color:#333;display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;font-size:29px;font-weight:300;line-height:1;border-radius:50%}
.lco-filter-form{display:flex;flex-direction:column;min-height:0;flex:1}
.lco-filter-body{padding:8px 28px 22px;overflow-y:auto;overscroll-behavior:contain;flex:1;}
.lco-filter-group{border:0;padding:22px 0;margin:0;border-bottom:1px solid #ececec;min-width:0}
.lco-filter-group legend{font-weight:700;font-size:15px;letter-spacing:-.01em;padding:0;margin:0 0 9px;display:block}
.lco-filter-categories,.lco-filter-options{display:flex;flex-wrap:wrap;gap:9px}
.lco-filter-categories a{display:inline-flex;padding:9px 12px;border:1px solid #e0e0e0;color:#222;border-radius:20px;font-size:12px;line-height:1.3}
.lco-filter-categories a[aria-current="page"]{background:#161616;color:#fff;border-color:#161616}
.lco-filter-options{gap:8px}
.lco-filter-option{display:inline-flex;position:relative;cursor:pointer}
.lco-filter-option input{position:absolute;opacity:0;width:1px;height:1px}
.lco-filter-option span{display:inline-block;border:1px solid #dcdcdc;padding:9px 12px;border-radius:20px;font-size:12px;line-height:1.3;transition:background .15s,color .15s,border-color .15s;}
.lco-filter-option input:checked+span{background:#1b1b1b;border-color:#1b1b1b;color:#fff}
.lco-filter-option input:focus-visible+span{outline:2px solid var(--lco-red,#be1a34);outline-offset:2px}
.lco-filter-price{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.lco-filter-price label{display:block;color:#777;font-size:11px}
.lco-filter-price input{margin-top:6px;display:block;width:100%;min-height:44px;border:1px solid #ddd;border-radius:6px;padding:8px 10px;font-size:15px;color:#222;background:#fff}
.lco-filter-actions{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:18px 28px 24px;border-top:1px solid #eaeaea;background:#fff}
.lco-filter-actions > a{font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:3px}
.lco-filter-apply{background:var(--lco-red,#be1a34);color:#fff;padding:14px 21px;display:inline-flex;gap:14px;align-items:center;justify-content:center;font-size:13px;font-weight:750;border:0;border-radius:6px;min-height:48px;}
body.lco-catalog-filters-open{overflow:hidden}
@media(max-width:767px){
  .lco-archive .lco-catalog-toolbar{grid-template-columns:39% 39% 22%;margin-top:17px}
  .lco-archive .lco-catalog-tool,.lco-archive .lco-catalog-sort,.lco-archive .lco-catalog-view{min-height:56px}
  .lco-archive .lco-catalog-tool{font-size:11px;letter-spacing:.025em;gap:6px}
  .lco-archive .lco-catalog-tool svg{height:15px;width:15px}
  .lco-archive .lco-sort-title{font-size:10px;letter-spacing:.015em}
  .lco-archive .lco-sort-current{display:none}
  .lco-archive .lco-catalog-sort{gap:6px;padding:0 5px}
  .lco-archive .lco-catalog-sort-arrow{font-size:22px}
  .lco-archive .lco-catalog-view-title{display:none}
  .lco-archive .lco-catalog-view{gap:0}
  .lco-archive .lco-view-button{height:36px;width:36px}
  .lco-view-grid-icon{grid-template-columns:repeat(2,7px);grid-template-rows:repeat(2,7px);gap:2px}
  .lco-view-list-icon i{width:18px;height:5px}
  .lco-archive .lco-catalog-meta{font-size:11px;min-height:37px}
  .lco-archive .lco-catalog-meta .woocommerce-result-count{font-size:10px}
  .lco-sale-badge{left:7px;top:7px;padding:4px 4px 4px 6px;gap:4px;font-size:8px}
  .lco-sale-badge-percent{font-size:10px;padding:5px 4px}
  .lco-archive.lco-view-list .lco-card-media{aspect-ratio:4/5.2!important}
  body.lco-editorial .lco-archive.lco-view-list ul.products > li.product{grid-template-columns:minmax(98px,38%) minmax(0,1fr);gap:0 11px;padding-bottom:16px!important}
  .lco-archive.lco-view-list .lco-card-meta{margin-top:2px}
  .lco-archive.lco-view-list .lco-card-name{font-size:15px;margin:6px 0 0;line-height:1.3}
  .lco-archive.lco-view-list .lco-card-price{font-size:14px}
  .lco-filter-panel{width:100%}
  .lco-filter-head{padding:23px 18px 18px}
  .lco-filter-body{padding:5px 18px 20px}
  .lco-filter-actions{padding:15px 18px 22px}
}
@media(max-width:360px){.lco-archive .lco-catalog-toolbar{grid-template-columns:36% 38% 26%}.lco-archive .lco-catalog-tool svg{display:none}}
@media(prefers-reduced-motion:reduce){.lco-archive .lco-view-button,.lco-archive .lco-catalog-tool,.lco-filter-option span{transition:none}}

/* PDP price hierarchy (visual-only; WooCommerce outputs actual prices). */
body.lco-editorial.single-product .lco-pdp-summary > p.price,
body.lco-editorial.single-product .lco-pdp-summary .woocommerce-variation-price .price{
  display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px;line-height:1.1;
  font-size:clamp(29px,3vw,42px);font-weight:760;letter-spacing:-.04em;color:#171717;
  margin:16px 0 22px;
}
body.lco-editorial.single-product .lco-pdp-summary .price del{color:#989898;font-size:.51em;font-weight:450;letter-spacing:0;opacity:1}
body.lco-editorial.single-product .lco-pdp-summary .price ins{color:var(--lco-red,#be1a34);text-decoration:none;font-size:1em;font-weight:780;}
body.lco-editorial.single-product .lco-pdp-image-foot:has(> span:only-child){justify-content:flex-end}
@media(max-width:767px){body.lco-editorial.single-product .lco-pdp-summary > p.price{font-size:31px;gap:5px 10px}}

.lco-archive .lco-active-filter-chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:0 0 16px;margin-top:-1px}
.lco-archive .lco-active-filter-chips a{display:inline-flex;align-items:center;gap:8px;border:1px solid #e4e4e4;border-radius:24px;padding:7px 10px;font-weight:600;font-size:11px;line-height:1.2;background:#fafafa}
.lco-archive .lco-active-filter-chips a:hover{color:var(--lco-red,#be1a34);border-color:#ddb1b9}
.lco-archive .lco-active-filter-chips span{font-size:17px;line-height:0.6;font-weight:400}

/* 0.9.1 — Archive grid: Woo's clearfix ::before was occupying column one.
   The earlier fix targeted a nested .woocommerce container; archive pages often put
   .woocommerce on BODY itself. Scope to our archive to cover either markup. */
body.lco-editorial .lco-archive ul.products::before,
body.lco-editorial .lco-archive ul.products::after,
body.lco-editorial.woocommerce .lco-archive ul.products::before,
body.lco-editorial.woocommerce .lco-archive ul.products::after {
  content:none!important;display:none!important;
}
body.lco-editorial .lco-archive ul.products > li.product{
  grid-column:auto!important;grid-row:auto!important;float:none!important;
}
body.lco-editorial .lco-archive ul.products > li.product::before,
body.lco-editorial .lco-archive ul.products > li.product::after{
  /* Product pseudo content belongs INSIDE its own grid cell. */
  grid-column:auto;
}
