/* Comparativo de recetas (comparativo.php y pestaña de platillos.php) */
.cmp-panel { margin-bottom: 12px; }
.cmp-panel .panel-heading { padding: 8px 12px; }
.cmp-paso {
  display: inline-block;
  width: 20px; height: 20px; line-height: 20px;
  border-radius: 50%;
  background: #3276b1; color: #fff;
  text-align: center; font-size: 11px; font-weight: bold;
  margin-right: 6px;
}
#tablaConexiones td, #tablaConexiones th { padding: 5px 10px; vertical-align: middle; }
.cmp-host { font-family: Consolas, monospace; font-size: 11px; color: #555; }
.cmp-estado-ok { color: #27ae60; font-weight: bold; }
.cmp-estado-error { color: #c0392b; font-weight: bold; }
.cmp-estado-probando { color: #999; }
.cmp-tab-body { border: 1px solid #ddd; border-top: 0; padding: 12px; background: #fff; }
.cmp-card {
  border: 1px solid #e3e3e3; border-radius: 4px;
  padding: 8px 12px; margin-bottom: 10px; background: #fafafa;
  min-height: 72px;
}
.cmp-card-titulo { font-weight: bold; margin-bottom: 4px; }
.cmp-card .cmp-dif { color: #c0392b; font-weight: bold; }
.cmp-leyenda { padding: 2px 8px; margin-right: 6px; border: 1px solid #e3e3e3; border-radius: 3px; font-size: 11px; }
.diff-falta { background-color: #fdecea !important; }
.diff-extra { background-color: #eaf6ff !important; }
.diff-cantidad, .diff-costo { background-color: #fff8e1 !important; }
/* Comparar todos */
.cmp-kpis { display: flex; flex-wrap: wrap; margin: 0 -5px 10px; }
.cmp-kpi { flex: 1 1 120px; margin: 0 5px 6px; background: #fff; border: 1px solid #e3e6ea; border-left: 4px solid #3276b1; border-radius: 3px; padding: 7px 12px; cursor: pointer; }
.cmp-kpi .n { font-size: 20px; font-weight: bold; line-height: 1.1; }
.cmp-kpi .t { font-size: 10px; text-transform: uppercase; color: #777; }
.cmp-kpi.verde { border-left-color: #27ae60; }
.cmp-kpi.rojo { border-left-color: #e74c3c; }
.cmp-kpi.naranja { border-left-color: #f0ad4e; }
.cmp-kpi.gris { border-left-color: #7f8c8d; }
.cmp-filtros { margin-bottom: 8px; }
.cmp-filtros .btn { margin: 0 4px 4px 0; }
.cmp-tabla-todos { background: #fff; border: 1px solid #e3e6ea; }
.cmp-tabla-todos > thead > tr > th { background: #eef1f5; font-size: 11px; text-transform: uppercase; color: #555; }
.cmp-tabla-todos td { vertical-align: middle !important; }
.cmp-col-base, .cmp-col-suc { width: 30%; }
.cmp-celda { display: flex; align-items: center; }
.cmp-celda .cmp-precios { flex: 1; font-size: 12px; line-height: 1.35; }
.cmp-celda .btn { margin-left: 6px; }
.cmp-alerta { color: #c0392b; font-size: 16px; margin-left: 6px; cursor: pointer; }
.cmp-alerta.precio { color: #e67e22; }
.cmp-fila-distinta { background: #fffaf5; }
/* Modal receta comparada: alto limitado, scroll interno */
#modalRecetaComparada .modal-dialog { margin: 20px auto; }
#modalRecetaComparada .modal-content { display: flex; flex-direction: column; height: calc(100vh - 40px); }
#modalRecetaComparada .modal-header, #modalRecetaComparada .modal-footer { flex: 0 0 auto; }
#modalRecetaComparada .modal-body { flex: 1 1 auto; min-height: 0; overflow-y: auto; }
.cmp-modal-header { background: #2c3e50; color: #fff; border-radius: 5px 5px 0 0; padding: 12px 18px; }
.cmp-modal-header .close { color: #fff; opacity: .8; text-shadow: none; }
.cmp-modal-header .modal-title { font-weight: bold; }
.cmp-modal-sub { font-size: 11px; text-transform: uppercase; letter-spacing: .5px; opacity: .75; }
.cmp-modal-body { background: #f7f8fa; }
.badge-creado { background-color: #27ae60; color: #fff; padding: 2px 6px; border-radius: 3px; font-size: 10px; }
.badge-emparejado { background-color: #7f8c8d; color: #fff; padding: 2px 6px; border-radius: 3px; font-size: 10px; }
/* select2 dentro de input-group (selector de platillo + botón Comparar) */
.cmp-wrap .input-group .select2-container { display: table-cell; width: 100% !important; }
.cmp-wrap .input-group .select2-container .select2-selection { border-top-right-radius: 0; border-bottom-right-radius: 0; }
/* Permisos especiales (comparativo.php independiente) */
body.sin-bitacora .perm-bitacora { display: none !important; }
