/**
 * Liscano Combos 1.5.6 · unified UX layer
 * Scoped to the live builder, no checkout/cart/WooCommerce rule overrides.
 * Design tokens are inherited from Editorial Lab / Liscano Core.
 */
.lcp-wrap.lcp-builder {
  --lcp-ui-red: var(--lco-red, var(--lsc-focus, #be1a34));
  --lcp-ui-black: var(--lco-black, #171717);
  --lcp-ui-muted: var(--lco-muted, #737478);
  --lcp-ui-line: var(--lco-line, #e7e7e9);
  --lcp-ui-paper: var(--lco-bg, #f8f8f8);
  --lcp-ui-radius: var(--lsc-radius-card, 18px);
  --lcp-ui-radius-control: var(--lsc-radius-control, 12px);
  color: var(--lcp-ui-black);
  font-family: var(--lco-font, 'Google Sans', system-ui, -apple-system, sans-serif);
}
.lcp-builder :is(button,input,select) { font-family:inherit; }
.lcp-builder :is(h2,h3,h4) { letter-spacing:-.035em; text-transform:none!important; }
/* A single compact headline groups the commercial terms without huge dead space. */
.lcp-builder .lcp-builder-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:15px 19px;
  margin:0;
  border:1px solid var(--lcp-ui-line);
  border-radius:var(--lcp-ui-radius)!important;
  background:var(--lcp-ui-paper);
  box-shadow:none;
}
.lcp-builder .lcp-builder-headline { flex:1;min-width:0; }
.lcp-builder .lcp-builder-headline .lcp-eyebrow { font-size:11px;letter-spacing:0;color:var(--lcp-ui-muted); }
.lcp-builder .lcp-builder-headline h2 { font-size:clamp(23px,2.1vw,31px);line-height:1.14;margin:3px 0 4px; }
.lcp-builder .lcp-builder-headline>p { margin:0;color:var(--lcp-ui-muted);font-size:13px;line-height:1.45; }
.lcp-builder .lcp-builder-promo { max-height:96px;flex:0 0 92px; }
.lcp-builder .lcp-builder-promo img { max-height:96px; }
.lcp-builder .lcp-builder-price {
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:2px 11px;
  margin-top:8px;
}
.lcp-builder .lcp-builder-price>span { color:var(--lcp-ui-muted);font-size:12px;font-weight:600; }
.lcp-builder .lcp-builder-price strong { font-size:clamp(21px,2.1vw,28px);letter-spacing:-.025em;color:var(--lcp-ui-red); }
.lcp-builder .lcp-builder-price small { color:var(--lcp-ui-muted);font-size:11px;flex-basis:100%; }
/* Three clear states: active (accent), complete (check), pending (soft). */
.lcp-builder .lcp-steps {
  width:100%;
  max-width:740px;
  margin:16px auto 23px;
}
.lcp-builder .lcp-steps:before { top:17px;left:16%;right:16%;height:2px;background:var(--lcp-ui-line); }
.lcp-builder .lcp-step {
  min-height:63px;
  gap:6px;
  padding:0 8px!important;
  color:#8b8b91!important;
  font-weight:600!important;
}
.lcp-builder .lcp-step-num {
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  background:#f3f3f5!important;
  border:2px solid var(--lcp-ui-line)!important;
  border-radius:50%!important;
  font-size:13px!important;
  font-weight:700!important;
  color:#8b8b91!important;
  box-shadow:0 0 0 3px #fff;
}
.lcp-builder .lcp-step.is-active .lcp-step-num {
  background:var(--lcp-ui-red)!important;
  border-color:var(--lcp-ui-red)!important;
  color:#fff!important;
}
.lcp-builder .lcp-step.is-done .lcp-step-num {
  background:var(--lcp-ui-black)!important;
  border-color:var(--lcp-ui-black)!important;
  color:#fff!important;
}
.lcp-builder .lcp-step.is-active .lcp-step-label,.lcp-builder .lcp-step.is-done .lcp-step-label { color:var(--lcp-ui-black);font-weight:650; }
.lcp-builder .lcp-step-picked { font-size:10px;font-weight:500;color:var(--lcp-ui-red); }
/* Catalog: filters, copy, feedback, product cards. */
.lcp-builder .lcp-section-heading { margin:0 0 13px;align-items:end; }
.lcp-builder .lcp-section-heading h3 { font-size:clamp(23px,2.2vw,29px);margin:3px 0; }
.lcp-builder .lcp-status { margin:0;color:var(--lcp-ui-muted);font-size:13px; }
.lcp-builder .lcp-section-overline { color:var(--lcp-ui-red);font-size:11px;letter-spacing:0;font-weight:650; }
.lcp-builder .lcp-selected-counter { font-size:11px;border-radius:999px;padding:8px 11px;white-space:nowrap; }
.lcp-builder .lcp-toolbar {
  display:grid;
  grid-template-columns:auto minmax(145px,190px) minmax(190px,1fr);
  gap:10px;
  align-items:center;
  margin:0 0 8px;
}
.lcp-builder .lcp-genders { flex-wrap:nowrap; }
.lcp-builder .lcp-genders button { min-height:43px;padding:8px 13px!important;border-radius:var(--lcp-ui-radius-control)!important; }
.lcp-builder .lcp-category-wrap { display:block;min-width:0;position:relative; }
.lcp-builder .lcp-category-filter {
  appearance:none;-webkit-appearance:none;
  width:100%;min-width:0;height:44px;
  color:var(--lcp-ui-black);font-size:12px;font-weight:600;
  background:#fff;
  border:1px solid var(--lcp-ui-line);
  border-radius:var(--lcp-ui-radius-control);
  padding:0 29px 0 13px;
  cursor:pointer;
}
.lcp-builder .lcp-category-wrap:after {
  content:'';position:absolute;right:13px;top:17px;
  width:7px;height:7px;transform:rotate(45deg);border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;pointer-events:none;
}
.lcp-builder .lcp-search-wrap { width:100%;max-width:none;min-width:0;height:44px;border-radius:var(--lcp-ui-radius-control); }
.lcp-builder .lcp-search { width:100%;font-size:12px; }
.lcp-builder .lcp-filter-feedback { display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:27px;margin:0 0 10px; }
.lcp-builder .lcp-results-status { font-size:11px;color:var(--lcp-ui-muted); }
.lcp-builder .lcp-reset-filters { color:var(--lcp-ui-red);border:0;background:none;padding:3px 5px;font-size:11px;font-weight:650;box-shadow:none; }
.lcp-builder .lcp-reset-filters:hover { text-decoration:underline; }
.lcp-builder .lcp-products { gap:13px; }
.lcp-builder .lcp-product { border:1px solid var(--lcp-ui-line);padding:7px;transition:border-color .18s,box-shadow .18s,transform .18s; }
.lcp-builder .lcp-product:hover { transform:translateY(-2px);box-shadow:0 10px 28px rgba(10,10,10,.07); }
.lcp-builder .lcp-product.is-selected { border-color:var(--lcp-ui-red);box-shadow:0 0 0 1px var(--lcp-ui-red); }
.lcp-builder .lcp-product-img { display:block;width:100%;position:relative;border:0!important;padding:0!important;overflow:hidden;border-radius:calc(var(--lcp-ui-radius) - 5px)!important;background:#f7f7f7!important;box-shadow:none!important;cursor:pointer; }
.lcp-builder .lcp-product-img:focus-visible { outline:3px solid var(--lcp-ui-red);outline-offset:-3px; }
.lcp-builder .lcp-product-img img { width:100%;height:100%;object-fit:cover;transition:transform .22s ease; }
.lcp-builder .lcp-product:hover .lcp-product-img img { transform:scale(1.025); }
.lcp-builder .lcp-product-info { padding:9px 7px 7px; }
.lcp-builder .lcp-product-name { font-size:13px;font-weight:700;line-height:1.3;min-height:0; }
.lcp-builder .lcp-product-sku { font-size:11px;color:var(--lcp-ui-muted);margin-top:3px; }
.lcp-wrap.lcp-builder .lcp-choose { width:calc(100% - 14px);margin:0 7px 7px;min-height:42px!important;font-size:12px!important; }
.lcp-builder .lcp-product-selected-size { font-size:11px;font-weight:650; }
.lcp-builder .lcp-ux-skeleton { display:grid;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px; }
.lcp-builder .lcp-ux-skeleton-card { display:block;aspect-ratio:3/4.6;border-radius:var(--lcp-ui-radius);background:linear-gradient(95deg,#f4f4f5 25%,#e9e9ea 40%,#f4f4f5 62%);background-size:220% 100%;animation:lcp-ux-shimmer 1.25s linear infinite; }
.lcp-builder .lcp-empty { grid-column:1/-1;display:grid;justify-items:center;gap:10px;text-align:center;background:#fafafa;border:1px dashed var(--lcp-ui-line);border-radius:var(--lcp-ui-radius);padding:30px 16px; }
.lcp-builder .lcp-empty strong { font-size:15px;font-weight:650; }
.lcp-builder .lcp-empty p { color:var(--lcp-ui-muted);font-size:13px;margin:0; }
.lcp-builder .lcp-empty .lcp-reset-filters { padding:10px 17px;border:1px solid var(--lcp-ui-line);border-radius:var(--lcp-ui-radius-control); }
/* Summary is the durable state of the selection, not a second checkout. */
.lcp-builder .lcp-workspace { grid-template-columns:minmax(0,1fr) minmax(264px,29%);gap:19px; }
.lcp-builder .lcp-side-summary { top:14px;padding:19px 17px;box-shadow:0 12px 24px rgba(0,0,0,.09); }
.lcp-builder .lcp-summary-head>span { font-size:17px;font-weight:700; }
.lcp-builder .lcp-side-count { background:var(--lcp-ui-red); }
.lcp-builder .lcp-summary-slot { min-height:65px;padding:9px;gap:8px; }
.lcp-builder .lcp-summary-slot.is-current:not(.is-picked) { outline:1px solid rgba(255,255,255,.35);background:#2b2b30; }
.lcp-builder .lcp-summary-slot-info { flex:1;min-width:0; }
.lcp-builder .lcp-summary-slot-info strong { font-size:11px;white-space:normal;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden; }
.lcp-builder .lcp-summary-slot-info small { font-size:10px; }
.lcp-builder .lcp-summary-actions { display:flex;gap:5px;align-items:center;flex:0 0 auto; }
.lcp-wrap.lcp-builder .lcp-summary-actions button { position:static!important;display:grid;place-items:center;min-width:30px;min-height:30px;margin:0;padding:3px 5px!important;font-size:10px;font-weight:600;color:#fff!important;background:#343439!important;border:1px solid #606065!important;border-radius:9px!important; }
.lcp-wrap.lcp-builder .lcp-summary-actions button:hover { color:#fff!important;background:var(--lcp-ui-red)!important; }
.lcp-builder .lcp-summary-pricing { margin-top:12px; }
.lcp-builder .lcp-summary-shipping { margin:5px 0 10px; }
.lcp-builder .lcp-summary-total { display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid rgba(255,255,255,.17);padding:12px 0; }
.lcp-builder .lcp-summary-total span { font-size:12px;color:#cbcbcd; }
.lcp-builder .lcp-summary-total strong { font-size:17px;font-weight:700;color:#fff; }
.lcp-wrap.lcp-builder .lcp-side-next { min-height:48px!important; }
.lcp-builder .lcp-review .lcp-review-line { border:1px solid var(--lcp-ui-line);border-radius:var(--lcp-ui-radius); }
/* One sheet headline; the inner card only needs price/terms and not a second hero. */
.lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-builder-head { margin:0;padding:10px 16px;background:#f7f7f8; }
.lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-builder-headline .lcp-eyebrow,
.lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-builder-headline h2,
.lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-builder-headline>p { display:none!important; }
.lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-builder-price { margin:0;align-items:center;gap:6px 12px; }
.lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-builder-price>span { font-size:12px; }
.lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-builder-price strong { font-size:22px; }
.lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-builder-price small { flex-basis:auto; }
.lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-steps { margin:12px auto 15px; }
.lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-side-summary { top:7px; }
/* Mobile dock expansion is anchored directly above the action bar. */
.lcp-builder .lcp-mobile-summary-toggle,
.lcp-builder .lcp-mobile-summary-details { display:none; }
@keyframes lcp-ux-shimmer { to { background-position-x:-220%; } }
@media(max-width:1000px) {
  .lcp-builder .lcp-toolbar { grid-template-columns:1fr 1fr; }
  .lcp-builder .lcp-genders { grid-column:1/-1; }
  .lcp-builder .lcp-workspace { grid-template-columns:minmax(0,1fr) 250px;gap:13px; }
}
@media(max-width:800px) {
  .lcp-builder .lcp-workspace { display:block; }
  .lcp-builder .lcp-toolbar { grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); }
  .lcp-builder .lcp-product { min-width:0; }
  .lcp-builder .lcp-mobile-summary-toggle { display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:60px;min-height:39px;border:1px solid #5a5a60;border-radius:10px;background:#2c2c30;color:#fff;font-size:11px;font-weight:600;padding:4px 8px; }
  .lcp-builder .lcp-mobile-summary-details:not([hidden]) { position:absolute;left:10px;right:10px;bottom:calc(100% + 7px);display:block;padding:15px;border-radius:var(--lcp-ui-radius);background:#fff;box-shadow:0 -8px 40px rgba(0,0,0,.22);border:1px solid var(--lcp-ui-line);color:var(--lcp-ui-black);max-height:min(55dvh,390px);overflow:auto; }
  .lcp-builder .lcp-mobile-summary-details h3 { margin:0 0 9px;font-size:16px;font-weight:700; }
  .lcp-builder .lcp-mobile-detail-item { display:flex;align-items:center;gap:10px;border-top:1px solid var(--lcp-ui-line);padding:9px 0; }
  .lcp-builder .lcp-mobile-detail-item img { width:44px;height:44px;border-radius:8px;object-fit:cover; }
  .lcp-builder .lcp-mobile-detail-item>div { flex:1;min-width:0; }
  .lcp-builder .lcp-mobile-detail-item strong { display:block;max-width:100%;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
  .lcp-builder .lcp-mobile-detail-item small { color:var(--lcp-ui-muted);font-size:10px; }
  .lcp-wrap.lcp-builder .lcp-mobile-detail-item button { font-size:11px!important;border:1px solid var(--lcp-ui-line);border-radius:8px;padding:6px 9px;background:#fff;color:var(--lcp-ui-black); }
  .lcp-builder .lcp-mobile-summary-details>small { color:var(--lcp-ui-muted);font-size:10px; }
  .lcp-builder .lcp-sticky { gap:7px; }
}
@media(max-width:680px) {
  .lcp-builder .lcp-builder-head { padding:12px;gap:8px; }
  .lcp-builder .lcp-builder-promo { flex:0 0 72px;max-height:80px; }
  .lcp-builder .lcp-builder-promo img { max-height:80px; }
  .lcp-builder .lcp-builder-headline h2 { font-size:24px; }
  .lcp-builder .lcp-builder-headline>p { font-size:11px; }
  .lcp-builder .lcp-builder-price { margin-top:6px;gap:2px 7px; }
  .lcp-builder .lcp-builder-price strong { font-size:22px; }
  .lcp-builder .lcp-steps { margin:13px auto 14px; }
  .lcp-builder .lcp-step-num { width:32px;height:32px; }
  .lcp-builder .lcp-step-label { font-size:11px; }
  .lcp-builder .lcp-section-heading h3 { font-size:23px; }
  .lcp-builder .lcp-section-heading { gap:6px; }
  .lcp-builder .lcp-section-heading .lcp-selected-counter { font-size:10px; }
  .lcp-builder .lcp-toolbar { display:flex;flex-wrap:wrap;gap:7px; }
  .lcp-builder .lcp-genders { flex-basis:100%;gap:5px; }
  .lcp-builder .lcp-genders button { min-height:40px;flex:1;padding:7px 11px!important; }
  .lcp-builder .lcp-category-wrap { flex:1 1 42%; }
  .lcp-builder .lcp-search-wrap { flex:2 1 54%;min-width:0; }
  .lcp-builder .lcp-category-filter,.lcp-builder .lcp-search-wrap { height:43px; }
  .lcp-builder .lcp-ux-skeleton { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lcp-builder .lcp-products { gap:10px; }
  .lcp-builder .lcp-product-name { font-size:12px; }
  .lcp-builder .lcp-product-img { border-radius:11px!important; }
  .lcp-wrap.lcp-builder .lcp-choose { min-height:42px!important;font-size:11px!important; }
  .lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-builder-head { padding:10px 12px; }
  .lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-builder-price small { flex-basis:100%; }
  .lcp-combo-sheet .lcp-wrap.lcp-builder { padding-bottom:150px; }
  .lcp-combo-sheet .lcp-wrap.lcp-builder .lcp-sticky { z-index:100042; }
  .lcp-builder .lcp-mini-items { gap:4px; }
  .lcp-builder .lcp-mini-slot { width:34px;height:40px; }
  .lcp-builder .lcp-mini-description { max-width:110px; }
  .lcp-wrap.lcp-builder .lcp-next { min-width:90px;padding:7px 9px!important;font-size:11px!important;white-space:normal; }
}
@media(max-width:390px) {
  .lcp-builder .lcp-mini-items { display:none; }
  .lcp-builder .lcp-mini-description { flex:1;max-width:none; }
  .lcp-builder .lcp-mobile-summary-toggle { min-width:68px; }
  .lcp-wrap.lcp-builder .lcp-next { min-width:102px; }
}
@media(prefers-reduced-motion:reduce) {
  .lcp-builder .lcp-ux-skeleton-card { animation:none; }
  .lcp-builder .lcp-product:hover { transform:none; }
  .lcp-builder .lcp-product-img img { transition:none; }
}
/* Keep the category label accessible but visually hidden outside WordPress too. */
.lcp-builder .lcp-category-wrap>.screen-reader-text {
  position:absolute!important;
  width:1px!important;height:1px!important;padding:0!important;
  margin:-1px!important;overflow:hidden!important;
  clip:rect(0,0,0,0)!important;white-space:nowrap!important;
  border:0!important;
}
@media(max-width:680px) {
  .lcp-builder .lcp-toolbar { flex-direction:row;align-items:stretch; }
}
