/* Composición pública. Pro, SEO y comparación conservan sus presentaciones. */
html.qv-workspace #planes-recomendados .plan-heading__line { display: none; }
html.qv-workspace :is(#planes-recomendados,.qvac) .codigo-plan { font: 400 11px/1.25 var(--ff-sans,system-ui); letter-spacing: .01em; }
html.qv-workspace #planes-recomendados .qv-plan-layout { height: auto !important; }
html.qv-workspace #planes-recomendados .qv-plan-layout .flip-card__inner { display: grid; min-height: 0; }
html.qv-workspace #planes-recomendados :where(.qv-plan-layout) .tarjeta-plan {
  grid-area: 1 / 1; position: relative; inset: auto; width: 100%; height: auto;
  box-sizing: border-box; min-width: 0; padding: 22px; border-radius: 18px;
}
html.qv-workspace #planes-recomendados .plan-card--workspace {
  display: flex; flex-direction: column; min-height: 0; padding: 24px; border-radius: 20px;
}
/* Frente original sobre la geometría actual: filas legibles y desglose junto al precio.
   El pie se distribuye por su contenido; sustituye aquí el grid y las abreviaturas
   móviles compartidas, sin depender del contenedor histórico plan-mobile. */
html.qv-workspace .plan-card--workspace .nombre-plan { white-space: normal; overflow: visible; overflow-wrap: anywhere; }
html.qv-workspace .plan-meta-actions { display: flex; align-items: center; gap: 12px; }
html.qv-workspace .plan-card--workspace .plan-meta-actions { margin-left: auto; }
html.qv-workspace .plan-meta-actions :is(.codigo-plan__share, .plan-evaluation-action) { flex: none; width: auto; height: auto; min-height: 24px; padding: 4px 0; background: transparent; box-shadow: none; color: var(--muted-2); font: 400 11px/1.25 var(--ff-sans,system-ui); letter-spacing: .01em; }
html.qv-workspace .plan-meta-actions .plan-evaluation-action:not(:first-child) { position: relative; margin-left: 1px; }
html.qv-workspace .plan-meta-actions .plan-evaluation-action:not(:first-child)::before { content: ""; position: absolute; left: -7px; top: 50%; height: 12px; border-left: 1px solid #c3cbd5; transform: translateY(-50%); }
html.qv-workspace .plan-meta-actions :is(.codigo-plan__share, .plan-evaluation-action):hover { color: var(--brand); }
html.qv-workspace .plan-card--workspace .plan-footer { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--s-16); margin-top: auto; padding-top: 24px; }
html.qv-workspace .plan-card--workspace .plan-price { min-width: 0; max-width: 100%; }
html.qv-workspace .plan-card--workspace .plan-footer .precio-principal { font-size: 25px; }
html.qv-workspace .plan-card--workspace .plan-footer .plan-actions { gap: 8px; }
html.qv-workspace :is(.plan-card--workspace,.qvac-plan) .plan-footer .plan-actions > * { padding-inline: 10px; white-space: nowrap; }
html.qv-workspace .plan-card--workspace .plan-footer .plan-action svg,
html.qv-workspace .plan-card--workspace .plan-footer .plan-request-public .cta-icon { display: block; }
html.qv-workspace .plan-card--workspace .plan-footer .plan-request-public:not(.is-in-cart) .cta-label { display: inline; }
html.qv-workspace .plan-card--workspace .plan-footer .plan-request-public .cta-label-mobile { display: none; }
/* La composición compacta horizontal pertenece exclusivamente a Lista. */
html.qv-workspace .plan-overview { min-width: 0; }
html.qv-workspace .plan-overview .plan-heading__brand { min-height: 24px; gap: 12px; }
html.qv-workspace .plan-overview .plan-heading__line { font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html.qv-workspace .plan-overview .plan-identity { margin: 6px 0 0; }
html.qv-workspace .plan-overview .nombre-plan { font-size: 13px; line-height: 1.35; white-space: normal; overflow: visible; overflow-wrap: anywhere; }
html.qv-workspace .plan-overview .plan-meta { margin-top: 6px; min-height: 24px; }
html.qv-workspace .qv-plan-layout .ribbons-container { right: 24px; }
/* Top 1 compacto, con la misma escala en Tarjetas y Lista. */
html.qv-workspace #planes-recomendados .ribbon--rank { width: 48px; height: 50px; }
html.qv-workspace #planes-recomendados .ribbon--rank .ribbon-value { font-size: 14px; }
/* Nota neutra en resultados; el distintivo dorado conserva su presentación. */
html.qv-workspace #planes-recomendados .ribbon--score {
  top: 20px;
  background: none;
  box-shadow: none;
  clip-path: none;
  color: #253349;
}
html.qv-workspace #planes-recomendados .ribbon--score .ribbon-header { color: #596b80; }
html.qv-workspace .plan-cost { min-width: 0; }
html.qv-workspace .plan-cost .plan-price { width: auto; max-width: 100%; }
html.qv-workspace .plan-cost .precio-principal { font-size: 22px; line-height: 1.2; }
html.qv-workspace .plan-cost .plan-seven { justify-content: flex-start; flex-wrap: wrap; gap: 4px 8px; min-height: 0; padding: 7px 0 0; border: 0; font-size: 12px; }
html.qv-workspace .plan-cost .plan-seven .plan-metric__value { text-align: left; font-size: inherit; }
html.qv-workspace .plan-cost .plan-seven svg { width: 14px; height: 14px; }
html.qv-workspace .plan-facts { min-width: 0; padding: 0; border: 0; }
html.qv-workspace .plan-facts .plan-metric { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 5px; padding: 0; min-height: 38px; border: 0; }
html.qv-workspace .plan-facts .plan-metric__label { font-size: 12px; gap: 6px; }
html.qv-workspace .plan-facts .plan-metric__label svg { width: 14px; height: 14px; }
html.qv-workspace .plan-facts .plan-metric__value { font-size: 14px; text-align: left; }
html.qv-workspace .plan-decisions { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: auto; min-width: 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
html.qv-workspace .plan-decisions .plan-actions { margin: 0; gap: 6px; }
html.qv-workspace .plan-decisions :is(.plan-action,.btn-cta-solicitar) { min-width: 0; min-height: 34px; height: 34px; padding: 0 9px; font-size: 12px; white-space: nowrap; }
html.qv-workspace .plan-decisions :is(.plan-action,.btn-cta-solicitar) svg { width: 15px; height: 15px; }
html.qv-workspace .plan-evaluation-action { appearance: none; border: 0; border-radius: 8px; background: transparent; color: #507093; font: 600 11px/1.3 var(--ff-sans,system-ui); padding: 8px 0; min-height: 34px; cursor: pointer; }
html.qv-workspace .plan-evaluation-action:hover, html.qv-workspace .plan-evaluation-action[aria-expanded="true"] { color: var(--brand); }
html.qv-workspace .qv-plan-layout .plan-price-breakdown { margin: 0; border-top: 0; }
html.qv-workspace .qv-plan-layout .plan-network__body { border-bottom: 0; }
html.qv-workspace .qv-plan-layout .plan-network tbody tr:last-child > :is(th, td) { border-bottom: 0; }
/* Ambas caras participan en el tamaño intrínseco: la trayectoria nunca se recorta. */
html.qv-workspace #planes-recomendados .qv-plan-layout .plan-back { min-height: 0; padding: 24px; border-radius: 20px; }
html.qv-workspace .qv-plan-layout .plan-back__heading { display: flex; align-items: center; gap: 8px; margin-bottom: 16px; }
html.qv-workspace .qv-plan-layout .plan-back__heading h2 { display: flex; align-items: center; gap: 7px; margin: 0; color: var(--ink); font-size: 14px; font-weight: 650; line-height: 1.4; }
html.qv-workspace .qv-plan-layout .plan-back__heading h2 svg { width: 16px; height: 16px; flex: none; color: var(--muted-2); }
html.qv-workspace .qv-plan-layout .plan-back__score { color: var(--brand); font-size: 17px; font-weight: 650; white-space: nowrap; font-variant-numeric: tabular-nums; }
html.qv-workspace .qv-plan-layout .plan-back__score small { margin-left: 2px; color: var(--muted-2); font-size: 11px; font-weight: 400; }
html.qv-workspace .qv-plan-layout .plan-back .boton-volver { position: static; margin-left: auto; min-height: 26px; height: auto; padding: 4px 0 4px 6px; gap: 5px; font-size: 12px; white-space: nowrap; }
html.qv-workspace .qv-plan-layout .plan-back .boton-volver svg { width: 15px; height: 15px; }
html.qv-workspace .qv-plan-layout .plan-back__content { flex: 1; gap: 16px; }
html.qv-workspace .qv-plan-layout .plan-back h3 { color: var(--ink); font-size: 12px; font-weight: 600; }
html.qv-workspace .qv-plan-layout .plan-back h3 svg { color: var(--muted-2); }
html.qv-workspace .qv-plan-layout .plan-back__rating { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; padding: 0; border: 0; }
html.qv-workspace .qv-plan-layout .plan-back__dimension { gap: 8px; line-height: 1.4; }
html.qv-workspace .qv-plan-layout .plan-back__dimension-score { font-size: 14px; font-variant-numeric: tabular-nums; }
html.qv-workspace .qv-plan-layout .plan-back__dimension-label { font-size: 12px; }
html.qv-workspace .qv-plan-layout .plan-back__position,
html.qv-workspace .qv-plan-layout .plan-back__history { border-top: 1px solid var(--qv-surface-border); padding-top: 16px; }
html.qv-workspace .qv-plan-layout .plan-back__history { display: flex; flex-direction: column; flex: 1; }
html.qv-workspace .qv-plan-layout [data-plan-trajectory] { display: flex; flex-direction: column; flex: 1; }
html.qv-workspace .qv-plan-layout .plan-back__position h3 { margin-bottom: 12px; }
html.qv-workspace .qv-plan-layout .plan-back__kpis { gap: 12px; }
html.qv-workspace .qv-plan-layout .plan-back__kpis strong { font-size: 16px; }
html.qv-workspace .qv-plan-layout .plan-back__kpis > div { align-items: center; text-align: center; gap: 4px; }
html.qv-workspace .qv-plan-layout .plan-back__kpis > div:nth-child(even) { padding-left: 12px; }
html.qv-workspace .qv-plan-layout .plan-back__kpis span { overflow-wrap: anywhere; }
html.qv-workspace .qv-plan-layout .plan-back__period { margin: auto 0 0; padding-top: 12px; color: var(--muted-2); font-size: 11px; line-height: 1.4; }
html.qv-workspace .qv-plan-layout .plan-back__history-heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 12px; }
html.qv-workspace .qv-plan-layout .plan-back__change-count { margin: 0; font-size: 11px; font-weight: 400; }
html.qv-workspace .qv-plan-layout .plan-back__timeline { font-size: 12px; --plan-back-event-line-height: 16.8px; margin-top: 12px; }
html.qv-workspace .qv-plan-layout .plan-back__timeline li:not(:last-child) { padding-bottom: 10px; }
html.qv-workspace .qv-plan-layout .plan-back__event { column-gap: 8px; }
html.qv-workspace .qv-plan-layout .plan-back__event time { font-size: 11px; white-space: nowrap; }
/* La fila no tiene reverso ni gestor de altura/giro. Conserva el portador de identidad. */
html.qv-workspace #planes-recomendados .qv-plan-layout[data-layout="row"] { perspective: none; }
html.qv-workspace #planes-recomendados .qv-plan-layout[data-layout="row"] .flip-card__inner { display: block; transform: none !important; }
html.qv-workspace #planes-recomendados .plan-row {
  display: grid; grid-template-columns: minmax(210px, 1.5fr) 64px minmax(200px, 1.1fr) repeat(3, minmax(90px, .6fr)) 64px auto;
  align-items: center; gap: 16px; padding: 20px 22px;
}
html.qv-workspace .plan-row .plan-meta { justify-content: flex-start; }
html.qv-workspace .plan-row__score { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 5px; min-width: 0; margin-inline: -20px 20px; }
/* Comparte el eje central de las notas y cuelga del borde de la fila. */
html.qv-workspace #planes-recomendados .plan-row__score .ribbons-container { position: absolute; inset: -1px auto auto; transform: none; }
html.qv-workspace .plan-row__score-label { color: var(--muted-2); font-size: 11px; white-space: nowrap; }
html.qv-workspace .plan-row__score-value { color: var(--ink); font-size: 18px; font-weight: 650; line-height: 1.2; font-variant-numeric: tabular-nums; }
html.qv-workspace .plan-row .plan-heading__brand img { max-width: 65px; max-height: 20px; }
html.qv-workspace .plan-row .plan-facts { display: contents; padding-block: 0; border: 0; }
html.qv-workspace .plan-row .plan-network { display: contents; }
html.qv-workspace .plan-row .plan-network::details-content { display: contents; }
html.qv-workspace .plan-row .plan-network__body { grid-column: 1 / -1; margin: 0; }
html.qv-workspace .plan-row .plan-network:not([open]) > .plan-network__body { display: none; }
html.qv-workspace .plan-row .plan-cost .precio-line { display: flex; flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 3px 8px; }
html.qv-workspace .plan-row .plan-cost .precio-secundario { margin: 0; }
html.qv-workspace .plan-row .plan-facts .plan-metric__label svg { display: none; }
html.qv-workspace .plan-row .plan-decisions { grid-column: 8; grid-row: 1; justify-content: flex-end; margin: 0; }
html.qv-workspace .plan-row .plan-row__share {
  flex: 0 0 var(--plan-row-action-size, 34px);
  width: var(--plan-row-action-size, 34px); height: var(--plan-row-action-size, 34px);
  min-width: var(--plan-row-action-size, 34px); min-height: var(--plan-row-action-size, 34px);
  padding: 0; border-radius: 50%;
}
html.qv-workspace .plan-row .plan-price-breakdown { grid-column: 1 / -1; }
html.qv-workspace #planes-recomendados > .item-plan { container: qvw-plan / inline-size; }
@container qvw-plan (max-width: 1199px) {
  html.qv-workspace #planes-recomendados .plan-row { grid-template-columns: minmax(140px, 1fr) 64px minmax(200px,.9fr) auto; gap: 14px 20px; }
  html.qv-workspace .plan-row .plan-facts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; grid-column: 1 / -1; grid-row: 2; border-top: 1px solid var(--qv-surface-border); padding-top: 12px; }
  html.qv-workspace .plan-row .plan-decisions { grid-column: 4; grid-row: 1; }
}
@container qvw-plan (max-width: 760px) {
  html.qv-workspace #planes-recomendados .plan-row { grid-template-columns: minmax(0,1fr) 64px; }
  html.qv-workspace .plan-row .plan-overview { grid-column: 1 / -1; }
  html.qv-workspace .plan-row.is-top1 .plan-overview { padding-inline-end: 80px; }
  html.qv-workspace .plan-row .plan-cost { grid-row: 2; grid-column: 1; }
  html.qv-workspace .plan-row .plan-row__score { grid-row: 2; grid-column: 2; margin-inline: 0; }
  html.qv-workspace .plan-row .plan-decisions { grid-column: 1 / -1; grid-row: 4; }
  html.qv-workspace .plan-row .plan-facts { grid-row: 3; grid-column: 1 / -1; }
}
@container qvw-plan (max-width: 380px) {
  html.qv-workspace #planes-recomendados .qv-plan-layout .tarjeta-plan { padding: 16px; }
  html.qv-workspace .plan-decisions { flex-wrap: wrap; }
  html.qv-workspace .plan-decisions .plan-actions { margin-left: auto; }
  html.qv-workspace .plan-row .plan-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (hover: none) and (pointer: coarse), (max-width: 1024px) {
  html.qv-workspace .plan-row { --plan-row-action-size: 44px; }
  html.qv-workspace .plan-decisions :is(.plan-action,.btn-cta-solicitar),
  html.qv-workspace .plan-card--workspace .plan-meta .plan-evaluation-action,
  html.qv-workspace .qv-plan-layout .plan-back .boton-volver { min-height: 44px; height: auto; display: inline-flex; align-items: center; }
}

/* Pie público móvil: precio y acciones comparten fila por ancho real de tarjeta. */
@media (max-width:1024px) {
  html.qv-workspace .plan-card--workspace .plan-footer { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:center; }
  html.qv-workspace .plan-card--workspace .plan-footer .precio-principal { font-size:20px; }
  html.qv-workspace .plan-card--workspace .plan-price__primary { gap:3px; }
  html.qv-workspace .plan-card--workspace .plan-price__chevron { width:14px; height:14px; }
  html.qv-workspace .plan-card--workspace .plan-footer .plan-actions { gap:6px; }
  html.qv-workspace .plan-card--workspace .plan-footer .plan-actions > * { padding-inline:12px; font-size:13px; min-height:44px; }
  @container qvw-plan (max-width:380px) {
    html.qv-workspace .plan-card--workspace .plan-footer .plan-actions > * { padding-inline:8px; min-width:70px; }
    html.qv-workspace .plan-card--workspace .plan-footer :is(.plan-action svg,.plan-request-public .cta-icon) { display:none; }
  }
  @container qvw-plan (max-width:330px) {
    html.qv-workspace .plan-card--workspace .plan-footer .precio-principal { font-size:18px; }
    html.qv-workspace .plan-card--workspace .plan-footer .plan-actions > * { padding-inline:6px; min-width:64px; }
  }
}
