/* Entregado al cliente — estilos propios (prefijo ec-). Base: mockup aprobado por John el 31/10/2026. */
.ec-form { display:grid; grid-template-columns: 180px 1fr; gap:14px 18px; align-items:start; }
.ec-form label { font-weight:600; font-size:13px; color:var(--text-primary); padding-top:8px; }
.ec-form textarea, .ec-form input, .ec-form select {
  width:100%; border:1px solid var(--border); border-radius:8px; padding:9px 11px; font:inherit; font-size:14px; background:#fff; }
.ec-form textarea { min-height:150px; font-family: ui-monospace, Menlo, monospace; font-size:13px; }
.ec-ayuda { font-size:12px; color:var(--text-secondary); margin-top:4px; }
.ec-agencias { display:flex; gap:8px; }
.ec-agencias button { padding:8px 18px; border:1px solid var(--border); background:#fff; border-radius:8px; font-weight:600; cursor:pointer; }
.ec-agencias button.on { background:#1a2742; color:#fff; border-color:#1a2742; }
.ec-acciones { display:flex; gap:10px; justify-content:flex-end; margin-top:18px; }
.ec-paso { font-size:12px; font-weight:700; color:var(--admin-dark); text-transform:uppercase; letter-spacing:.04em; margin:26px 0 8px; }
.ec-pill { display:inline-block; padding:2px 9px; border-radius:999px; font-size:12px; font-weight:600; }
.ec-pill.apto { background:#d1fae5; color:#065f46; }
.ec-pill.rech { background:#fee2e2; color:#991b1b; }
.ec-pill.proc { background:#fef3c7; color:#92400e; }
.ec-pill.ok   { background:#d1fae5; color:#065f46; }
.ec-aviso { border:1px solid #fde68a; background:#fffbeb; color:#92400e; border-radius:10px; padding:12px 14px; font-size:13px; margin-top:14px; }
.ec-ok-box { border:1px solid #a7f3d0; background:#ecfdf5; color:#065f46; border-radius:10px; padding:14px 16px; }
.ec-cet { font-family: ui-monospace, Menlo, monospace; font-weight:700; }
.ec-num { text-align:right; font-variant-numeric: tabular-nums; }
.tabla tr.rechazado td { color:#94a3b8; }
@media (max-width: 760px) { .ec-form { grid-template-columns: 1fr; } .ec-form label { padding-top:0; } }

/* 03/11 — motivo, restringidos, valor no cobrado y avance */
.ec-form #ecMotivoNota { margin-top:8px; }
.ec-check { display:inline-flex; align-items:center; gap:8px; font-weight:600; font-size:13px; cursor:pointer; padding-top:8px; }
.ec-form .ec-check input, .ec-aviso .ec-check input { width:auto; margin:0; accent-color:#1a2742; }
.ec-aviso .ec-check { display:flex; margin-top:8px; padding-top:0; color:#92400e; }
.ec-aviso-rest { margin-top:8px; }
.ec-pill.rest { background:#fef3c7; color:#92400e; margin-left:4px; }
.ec-num { white-space:nowrap; }
.tabla tr.ec-total td { border-top:2px solid var(--border); font-weight:700; }
.tabla-card > .ec-aviso:first-child { margin-top:0; }
@media (max-width: 760px) {
  .ec-sec { display:none; }
  #seccion-entregado-cliente .tabla th, #seccion-entregado-cliente .tabla td { padding-left:6px; padding-right:6px; }
  #seccion-entregado-cliente .tabla th { font-size:10px; letter-spacing:.02em; }
  #seccion-entregado-cliente .tabla td { font-size:12.5px; }
  .ec-pill { border-radius:6px; white-space:normal; font-size:11px; padding:2px 6px; }
  .ec-pill.rest { margin-left:0; margin-top:3px; }
}
.ec-barra { height:6px; background:#e2e8f0; border-radius:999px; overflow:hidden; margin:10px auto 0; max-width:320px; }
.ec-barra span { display:block; height:100%; background:#1a2742; transition:width .4s; }
@media (prefers-reduced-motion: reduce) { .ec-barra span { transition:none; } }

/* (04/11) «Confirmado»: ya no parece activo. */
.ec-btn-hecho, .ec-btn-hecho:disabled { background:#e5e7eb !important; color:#6b7280 !important; border-color:#e5e7eb !important; cursor:default; box-shadow:none; }
/* Ventanas de resumen y de edición */
.ec-modal { max-width:560px; }
.ec-fin-cet { font-size:18px; margin-bottom:12px; }
.ec-fin-tabla td:first-child { color:#475569; }
.ec-fin-tabla td { padding:8px 10px; }
.ec-form-ed { display:grid; gap:8px; }
.ec-form-ed label { font-weight:600; font-size:13px; }
.ec-form-ed input, .ec-form-ed select { width:100%; padding:9px 10px; border:1px solid var(--border); border-radius:8px; font:inherit; }
.ec-botones { white-space:nowrap; }
@media (max-width:760px) { .ec-modal { padding:18px; } .ec-modal .modal-actions { flex-wrap:wrap; } .ec-modal .modal-actions button { flex:1; } }
@media (max-width:760px) { .ec-botones .btn-mini { padding:4px 8px; } #ecTabHist .tabla td, #ecRes .tabla td { padding:8px 6px; } }
@media (max-width:760px) {
  .ec-botones { white-space:normal; }
  .ec-botones .btn-mini { display:block; width:100%; margin:2px 0; }
  #ecTabHist .tabla, #ecRes .tabla { font-size:13px; }
  #ecTabHist .tabla th, #ecRes .tabla th { padding:8px 5px; }
  #ecTabHist .ec-cet, #ecRes .ec-cet { font-size:12px; }
}
.ec-pill.neutro { background:#f1f5f9; color:#475569; border:1px solid #e2e8f0; }
@media (min-width:761px) { #ecTabHist td.ec-cet, #ecRes td.ec-cet { white-space:nowrap; } }

/* (04/11) docs/ui-reglas.md §3–4 en TODAS las tablas de la pantalla (revisión, valor no cobrado,
   resultado, historial y ventana de resumen). `.tabla tbody td` de styles.css pesaba más que .ec-num
   y dejaba las cifras a la izquierda con el título centrado: aquí gana el id de la sección. */
#seccion-entregado-cliente .tabla th.ec-num,
#seccion-entregado-cliente .tabla td.ec-num { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
/* Separación: la cifra nunca queda pegada a la columna de texto que le sigue. */
#seccion-entregado-cliente .tabla th.ec-num + th,
#seccion-entregado-cliente .tabla td.ec-num + td { padding-left:22px; }
#seccion-entregado-cliente .tabla th:has(+ th.ec-num),
#seccion-entregado-cliente .tabla td:has(+ td.ec-num) { padding-right:16px; }
/* Estatus como etiqueta de ancho uniforme (OK / Fallido / Sin confirmar). */
#seccion-entregado-cliente .ec-pill.ok, #seccion-entregado-cliente #ecRes .ec-pill.rech,
#seccion-entregado-cliente #ecHistDetalle .ec-pill { min-width:84px; text-align:center; }
#seccion-entregado-cliente .tabla td.ec-cet, #seccion-entregado-cliente .tabla td { font-variant-numeric:tabular-nums; }
@media (max-width:760px) {
  #seccion-entregado-cliente .tabla th.ec-num + th,
  #seccion-entregado-cliente .tabla td.ec-num + td { padding-left:14px; }
  #seccion-entregado-cliente .ec-pill.ok, #seccion-entregado-cliente #ecRes .ec-pill.rech { min-width:64px; }
}
/* Atascado: el monto del Historial es costo FT02, y lo dice (D26). */
.ec-etq-costo { display:block; font-size:11px; color:var(--text-muted,#667085); white-space:nowrap; }

/* T31 (John 07/11): buscar por casillero. Una sola rejilla; Paquete se lleva el ancho que sobra para que no quede
   hueco junto a Estatus. Números a la derecha y tabulares. */
#seccion-entregado-cliente .ec-bc-fila { display:flex; gap:10px; }
#seccion-entregado-cliente .ec-bc-fila input { flex:1 1 auto; min-width:0; }
#seccion-entregado-cliente .ec-bc-fila .btn-primary { flex:none; white-space:nowrap; }
#seccion-entregado-cliente .ec-bc-cab { display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; margin:14px 0 8px; font-weight:600; font-size:13.5px; }
#seccion-entregado-cliente .ec-bc-cab label { font-weight:500; color:var(--text-secondary,#475467); display:flex; gap:8px; align-items:center; cursor:pointer; padding:0; }
#seccion-entregado-cliente .ec-bc-tabla { border:1px solid var(--border,#E7E9EE); border-radius:10px; overflow:hidden; }
#seccion-entregado-cliente .ec-bc-tabla table { width:100%; border-collapse:collapse; table-layout:fixed; font-variant-numeric:tabular-nums; }
#seccion-entregado-cliente .ec-bc-tabla th { text-align:left; font-weight:500; color:var(--text-muted,#667085); font-size:12px; padding:8px 10px; border-bottom:1px solid var(--border,#E7E9EE); }
#seccion-entregado-cliente .ec-bc-tabla td { padding:9px 10px; border-bottom:1px solid var(--border,#E7E9EE); font-size:13.5px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#seccion-entregado-cliente .ec-bc-tabla tr:last-child td { border-bottom:0; }
#seccion-entregado-cliente .ec-bc-tabla tr.ya td { color:var(--text-muted,#667085); background:#F8F9FB; }
#seccion-entregado-cliente .ec-bc-tabla .num { text-align:right; }
#seccion-entregado-cliente .ec-bc-tabla col.c-ch { width:44px; } #seccion-entregado-cliente .ec-bc-tabla col.c-fe { width:110px; }
#seccion-entregado-cliente .ec-bc-tabla col.c-lb { width:90px; } #seccion-entregado-cliente .ec-bc-tabla col.c-est { width:150px; }
#seccion-entregado-cliente .ec-bc-tabla input[type=checkbox], #seccion-entregado-cliente .ec-bc-cab input[type=checkbox] { width:18px; height:18px; accent-color:var(--primary,#3B5BFD); margin:0; }
#seccion-entregado-cliente .ec-bc-etq { display:block; text-align:center; white-space:nowrap; max-width:100%; overflow:hidden; text-overflow:ellipsis; padding:2px 10px; border-radius:999px; font-size:12px; font-weight:600; background:#EEF0F3; color:#475467; }
#seccion-entregado-cliente .ec-bc-ya { display:block; font-size:11.5px; color:var(--text-muted,#667085); }
#seccion-entregado-cliente .ec-bc-pie { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:12px; flex-wrap:wrap; }
#seccion-entregado-cliente .ec-bc-nota { font-size:12.5px; color:var(--text-muted,#667085); }
#seccion-entregado-cliente .ec-bc-neutro { border:1px solid var(--border,#E7E9EE); border-radius:10px; padding:12px 14px; margin-top:12px; color:var(--text-secondary,#475467); font-size:13px; }
#seccion-entregado-cliente .ec-bc-neutro.fallo { border-color:#FCA5A5; background:#FEF2F2; color:#991B1B; }
@media (max-width:640px) {
  #seccion-entregado-cliente .ec-bc-tabla col.c-fe, #seccion-entregado-cliente .ec-bc-tabla .sec { display:none; }
  #seccion-entregado-cliente .ec-bc-tabla col.c-lb { width:64px; } #seccion-entregado-cliente .ec-bc-tabla col.c-est { width:112px; }
  #seccion-entregado-cliente .ec-bc-tabla td, #seccion-entregado-cliente .ec-bc-tabla th { padding:8px 6px; font-size:13px; }
  #seccion-entregado-cliente .ec-bc-etq { font-size:11px; padding:2px 6px; }
  #seccion-entregado-cliente .ec-bc-tabla col.c-ch { width:34px; } #seccion-entregado-cliente .ec-bc-tabla col.c-lb { width:56px; }
  #seccion-entregado-cliente .ec-bc-tabla col.c-est { width:114px; }
  /* El código es lo importante: nunca se corta, baja de línea si no cabe. */
  #seccion-entregado-cliente .ec-bc-tabla td.c-paq { white-space:normal; overflow-wrap:anywhere; font-size:12.5px; }
  #seccion-entregado-cliente .ec-bc-pie .btn-primary { width:100%; }
}
