/* validacion.css - estilos dedicados de validacion.html (Tier D, 2026-05-27) */

    /* Layout split: grilla a la izquierda, side panel fijo a la derecha. */
    .validacion-split {
      display: grid; grid-template-columns: 1fr 360px;
      gap: var(--h-space-4); align-items: start;
    }
    @media (max-width: 1100px) {
      .validacion-split { grid-template-columns: 1fr; }
    }
    .validacion-fila { cursor: pointer; }
    .validacion-fila.selected td { background: var(--h-brand-primary-soft); }
    .panel-side {
      position: sticky; top: var(--h-space-4);
      display: flex; flex-direction: column; gap: var(--h-space-3);
      max-height: calc(100vh - 120px); overflow-y: auto;
    }
    .panel-side .card { padding: var(--h-space-3); }
    .panel-side .card-title { font-size: var(--h-text-sm); margin: 0 0 var(--h-space-2); }
    .ant-row {
      display: grid; grid-template-columns: 110px 1fr; gap: var(--h-space-2);
      font-size: var(--h-text-xs); padding: 4px 0; border-bottom: 1px dashed var(--h-hairline);
    }
    .ant-row:last-child { border-bottom: none; }
    .ant-row dt { color: var(--h-muted); text-transform: uppercase; letter-spacing: 0.4px; }
    .ant-row dd { color: var(--h-ink); margin: 0; word-break: break-word; }
    .historico-row {
      display: flex; justify-content: space-between; align-items: center;
      padding: 4px 0; border-bottom: 1px dashed var(--h-hairline);
      font-size: var(--h-text-xs);
    }
    .historico-row:last-child { border-bottom: none; }
    .historico-fecha { color: var(--h-muted); font-family: var(--h-font-mono); }
    .delta-pos { color: var(--h-danger); font-weight: 500; }
    .delta-neg { color: var(--h-brand-primary); font-weight: 500; }
    .delta-eq  { color: var(--h-muted); }

    /* Filtros */
    .filtros-bar {
      display: flex; gap: var(--h-space-2); align-items: center;
      padding: var(--h-space-2) var(--h-space-3); border-bottom: 1px solid var(--h-hairline);
      background: var(--h-surface-1, transparent);
    }
    .filtros-bar select, .filtros-bar input {
      font-size: var(--h-text-sm); padding: 6px 10px;
      border: 1px solid var(--h-hairline); border-radius: var(--h-radius-sm, 6px);
      background: var(--h-surface, #fff); color: var(--h-ink);
    }
    .filtros-bar input { flex: 1; min-width: 180px; }
    .filtros-hint {
      font-size: var(--h-text-xs); color: var(--h-muted); margin-left: auto;
    }

    /* Edición inline del valor */
    .valor-edit {
      display: flex; gap: var(--h-space-2); align-items: center; margin-top: var(--h-space-2);
    }
    .valor-edit input {
      flex: 1; font-size: var(--h-text-sm); padding: 6px 10px;
      border: 1px solid var(--h-hairline); border-radius: var(--h-radius-sm, 6px);
      font-family: var(--h-font-mono);
    }
    .valor-edit-row {
      display: flex; justify-content: space-between; align-items: baseline;
      font-size: var(--h-text-sm);
    }
    .valor-edit-row .unidad { color: var(--h-muted); font-size: var(--h-text-xs); }

    /* Modal rechazo */
    .modal-overlay {
      position: fixed; inset: 0; background: rgba(0,0,0,0.5);
      display: flex; align-items: center; justify-content: center;
      z-index: 1000;
    }
    .modal-card {
      background: var(--h-surface, #fff); border-radius: var(--h-radius, 8px);
      padding: var(--h-space-4); min-width: 360px; max-width: 480px;
      box-shadow: 0 10px 40px rgba(0,0,0,0.2);
    }
    .modal-card h3 { margin: 0 0 var(--h-space-3); font-size: var(--h-text-md); }
    .modal-card .modal-actions {
      display: flex; gap: var(--h-space-2); justify-content: flex-end; margin-top: var(--h-space-3);
    }
    .modal-card input.modal-input {
      width: 100%; font-size: var(--h-text-sm); padding: 8px 12px;
      border: 1px solid var(--h-hairline); border-radius: var(--h-radius-sm, 6px);
    }

    /* Hint de atajos */
    .atajos-hint {
      font-size: var(--h-text-xs); color: var(--h-muted);
      padding: 6px var(--h-space-3); border-top: 1px dashed var(--h-hairline);
    }
    .atajos-hint kbd {
      display: inline-block; padding: 2px 6px; font-family: var(--h-font-mono);
      background: var(--h-surface-2, #f0f0f0); border: 1px solid var(--h-hairline);
      border-radius: 3px; font-size: 11px; margin: 0 2px;
    }
