    /* Grid de resultados estadísticos */
    .stats-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: var(--espacio-sm);
      margin-top: var(--espacio-lg);
    }

    .stat-card {
      background-color: var(--color-fondo);
      border: 1px solid var(--color-borde);
      border-radius: var(--radio-md);
      padding: var(--espacio-md);
      text-align: center;
    }

    .stat-card.destacada {
      border-color: var(--color-acento);
      background-color: var(--color-acento-claro);
    }

    .stat-card__label {
      font-size: 0.7rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      color: var(--color-texto-suave);
      margin-bottom: 4px;
    }

    .stat-card__valor {
      font-family: 'Courier New', monospace;
      font-size: 1.1rem;
      font-weight: 700;
      color: var(--color-texto);
      word-break: break-all;
    }

    .stat-card.destacada .stat-card__valor { color: var(--color-acento); }

    .stat-card__sub {
      font-size: 0.7rem;
      color: var(--color-texto-suave);
      margin-top: 2px;
    }

    /* Bloque de outlier */
    .outlier-bloque {
      margin-top: var(--espacio-md);
      padding: var(--espacio-md) var(--espacio-lg);
      border-radius: var(--radio-md);
      border-left: 4px solid;
      font-size: 0.875rem;
    }

    .outlier-bloque.ok    { background:#D1FAE5; border-color:#276C43; color:#065F46; }
    .outlier-bloque.warn  { background:#FEF3C7; border-color:#D97706; color:#92400E; }

    /* Canvas dot-plot */
    .dotplot-wrapper {
      margin-top: var(--espacio-lg);
      background-color: var(--color-fondo);
      border: 1px solid var(--color-borde);
      border-radius: var(--radio-md);
      padding: var(--espacio-md);
      overflow-x: auto;
    }

    .dotplot-titulo {
      font-size: 0.75rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.06em;
      color: var(--color-texto-suave);
      margin-bottom: var(--espacio-sm);
    }

    canvas#dotplot {
      display: block;
      max-width: 100%;
    }

    .dotplot-leyenda {
      display: flex;
      gap: var(--espacio-lg);
      margin-top: var(--espacio-sm);
      flex-wrap: wrap;
    }

    .leyenda-item {
      display: flex;
      align-items: center;
      gap: 6px;
      font-size: 0.75rem;
      color: var(--color-texto-suave);
    }

    .leyenda-dot {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      flex-shrink: 0;
    }

    .leyenda-line {
      width: 16px;
      height: 3px;
      flex-shrink: 0;
    }

    /* Botones de acción */
    .acciones-bar {
      display: flex;
      gap: var(--espacio-sm);
      margin-top: var(--espacio-sm);
      flex-wrap: wrap;
    }

    .btn--sm {
      font-family: var(--fuente-principal);
      font-size: 0.8rem;
      font-weight: 600;
      padding: 6px 14px;
      border-radius: var(--radio-sm);
      border: 1.5px solid var(--color-borde);
      cursor: pointer;
      background-color: var(--color-fondo);
      color: var(--color-texto-suave);
      transition: border-color 0.15s, color 0.15s;
    }

    .btn--sm:hover {
      border-color: var(--color-acento);
      color: var(--color-acento);
    }

    /* Sección de resultados */
    .seccion-resultados {
      display: none;
    }
    .seccion-resultados.visible { display: block; }

    @media (max-width: 768px) {
      .stats-grid { grid-template-columns: repeat(2, 1fr); }
    }

    @media (max-width: 480px) {
      .stats-grid { grid-template-columns: 1fr 1fr; }
    }
