.cm-precio { display:block; font-family:inherit; color:#252525; margin:12px 0 24px; container-type:inline-size; }
.cm-precio .cmp-content { display:block; }
.cm-precio .cmp-badge { display:table; background:#55a36c; color:#fff; font-size:13px; font-weight:700; padding:6px 12px; line-height:1.2; margin-bottom:10px; border-radius:2px; }
.cm-precio .cmp-from { display:block; font-size:14px; color:#666; }
.cm-precio .cmp-main { display:flex; align-items:baseline; gap:6px 10px; flex-wrap:wrap; line-height:1.3; }
.cm-precio .cmp-main strong { font-size:28px; font-weight:600; }
.cm-precio .cmp-main del { color:#666; font-size:18px; }
.cm-precio .cmp-unit { color:#555; font-size:16px; font-weight:400; }
.cm-precio .cmp-reference { display:flex; align-items:baseline; gap:6px 9px; flex-wrap:wrap; margin-top:10px; font-size:18px; }
.cm-precio .cmp-reference b { font-size:36px; font-weight:700; }
.cm-precio .cmp-reference del { font-size:18px; color:#666; }
.cm-precio .cmp-net { display:flex; align-items:baseline; gap:5px; flex-wrap:nowrap; margin-top:13px; font-size:12px; line-height:1.5; color:#555; white-space:nowrap; }
.cm-precio .cmp-net-caption { font-size:11px; }
.cm-precio .cmp-hint, .cm-precio .cmp-admin { display:block; margin-top:10px; font-size:13px; line-height:1.45; color:#666; }
.cm-precio .amount { color:inherit; font-size:inherit; font-weight:inherit; }
.cm-precio--archive { margin:8px 0 12px; text-align:inherit; }
.cm-precio--archive .cmp-main strong { font-size:23px; font-weight:700; }
.cm-precio--archive .cmp-main del { font-size:15px; }
.cm-precio--archive .cmp-unit { font-size:14px; }
.cm-precio--archive .cmp-badge { display:none; }
.cm-precio--archive .cmp-net { font-size:10px; gap:4px; margin-top:7px; }
.cm-precio--archive .cmp-net-caption { font-size:9px; }
form.cmp-replaces-variation-price .woocommerce-variation-price { display:none !important; }
/* La leyenda no se trunca ni se oculta en tarjetas estrechas. */
@container (max-width:430px) {
  .cm-precio--single .cmp-net { font-size:10px; }
  .cm-precio--single .cmp-net-caption { font-size:9px; }
}
@container (max-width:340px) {
  .cmp-net { flex-wrap:wrap !important; white-space:normal !important; }
  .cmp-net-caption, .cmp-net-value { white-space:nowrap; }
}

/* Archive: impedir que estilos del tema pongan el tachado en una fila propia. */
.cm-precio.cm-precio--archive .cmp-main {
  display:flex !important;
  flex-direction:row !important;
  align-items:baseline !important;
  flex-wrap:nowrap !important;
  gap:6px !important;
  gap:clamp(3px, 1.8cqw, 7px) !important;
  white-space:nowrap !important;
}
.cm-precio.cm-precio--archive .cmp-main > del,
.cm-precio.cm-precio--archive .cmp-main > strong,
.cm-precio.cm-precio--archive .cmp-main > .cmp-unit {
  display:inline-block !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1.3 !important;
  white-space:nowrap !important;
}
.cm-precio.cm-precio--archive .cmp-main > strong {
  font-size:23px !important;
  font-size:clamp(19px, 7cqw, 23px) !important;
}
.cm-precio.cm-precio--archive .cmp-main > del {
  font-size:15px !important;
  font-size:clamp(11px, 4.4cqw, 15px) !important;
}
.cm-precio.cm-precio--archive .cmp-main > .cmp-unit {
  font-size:14px !important;
  font-size:clamp(10px, 4cqw, 14px) !important;
}
.cm-precio.cm-precio--archive .cmp-main .amount {
  display:inline !important;
  font-size:inherit !important;
  line-height:inherit !important;
  white-space:nowrap !important;
}
/* Financiación compacta: logo, frase y descuento. */
.cm-precio .cmp-finance--compact { display:block; margin-top:13px; padding:10px 0; border-top:1px solid #e8e8e8; color:#333; font-family:inherit; font-size:13px; font-weight:400; line-height:1.45; text-transform:none; letter-spacing:normal; }
.cm-precio .cmp-fin-offer { display:flex; align-items:center; gap:10px; flex-wrap:nowrap; box-sizing:border-box; padding:10px 14px; background:#e7e7e7; border-radius:20px; }
.cm-precio .cmp-fin-logo { display:block; width:44px !important; max-width:44px !important; height:22px !important; object-fit:contain !important; flex:0 0 44px !important; margin:0 !important; border:0; box-shadow:none; }
.cm-precio .cmp-fin-brand { display:inline-block; font-size:13px; font-weight:700; color:#59229a; }
.cm-precio .cmp-fin-copy { flex:1 1 150px; min-width:0; font-size:14px; line-height:1.45; }
.cm-precio .cmp-fin-copy b { font-weight:700; white-space:nowrap; }
.cm-precio .cmp-fin-caption { display:block; color:#707070; font-size:10px; line-height:1.5; margin-top:5px; }
.cm-precio .cmp-fin-details { display:block; margin-top:9px; }
.cm-precio .cmp-fin-details > summary { display:list-item; cursor:pointer; color:#111 !important; font-size:12px; font-weight:600; padding:2px 0; }
.cm-precio .cmp-fin-details > summary:focus-visible { outline:2px solid #111; outline-offset:3px; }
.cm-precio .cmp-fin-picker { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.5fr); gap:8px; margin:9px 0; max-width:600px; }
.cm-precio .cmp-fin-picker label { display:block; font-size:11px; color:#666; margin:0; }
.cm-precio .cmp-fin-picker select { display:block; box-sizing:border-box; height:auto; min-height:34px; width:100%; min-width:0; max-width:100%; margin-top:3px; padding:6px 8px; border:1px solid #ddd; border-radius:4px; background:#fff; color:#333; font-family:inherit; font-size:12px; line-height:1.4; }
.cm-precio .cmp-fin-result { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 8px; padding:8px 10px; border-radius:5px; background:#f7f7f7; font-size:13px; }
.cm-precio .cmp-fin-result > small { display:block; flex:0 0 100%; font-size:10px; color:#666; line-height:1.5; }
.cm-precio--archive .cmp-fin-copy { font-size:12px; flex-basis:135px; }
.cm-precio.cm-precio--archive .cmp-fin-logo { width:36px !important; max-width:36px !important; height:18px !important; flex:0 0 36px !important; }
.cm-precio.cm-precio--archive .cmp-fin-offer { padding:8px 10px; border-radius:14px; gap:8px; }
.cm-precio .cmp-fin-details > summary::marker { color:#111; }
.cm-precio .cmp-fin-details > summary::-webkit-details-marker { color:#111; }
@container (max-width:260px) { .cm-precio .cmp-fin-picker { grid-template-columns:1fr; } }
.cm-precio .cmp-fin-inline-discount { display:inline; color:#146b30; font-size:inherit; font-weight:800; white-space:nowrap; }
