/* ═══════════════════════════════════════════════════════════════════
   GREENLY PREMIUM — capa de diseño unificada
   Editorial eco-premium: tinta + bosque + papel, esquinas vivas,
   hairlines cálidos, Playfair para display, Inter para UI.
   Cargado el último: normaliza los estilos acumulados de todos los
   templates (.mkp-* producto, .dc-* catálogo, carrito, modales).
   ═══════════════════════════════════════════════════════════════════ */

:root{
  --gl-ink:#1a1a1a;
  --gl-ink-soft:#1d1d1f;
  --gl-forest:#2c5f3e;
  --gl-forest-dark:#234c32;
  --gl-paper:#fbfaf7;
  --gl-cream:#f6f5ef;
  --gl-hairline:#e7e4dc;
  --gl-hairline-soft:#f0eee7;
  --gl-muted:#86868b;
  --gl-faint:#aeaeb2;
  --gl-serif:'Playfair Display',Georgia,serif;
  --gl-sans:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
}

/* ── 1. RADIUS RESET: esquinas vivas en todo el flujo ─────────────── */
.mkp-summary,.mkp-summary *,
.mkp-section,.mkp-section *,
.mkp-tech-guide,.mkp-tech-guide *,
.mkp-quote-modal,.mkp-quote-modal *,
.mkp-faq details,.mkp-faq summary,
.mkp-trust-badges,.mkp-riskfree,
.mkp-deadline,.mkp-bordado-note,
#mkpBordadoNotice,#mkpSumDiscount,#mkpVectWrap,#mkpCode,
#mkpBtnBuy,.mkp-btn-cart,.mkp-btn-pdf,
#mkpSampleModal>div,#mkpSampleModal button,
.mkp-toast{border-radius:0!important;}
.mkp-float-cart{border-radius:0!important;}

/* ── 2. VERDE ÚNICO: bosque #2c5f3e en todo ───────────────────────── */
#mkpBtnBuy{background:var(--gl-forest)!important;transition:background .18s ease,transform .18s ease!important;font-size:16px!important;padding:17px!important;transform:scale(1.02);}
#mkpBtnBuy:hover{background:var(--gl-forest-dark)!important;}
.mkp-riskfree{background:var(--gl-cream)!important;border:1px solid var(--gl-hairline)!important;}
.mkp-riskfree span{color:var(--gl-forest)!important;}
#mkpSumDiscount{background:var(--gl-cream)!important;border:1px solid var(--gl-hairline)!important;color:var(--gl-forest)!important;}
#mkpSumDiscount svg{stroke:var(--gl-forest)!important;}
#mkpCodeOk{color:var(--gl-forest)!important;}
#mkpVectorize{accent-color:var(--gl-forest)!important;}
.mkp-deadline{background:var(--gl-cream)!important;border:1px solid var(--gl-hairline)!important;}
.mkp-deadline svg{stroke:var(--gl-forest)!important;}
.mkp-deadline strong{color:var(--gl-forest)!important;}
#mkpSampleModal [style*="background:#f0f7f4"]{background:var(--gl-cream)!important;}
#mkpSampleModal svg{stroke:var(--gl-forest)!important;}
#mkpSampleGoBtn{background:var(--gl-ink)!important;}
#mkpSampleGoBtn:hover{background:var(--gl-forest)!important;}
#mkpBtnBuy~div button:not(#mkpBtnSample){color:var(--gl-forest)!important;}

