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

    /* ============================================================
       LIBERACIÓN V2 — Ola 16-C
       KPIs + filtros chips + tabla densa + modal liberación
       ============================================================ */
    /* kpi-row, kpi-card, kpi-label/value/trend vienen del DS — no redefinir.
     * Solo dejamos lo que es genuinamente local de esta vista. */
    .filtros-chips { display: flex; gap: var(--h-space-2); flex-wrap: wrap; margin-bottom: var(--h-space-3); }
    /* .filtro-chip + .filtro-chip-cant viven en design-system/molecules/chip-group.css */

    /* Variante de toolbar con borde + fondo (semánticamente "panel de filtros") */
    .lib-toolbar {
      display: flex; gap: var(--h-space-2); align-items: center;
      padding: var(--h-space-3);
      background: var(--h-surface);
      border: 1px solid var(--h-hairline);
      border-radius: var(--h-radius-md);
      margin-bottom: var(--h-space-3);
    }
    .lib-toolbar .toolbar-spacer { flex: 1; }

    /* KPI con valor textual (no numérico) — más chico que el .kpi-value normal */
    .kpi-value.kpi-text { font-size: var(--h-text-lg); }

    .info-banner {
      padding: var(--h-space-2) var(--h-space-3);
      background: var(--h-info-soft);
      border-left: 3px solid var(--h-info);
      border-radius: var(--h-radius-sm);
      font-size: var(--h-text-sm);
      color: var(--h-ink);
      margin-bottom: var(--h-space-3);
    }
    .info-banner strong { color: var(--h-info); }

    .lib-table-wrap {
      background: var(--h-surface);
      border: 1px solid var(--h-hairline);
      border-radius: var(--h-radius-md);
      overflow: hidden;
    }
    .lib-table { width: 100%; border-collapse: collapse; font-size: var(--h-text-sm); }
    .lib-table thead { background: var(--h-nest); }
    .lib-table th {
      text-align: left; padding: var(--h-space-2) var(--h-space-3);
      font-size: var(--h-text-xs); color: var(--h-muted);
      text-transform: uppercase; letter-spacing: 0.05em; font-weight: 600;
      border-bottom: 1px solid var(--h-hairline);
    }
    .lib-table th.right { text-align: right; }
    .lib-table td {
      padding: var(--h-space-3);
      border-bottom: 1px solid var(--h-hairline);
      vertical-align: middle;
    }
    .lib-table td.right { text-align: right; }
    .lib-table tbody tr:hover { background: var(--h-nest); }

    .lib-avatar {
      width: 32px; height: 32px;
      border-radius: 50%;
      background: var(--h-brand-primary-soft); color: var(--h-brand-primary);
      display: inline-flex; align-items: center; justify-content: center;
      font-weight: 600; font-size: var(--h-text-xs);
      margin-right: var(--h-space-2); vertical-align: middle;
    }
    .modo-chip {
      display: inline-flex; align-items: center; gap: 4px;
      padding: 3px 8px;
      border-radius: var(--h-radius-pill);
      font-size: var(--h-text-xs); font-weight: 600;
    }
    .modo-chip svg { width: 12px; height: 12px; }
    .modo-chip.m-RETIRA  { background: var(--h-brand-primary-soft); color: var(--h-brand-primary); }
    .modo-chip.m-EMAIL   { background: var(--h-info-soft); color: var(--h-info); }
    .modo-chip.m-EXPRESS { background: var(--h-warn-soft); color: var(--h-warn); }

    .lib-empty {
      padding: var(--h-space-10) var(--h-space-5);
      text-align: center;
    }

    /* Modal liberación */
    .modal-lib-overlay {
      position: fixed; inset: 0;
      background: rgba(0,0,0,0.30);
      z-index: var(--h-z-modal);
      display: flex; align-items: center; justify-content: center;
      padding: var(--h-space-4);
    }
    .modal-lib {
      background: var(--h-surface);
      border-radius: var(--h-radius-md);
      max-width: 480px; width: 100%;
      box-shadow: var(--h-shadow-lg);
    }
    .modal-lib-header {
      padding: var(--h-space-4);
      border-bottom: 1px solid var(--h-hairline);
      display: flex; justify-content: space-between; align-items: center;
    }
    .modal-lib-title { font-size: var(--h-text-md); font-weight: 600; }
    .modal-lib-body { padding: var(--h-space-4); display: flex; flex-direction: column; gap: var(--h-space-3); }
    .modal-lib-footer {
      padding: var(--h-space-3) var(--h-space-4);
      border-top: 1px solid var(--h-hairline);
      display: flex; justify-content: flex-end; gap: var(--h-space-2);
    }
    .modo-radio-grid {
      display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--h-space-2);
    }
    .modo-radio {
      padding: var(--h-space-3);
      background: var(--h-nest);
      border: 2px solid transparent;
      border-radius: var(--h-radius-md);
      cursor: pointer;
      text-align: center;
      font-size: var(--h-text-sm);
      transition: all var(--h-transition-fast);
    }
    .modo-radio:hover { background: var(--h-brand-primary-soft); }
    .modo-radio.is-selected {
      background: var(--h-brand-primary);
      color: white;
      border-color: var(--h-brand-primary);
      font-weight: 600;
    }
    .modo-radio svg { width: 20px; height: 20px; display: block; margin: 0 auto 6px; }
