@import url("/__assets/287f5ff1212410ce6c8c2db6f29750cfb05df2bba4e9a540c256969f35eae9b0/css/asesor-layout-tokens.css");

/* El workspace lee esta longitud con getComputedStyle: registrar el tipo
 * resuelve calc() a píxeles y evita que parseFloat pierda el margen. */
@property --qvw-page-gutter { syntax: '<length>'; inherits: true; initial-value: 32px; }

/* El iframe comparte el fondo de la cabecera; navegación y cuenta quedan
 * en el shell y los controles del catálogo permanecen dentro del lienzo. */
.app.sim-toolbar-fused #asSimHost { grid-area: 1 / 1 / -1 / -1; z-index: 1; }
.app.sim-toolbar-fused .topbar { position: relative; z-index: 2; background: transparent; border-color: transparent; pointer-events: none; }
.app.sim-toolbar-fused .topbar .tb-left,
.app.sim-toolbar-fused .topbar .tb-right { width: max-content; pointer-events: auto; }
.app.sim-toolbar-fused .topbar .tb-right { justify-self: end; position: relative; }
/* Fuera de la fusión, el shell pinta la misma primera fila neutra del público. */
#asApp[data-pro-page="simulador"]:not(.sim-toolbar-fused) .topbar { background:var(--qv-neutral-surface,#f3f4f6); border-color:transparent; }
/* Mantener el documento pintable en Safari mientras se compone la cabecera. */
.sim-frame.is-preparing-toolbar { opacity:0; pointer-events:none; }
.app.sim-toolbar-fused:has(.sim-frame.is-preparing-toolbar) .topbar { background:var(--qv-neutral-surface,#f3f4f6); border-color:transparent; }
/* Mapa ocupa la ventana hasta completar su cierre. Salir/Escape pertenecen
   al explorador; el shell recupera su navegación al regresar. */
.app.sim-map-immersive #asSimHost { grid-area: 1 / 1 / -1 / -1; z-index: 3; }
.app.sim-map-immersive .topbar,
.app.sim-map-immersive .pro-nav { visibility: hidden; pointer-events: none; }
html.qv-pro-workspace {
  --qvw-rail: var(--pro-account-column);
  --qvw-page-gutter: var(--pro-page-gutter);
  --qvw-card-max: var(--pro-card-max);
  --qvw-card-gap: var(--pro-card-gap);
}
/* El detalle comparte el límite útil del Directorio (caja menos padding/bordes).
   Se centra dentro del espacio disponible, también con el Asistente abierto. */
html.qv-pro-workspace #qvwDetailView {
  max-width: calc(var(--plans-shell-max, 1140px) - 2 * var(--plans-shell-padding, 26px) - 2px);
  margin-inline: auto;
}
/* Reserva sólo la primera fila del shell. La segunda fila usa el workspace público. */
html.qv-pro-workspace.qv-workspace.qvw-desktop.qvp-enabled.qv-pro-toolbar-fused:has(#resultados:not([hidden])) {
  --qvp-modes-height:var(--pro-toolbar-height,58px);
}
html.qv-pro-workspace.qv-workspace.qvw-desktop.qvw-header-assistant .qvw-rail-header { display:none; }
/* La mascota ocupa una fila de botón, sin centrarla en otra cabecera más alta. */
html.qv-pro-workspace.qv-workspace.qvw-desktop.qvp-enabled .qvw-rail-header { flex-basis:auto; gap:8px; }

/* Alineado con la cabecera de Inicio: en móvil se priorizan navegación y
 * acciones. El logo conserva el retorno a Inicio; se omite su etiqueta Pro. */
@media (max-width:600px) {
  #asApp[data-pro-page="simulador"] .topbar { grid-template-columns:minmax(0,1fr) auto; gap:4px; }
  #asApp[data-pro-page="simulador"] :is(.tb-section,.pro-nav-chevron,.tb-pro-tag) { display:none; }
  #asApp[data-pro-page="simulador"] .tb-brand { min-width:44px; min-height:44px; justify-content:center; }
  #asApp[data-pro-page="simulador"] .tb-left { margin-inline-start:8px; gap:4px; }
  #asApp[data-pro-page="simulador"] #proNavToggle { width:44px; padding:0; justify-content:center; }
  #asApp[data-pro-page="simulador"] .tb-right { gap:0; }
  #asApp[data-pro-page="simulador"] .tb-avatar { width:44px; }
}

/* Franja vacía detrás de la navegación del shell: reutiliza máscara, borde y
   sombra públicos sin añadir otra capa ni otra fórmula de sombra. */
@media (min-width:1025px) {
  html.qv-pro-workspace.qv-workspace.qvw-desktop.qvp-enabled:is(.qv-pro-toolbar-fused,.qv-pro-conversation) #qvpModes { display:flex; pointer-events:none; }
}
/* Fuera del catálogo, el shell reserva su cabecera sin una franja duplicada. */
html.qv-pro-workspace.qv-workspace.qvp-enabled:not([data-qvw-view="results"]) #resultados { padding-top:0; }
html.qv-pro-workspace.qv-workspace.qvp-enabled .qpd-integrated .plan-detail-nav { top:0; }