/* ── 3. HAIRLINES CÁLIDOS ──────────────────────────────────────────── */
.mkp-summary{border:1px solid var(--gl-hairline)!important;padding:26px 24px!important;}
.mkp-faq details{border:1px solid var(--gl-hairline-soft)!important;}
.mkp-faq details[open]{background:var(--gl-cream)!important;}
#mkpVectWrap{background:var(--gl-cream)!important;border:1px solid var(--gl-hairline)!important;}
#mkpCode{border:1px solid var(--gl-hairline)!important;}
#mkpCode:focus{border-color:var(--gl-ink)!important;outline:none;}
.mkp-trust-badges{background:transparent!important;border-top:1px solid var(--gl-hairline)!important;border-bottom:1px solid var(--gl-hairline)!important;padding:13px 4px!important;}
.mkp-tech-guide{background:var(--gl-paper)!important;border:1px solid var(--gl-hairline)!important;}
.mkp-tg-item{border:1px solid var(--gl-hairline)!important;box-shadow:none!important;}
.mkp-tg-item:hover{border-color:var(--gl-ink)!important;box-shadow:none!important;transform:none!important;}
.mkp-tg-item.is-active{border:1px solid var(--gl-ink)!important;background:var(--gl-cream)!important;box-shadow:inset 0 0 0 1px var(--gl-ink)!important;}
.mkp-quick-qty button{border:1px solid var(--gl-hairline)!important;transition:all .18s ease!important;}
.mkp-quick-qty button:hover{border-color:var(--gl-ink)!important;background:#fff!important;}
.mkp-quick-qty button.is-active{border-color:var(--gl-ink)!important;background:var(--gl-ink)!important;color:#fff!important;}
.mkp-size-pill{border:1px solid var(--gl-hairline)!important;background:#fff!important;}
.mkp-size-pill:focus-within{border-color:var(--gl-ink)!important;}
.mkp-color{border:1px solid var(--gl-hairline)!important;box-shadow:none!important;}
.mkp-color:hover{border-color:var(--gl-ink)!important;transform:none!important;}
.mkp-color.is-selected{border-color:#fff!important;box-shadow:0 0 0 3px var(--gl-forest)!important;}
.mkp-color-group{border:1px solid var(--gl-hairline)!important;}
.mkp-color-group.is-open,.mkp-color-group.has-qty{border-color:var(--gl-ink)!important;}
.mkp-qty{background:var(--gl-cream)!important;}
.mkp-thumbs button{border:1px solid var(--gl-hairline)!important;}
.mkp-thumbs button:hover,.mkp-thumbs button.is-active{border-color:var(--gl-ink)!important;}
.mkp-tier{border:1px solid var(--gl-hairline)!important;box-shadow:none!important;}
.mkp-tier.is-active{border-color:var(--gl-ink)!important;background:#fff!important;box-shadow:none!important;}

/* ── 4. TIPOGRAFÍA DISPLAY ─────────────────────────────────────────── */
.frp-desde strong{font-family:var(--gl-serif)!important;font-weight:500!important;}
.mkp-summary h3{font-family:var(--gl-serif)!important;font-size:21px!important;font-weight:500!important;letter-spacing:-.2px!important;}
.mkp-sum-total span:last-child{font-family:var(--gl-serif)!important;font-size:24px!important;font-weight:500!important;}
.mkp-sum-row span:last-child{font-variant-numeric:tabular-nums;}
.mkp-total-price{font-family:var(--gl-serif)!important;}

/* ── 5. BOTONES CONSISTENTES ───────────────────────────────────────── */
.mkp-btn-cart{border:1px solid var(--gl-ink)!important;background:#fff!important;color:var(--gl-ink)!important;font-weight:600!important;letter-spacing:.2px;transition:all .18s ease!important;}
.mkp-btn-cart:hover{background:var(--gl-ink)!important;color:#fff!important;}
.mkp-btn-pdf{border:1px solid var(--gl-hairline)!important;color:var(--gl-muted)!important;}
.mkp-btn-pdf:hover{border-color:var(--gl-ink)!important;color:var(--gl-ink)!important;}
#mkpBtnBuy{font-weight:600!important;letter-spacing:.2px!important;}
#mkpTechToggle{border-top:1px solid var(--gl-hairline)!important;border-bottom:1px solid var(--gl-hairline)!important;padding:13px 0!important;margin-bottom:14px!important;}
#mkpTechToggle:hover #mkpTechLabel{color:var(--gl-ink)!important;}
#mkpTechLabel{transition:color .18s ease;}

/* ── 6. GALERÍA STICKY (premium PDP) ───────────────────────────────── */
@media(min-width:901px){
  .mkp-gallery{position:sticky;top:24px;}
}
.mkp-hero{background:var(--gl-cream)!important;}

/* ── 7. MICRO-ETIQUETAS UNIFICADAS ─────────────────────────────────── */
.mkp-step-title,.mkp-section-title{font-size:11px!important;font-weight:600!important;letter-spacing:2.2px!important;color:var(--gl-muted)!important;}
.mkp-step-title #mkpColorName{font-size:12px;letter-spacing:.2px;}

/* ── 8. CATÁLOGO (.dc-*) ───────────────────────────────────────────── */
.dc-search input,.dc-search{border-radius:0!important;}
.dc-pill,.dc-pill-clear,.dc-load-more,.dc-mobile-filter-btn,
.dc-pagination a,.dc-pagination span,.dc-check,.dc-mockup-chip{border-radius:0!important;}
.dc-pill{border:1px solid var(--gl-hairline)!important;background:#fff!important;}
.dc-pill:hover{border-color:var(--gl-ink)!important;}
.dc-load-more{border:1px solid var(--gl-ink)!important;background:#fff!important;color:var(--gl-ink)!important;transition:all .18s ease!important;}
.dc-load-more:hover{background:var(--gl-ink)!important;color:#fff!important;}
.dc-card-img{background:var(--gl-cream)!important;}
.dc-card:hover .dc-card-img{box-shadow:none!important;outline:1px solid var(--gl-ink);}
.dc-card-name{font-weight:500!important;}
.dc-color-chip{border-radius:50%!important;border:1px solid var(--gl-hairline)!important;}

/* ── 9. CARRITO / WOO ──────────────────────────────────────────────── */
.dc-wrap .button,.woocommerce .button,.woocommerce button.button{border-radius:0!important;}
.dc-wrap .button:not(.alt),.woocommerce .button:not(.alt){border:1px solid var(--gl-ink)!important;background:#fff!important;color:var(--gl-ink)!important;}
.woocommerce .button.alt,.woocommerce .checkout-button{background:var(--gl-ink)!important;color:#fff!important;border:none!important;}
.woocommerce .button.alt:hover,.woocommerce .checkout-button:hover{background:var(--gl-forest)!important;}

/* ── 10. MODAL PRESUPUESTO ─────────────────────────────────────────── */
.mkp-quote-modal input,.mkp-quote-modal textarea,.mkp-quote-modal select{border:1px solid var(--gl-hairline)!important;border-radius:0!important;}
.mkp-quote-modal input:focus,.mkp-quote-modal textarea:focus{border-color:var(--gl-ink)!important;outline:none!important;}
.mkp-quote-modal button[type=submit]{background:var(--gl-ink)!important;border-radius:0!important;}
.mkp-quote-modal button[type=submit]:hover{background:var(--gl-forest)!important;}

/* ── 10b. FIXES DE ESPECIFICIDAD (QA visual 2026-07-02) ────────────── */
/* Woo global pisa el display:flex inline del label → overlap en resumen */
#mkpVectWrap{display:flex!important;margin:12px 0 4px!important;}
/* Jerarquía CTA: presupuesto = secundario outline (algún CSS posterior lo pintaba negro) */
#mkpSumBtnCart,#mkpBtnSample{background:#f5f5f5!important;color:#6e6e73!important;border:1px solid #e5e5ea!important;font-weight:600!important;}
#mkpSumBtnCart:hover,#mkpBtnSample:hover{background:#ebebeb!important;color:#4a4a4e!important;}

/* Ficha producto: el breadcrumb fijo (z:9998) tapaba la catbar sticky (z:100)
   → fila fantasma de 45px. El breadcrumb ya lleva las categorías del producto,
   así que la catbar sobra en fichas. */
body.single-product .gl-catbar-outer,body.single-product .gl-catbar-spacer{display:none!important;}
body.single-product .mkp-breadcrumb-bar{top:93px!important;}

/* ── 12. EDITORIAL BOLD — página producto como panel sobre papel ───── */
body.single-product{background:var(--gl-paper)!important;}
body.single-product .mkp-info{background:#fff;border:1px solid var(--gl-hairline);padding:36px 32px 32px!important;}
body.single-product .mkp-breadcrumb-bar{background:rgba(251,250,247,.96)!important;}
.mkp-title{font-size:40px!important;line-height:1.12!important;}
.mkp-hero{border:1px solid var(--gl-hairline);}
.mkp-thumbs button{background:#fff!important;}
.mkp-faq details{background:#fff;}

/* cantidad con más presencia */
.mkp-quick-qty button{padding:10px 18px!important;font-size:14px!important;}

/* toggle personalización = tarjeta-opción */
#mkpTechToggle{border:1px solid var(--gl-hairline)!important;padding:16px!important;margin:6px 0 14px!important;background:#fff!important;transition:border-color .18s ease;}
#mkpTechToggle:hover{border-color:var(--gl-ink)!important;}
#mkpTechChevron{width:18px!important;height:18px!important;flex-shrink:0;}

/* resumen integrado en el panel: separado por regla de tinta, total en banda */
.mkp-summary{border:none!important;border-top:2px solid var(--gl-ink)!important;padding:22px 0 0!important;margin-top:26px!important;}
.mkp-sum-total{border-top:1px solid var(--gl-hairline);border-bottom:1px solid var(--gl-hairline);padding:14px 0!important;margin:10px 0;}
.mkp-riskfree{background:transparent!important;border:none!important;border-top:1px solid var(--gl-hairline)!important;padding:14px 0 0!important;margin-top:16px!important;justify-content:flex-start!important;}

/* el breadcrumb fijo necesita hueco arriba (el spacer de la catbar ya no existe) */
body.single-product .mkp{padding-top:80px!important;}
/* compactar el vacío entre personalización y presupuesto (secciones ocultas) */
body.single-product .mkp-summary{margin-top:8px!important;}

/* catálogo sobre papel + precio "desde" */
.dc-catalog{background:var(--gl-paper);}
.dc-card-price small{display:inline!important;font-size:10px;color:var(--gl-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px;margin-right:3px;}

/* ── 13. FILOSOFÍA DE MARCA — mismos productos, mejor presentados ──── */
/* Fotos de proveedor (fondo blanco) fundidas en papel: art direction propia */
.mkp-hero img,.dc-card-img img{mix-blend-mode:multiply;}
.mkp-thumbs button{background:var(--gl-cream)!important;}
.mkp-thumbs button img{mix-blend-mode:multiply;}
.mkp-hero{overflow:hidden;}
.mkp-hero img{transition:transform .5s ease;}
.mkp-hero:hover img{transform:scale(1.04);}

/* Descripción editorial: párrafo lead + secciones con eyebrow labels */
.mkp-desc>p:first-of-type{font-size:19px;line-height:1.85;}
.mkp-desc h2,.mkp-desc h3{font-family:var(--gl-sans)!important;font-size:11px!important;font-weight:600!important;text-transform:uppercase;letter-spacing:2.5px;color:var(--gl-forest)!important;border-top:1px solid var(--gl-hairline);padding-top:20px;margin:28px 0 12px!important;}

/* Bloque "Por qué es eco" como momento de marca */
.gl-eco-p{background:var(--gl-cream);border-left:2px solid var(--gl-forest);padding:18px 22px;font-size:16px!important;}

/* Material certificado bajo el título */
.gl-material-line{font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--gl-forest);margin:0 0 12px;}
.mkp-info > .gl-material-line{order:2;}

/* Catálogo: subtítulo con voz de marca */
.dc-pagehead p{font-family:var(--gl-serif)!important;font-style:italic;font-size:17px!important;color:#4a4a44!important;}

/* ── 14. PACKS + MANIFIESTO + LANDINGS alineados al sistema ────────── */
/* Landings de categoría: hero visual editorial (fuera sombras y radios) */
.gl-cat-hero{background:var(--gl-paper)!important;}
.gl-cat-hero-imgwrap{border-radius:0!important;box-shadow:none!important;background:var(--gl-cream)!important;border:1px solid var(--gl-hairline)!important;}
.gl-cat-hero-imgwrap img{mix-blend-mode:multiply;}

/* Packs: fotos fundidas + precio display */
.glp-pack-img{background:var(--gl-cream)!important;border:1px solid var(--gl-hairline);}
.glp-pack-img-grid img{background:transparent!important;mix-blend-mode:multiply;}
.glp-pack-price{font-family:var(--gl-serif)!important;font-size:22px!important;color:var(--gl-ink)!important;font-weight:500!important;font-style:normal;}
.glp-pack-cta{transition:background .18s ease!important;}
.glp-pack-cta:hover{background:var(--gl-forest)!important;}

/* Manifiesto (sobre-nosotros) */
.gla-hero{background:var(--gl-paper)!important;}
.gla-val-num{color:var(--gl-forest)!important;}

/* ── 15. MUESTRA VIRTUAL (.mv-*) al sistema ────────────────────────── */
.mv-card,.mv-canvas-wrap,.mv-info-card,.mv-cta,.mv-upload-zone,.mv-toolbar button,
.mv-toolbar .mv-btn-buy,.mv-color-chip,.mv-area-btn img,.mv-canvas-container canvas,
.mv-upload-preview img,.mv-result img,.mv-cta a{border-radius:0!important;}
.mv-card,.mv-canvas-wrap,.mv-info-card{background:var(--gl-paper)!important;border:1px solid var(--gl-hairline)!important;}
.mv-upload-zone{border:1px dashed var(--gl-hairline)!important;}
.mv-upload-zone:hover{border-color:var(--gl-forest)!important;}
.mv-cta{background:var(--gl-ink)!important;}
.mv-cta .mv-cta-pink:hover{transform:none!important;background:var(--gl-forest-dark)!important;}

/* ── 16. MÓVIL: flujo de compra primero ────────────────────────────── */
@media(max-width:900px){
  /* La descripción (≈950px) iba ANTES del configurador → compra enterrada.
     Ahora: título → precio → cantidad → personalización → presupuesto → descripción → FAQ */
  .mkp-info > .mkp-desc-mobile{order:16!important;}
  /* Barra CTA fija inferior: de 207px a ~120px (fuera riskfree + fila de enlaces) */
  .mkp-sum-actions{padding:10px 14px!important;gap:8px!important;}
  .mkp-sum-actions .mkp-riskfree{display:none!important;}
  .mkp-sum-actions > div:last-child{display:none!important;}
  /* espacio para que la barra fija no tape el final de la página */
  .mkp-info{padding-bottom:160px!important;}
  /* breadcrumb: scroll horizontal suave */
  .mkp-breadcrumb-bar{-webkit-overflow-scrolling:touch;}
  /* el panel producto pierde el padding de escritorio */
  body.single-product .mkp-info{padding:24px 18px 160px!important;}
  body.single-product .mkp{padding-top:64px!important;}
  .mkp-title{font-size:30px!important;}
}

/* ── 17. RELACIONADOS EN FICHA ─────────────────────────────────────── */
.gl-related{margin:48px 0 8px;padding-top:32px;border-top:1px solid var(--gl-hairline);}
.gl-related-title{font-size:11px;font-weight:600;letter-spacing:2.2px;text-transform:uppercase;color:var(--gl-muted);margin-bottom:18px;}
.gl-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media(max-width:900px){.gl-related-grid{grid-template-columns:repeat(2,1fr);gap:14px;}}
.gl-related-card{text-decoration:none;color:var(--gl-ink-soft);display:block;}
.gl-related-img{aspect-ratio:1;background:var(--gl-cream);border:1px solid var(--gl-hairline-soft);display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:10px;}
.gl-related-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .4s ease;}
.gl-related-card:hover .gl-related-img{border-color:var(--gl-ink);}
.gl-related-card:hover .gl-related-img img{transform:scale(1.05);}
.gl-related-name{font-size:13.5px;font-weight:500;line-height:1.35;}
.gl-related-mat{font-size:11.5px;color:var(--gl-muted);margin-top:2px;}
.gl-related-price{font-size:13px;font-weight:600;margin-top:4px;}
.gl-related-price small{font-size:9.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--gl-muted);font-weight:500;}

/* Packs: la cuadrícula 2×2 definía más altura que el contenedor 4/3 → recorte en móvil */
.glp-pack-img{aspect-ratio:auto!important;}

/* ── 11. DETALLES ──────────────────────────────────────────────────── */
.mkp-bc-pill{border-radius:0!important;border:1px solid var(--gl-hairline)!important;}
.mkp-bc-pill:hover{border-color:var(--gl-ink)!important;}
.mkp-toast{background:var(--gl-ink)!important;}
::selection{background:var(--gl-forest);color:#fff;}
.mkp-info a:focus-visible,.mkp-info button:focus-visible{outline:2px solid var(--gl-ink)!important;outline-offset:2px!important;}
/* ── CONFIGURADOR DE PACKS (.glc-*) ────────────────────────────────── */
.glc *{box-sizing:border-box;}
.glc{font-family:var(--gl-sans);color:var(--gl-ink-soft);background:var(--gl-paper);}
.glc-hero{text-align:center;padding:56px 24px 32px;max-width:760px;margin:0 auto;}
.glc-hero-eyebrow{font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--gl-forest);margin-bottom:12px;}
.glc-hero h1{font-family:var(--gl-serif);font-size:clamp(30px,4.5vw,46px);font-weight:500;font-style:italic;margin:0 0 14px;letter-spacing:-.5px;}
.glc-hero p{font-size:15.5px;color:#5a5a54;line-height:1.7;margin:0;}

.glc-app{max-width:1240px;margin:0 auto;padding:0 24px 80px;display:grid;grid-template-columns:1fr 380px;gap:32px;align-items:start;}
@media(max-width:900px){.glc-app{grid-template-columns:1fr;}}

/* Tabs */
.glc-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px;}
.glc-tab{padding:8px 16px;border:1px solid var(--gl-hairline);background:#fff;font-size:13px;font-weight:500;color:#6e6e73;cursor:pointer;font-family:inherit;transition:all .18s ease;}
.glc-tab:hover{border-color:var(--gl-ink);}
.glc-tab.is-active{background:var(--gl-ink);color:#fff;border-color:var(--gl-ink);}

/* Grid */
.glc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
@media(max-width:1100px){.glc-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.glc-grid{grid-template-columns:repeat(2,1fr);gap:10px;}}
.glc-card{border:1px solid var(--gl-hairline);background:#fff;padding:12px;display:flex;flex-direction:column;cursor:pointer;transition:border-color .18s ease;position:relative;}
.glc-card:hover{border-color:var(--gl-ink);}
.glc-card.is-selected{border:2px solid var(--gl-forest);padding:11px;}
.glc-card-img{aspect-ratio:1;background:var(--gl-cream);display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:10px;position:relative;}
.glc-card-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;}
.glc-card-check{position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:50%;background:var(--gl-forest);display:none;align-items:center;justify-content:center;}
.glc-card.is-selected .glc-card-check{display:flex;}
.glc-card-check svg{width:15px;height:15px;stroke:#fff;fill:none;stroke-width:3;}
.glc-card-name{font-size:13.5px;font-weight:500;line-height:1.3;margin-bottom:2px;}
.glc-card-badge{font-size:11px;color:var(--gl-muted);margin-bottom:6px;}
.glc-card-price{font-size:13px;font-weight:600;margin-bottom:10px;margin-top:auto;}
.glc-card-price small{font-size:9.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--gl-muted);font-weight:500;}
.glc-card-add{padding:8px;border:1px solid var(--gl-ink);background:#fff;color:var(--gl-ink);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .18s ease;}
.glc-card-add:hover{background:var(--gl-ink);color:#fff;}
.glc-card.is-selected .glc-card-add{background:var(--gl-forest);color:#fff;border-color:var(--gl-forest);}
.glc-card.is-selected .glc-card-add::after{content:' ✓';}

/* Panel */
.glc-panel{background:#fff;border:1px solid var(--gl-hairline);padding:24px;position:sticky;top:24px;}
.glc-panel h2{font-family:var(--gl-serif);font-size:21px;font-weight:500;margin:0 0 16px;}
.glc-empty{font-size:13.5px;color:var(--gl-muted);line-height:1.6;padding:20px 0;text-align:center;}
.glc-items{display:flex;flex-direction:column;gap:2px;}
.glc-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--gl-hairline-soft);}
.glc-item-img{width:40px;height:40px;background:var(--gl-cream);flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.glc-item-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;}
.glc-item-info{flex:1;min-width:0;}
.glc-item-name{font-size:13px;font-weight:500;line-height:1.3;}
.glc-item-badge{font-size:11px;color:var(--gl-muted);}
.glc-item-price{font-size:13px;font-weight:600;white-space:nowrap;}
.glc-item-remove{background:none;border:none;font-size:20px;color:var(--gl-faint);cursor:pointer;padding:0 2px;line-height:1;transition:color .18s;}
.glc-item-remove:hover{color:var(--gl-ink);}

.glc-qty-block{margin-top:18px;}
.glc-qty-label{font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--gl-muted);margin-bottom:10px;}
.glc-qty-btns{display:flex;gap:6px;flex-wrap:wrap;}
.glc-qty-btns button{flex:1;min-width:48px;padding:9px 6px;border:1px solid var(--gl-hairline);background:#fff;font-size:13px;font-weight:600;color:#1d1d1f;cursor:pointer;font-family:inherit;transition:all .18s ease;}
.glc-qty-btns button:hover{border-color:var(--gl-ink);}
.glc-qty-btns button.is-active{background:var(--gl-ink);color:#fff;border-color:var(--gl-ink);}

.glc-summary{margin-top:20px;border-top:2px solid var(--gl-ink);padding-top:16px;}
.glc-sum-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:13px;}
.glc-sum-row span:first-child{color:var(--gl-muted);}
.glc-sum-row span:last-child{font-weight:600;font-variant-numeric:tabular-nums;}
.glc-sum-divider{height:1px;background:var(--gl-hairline);margin:6px 0;}
.glc-sum-total{border-top:1px solid var(--gl-hairline);border-bottom:1px solid var(--gl-hairline);padding:12px 0!important;margin:8px 0;}
.glc-sum-total span:last-child{font-family:var(--gl-serif);font-size:24px;font-weight:500;}
.glc-sum-note{font-size:11.5px;color:var(--gl-muted);line-height:1.5;margin-top:8px;}

.glc-cta{width:100%;padding:15px;background:var(--gl-ink);color:#fff;border:none;font-size:15px;font-weight:600;letter-spacing:.2px;cursor:pointer;font-family:inherit;margin-top:16px;transition:background .18s ease;}
.glc-cta:hover{background:var(--gl-forest);}

.glc-form{margin-top:16px;display:flex;flex-direction:column;gap:8px;}
.glc-form-title{font-size:13px;font-weight:600;margin-bottom:2px;}
.glc-form input,.glc-form textarea{width:100%;padding:11px 13px;border:1px solid var(--gl-hairline);font-size:13.5px;font-family:inherit;background:#fff;}
.glc-form input:focus,.glc-form textarea:focus{border-color:var(--gl-ink);outline:none;}
.glc-form-send{padding:14px;background:var(--gl-forest);color:#fff;border:none;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .18s;}
.glc-form-send:hover{background:var(--gl-forest-dark);}
.glc-form-send:disabled{opacity:.6;cursor:default;}
.glc-form-legal{font-size:11px;color:var(--gl-muted);line-height:1.5;text-align:center;margin-top:4px;}

.glc-success{margin-top:16px;text-align:center;padding:24px 16px;background:var(--gl-cream);}
.glc-success svg{width:40px;height:40px;stroke:var(--gl-forest);fill:none;stroke-width:2.5;margin-bottom:10px;}
.glc-success div{font-size:14px;color:var(--gl-ink-soft);line-height:1.5;}

/* ── 18. MÓVIL: fix desbordamiento panel + WhatsApp sobre barra CTA (2026-07-02) ── */
/* El panel .mkp-info es content-box: sus 36px padding + 2px borde se sumaban al
   ancho de la columna (366px) → 404px → desbordaba 26px por la derecha. */
.mkp-info{box-sizing:border-box!important;max-width:100%;}
.mkp-info>*{max-width:100%;}
@media(max-width:900px){
  /* WhatsApp/flotantes por encima de la barra fija de compra (137px) — evita el solape */
  body.single-product .gl-float-grp{bottom:150px!important;}
  /* barra CTA no más ancha que el viewport */
  .mkp-sum-actions{box-sizing:border-box;max-width:100vw;left:0;right:0;}
  /* valores del resumen: que no se corten, permitir wrap si hace falta */
  .mkp-sum-row{gap:10px;}
  .mkp-sum-row span:last-child{text-align:right;word-break:normal;}
}

/* ── 19. PACKS por soluciones + niveles (2026-07-02) ───────────────── */
.glp-sol-head{max-width:1100px;margin:56px auto 8px;padding:28px 32px 0;border-top:2px solid var(--gl-ink);}
.glp-sol-eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#fff;background:var(--gl-forest);padding:6px 16px;border-radius:20px;margin-bottom:14px;}
.glp-sol-title{font-family:var(--gl-serif)!important;font-size:26px!important;font-weight:500!important;font-style:normal!important;margin:0 0 6px!important;}
.glp-sol-sub{font-size:14.5px;color:#5a5a52;max-width:560px;line-height:1.6;margin:0;}
.glp-tier{display:inline-block;font-size:11px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--gl-forest);margin-bottom:10px;}
.glp-solnav{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:26px auto 4px;max-width:900px;padding:0 20px;}
.glp-solnav a{font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--gl-ink);text-decoration:none;border:1px solid var(--gl-hairline);padding:9px 16px;transition:all .18s ease;}
.glp-solnav a:hover{border-color:var(--gl-ink);}
.glp-discount-banner{max-width:640px;margin:0 auto 8px;text-align:center;background:#eef4ee;color:var(--gl-forest);font-size:13.5px;font-weight:600;padding:11px 22px;border-radius:8px;}
.glp-price-old{text-decoration:line-through;color:#9a9a92;font-size:12.5px;margin-right:6px;font-weight:400;}
.glp-price-now{font-weight:700;color:#1a1a1a;}
.glp-pack-save{display:inline-block;background:#eef4ee;color:var(--gl-forest);font-size:10.5px;font-weight:700;letter-spacing:.4px;padding:3px 9px;border-radius:12px;margin-left:8px;vertical-align:1px;white-space:nowrap;}

/* ── 20. Toggle Selección Greenly (catálogo curado) ────────────────── */
.dc-curated{padding:8px 14px;border:1px solid var(--gl-hairline);background:#fff;font-size:12px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--gl-muted);cursor:pointer;font-family:var(--gl-sans);transition:all .18s ease;white-space:nowrap;}
.dc-curated.is-on{border-color:var(--gl-forest);color:var(--gl-forest);background:#f0f5f1;}
.dc-curated:hover{border-color:var(--gl-ink);color:var(--gl-ink);}

/* ── 21. Configurador de packs: selector de técnica por producto ───── */
.glc-item-tech{margin-top:4px;font-size:11.5px;padding:3px 6px;border:1px solid var(--gl-hairline);background:#fff;color:var(--gl-ink-soft);max-width:100%;font-family:var(--gl-sans);}
.glc-item-tech:focus{border-color:var(--gl-ink);outline:none;}
