/* ERP/Presiones · medidas tomadas de los estilos de AFIS.
   El encabezado comparte los mismos tokens de Burever Design System. */
:root {
  --bv-primary: #2563eb;
  --bv-primary-hover: #1d4ed8;
  --bv-bg: #f6f7f9;
  --bv-line: #e2e6eb;
  --bv-ink: #182230;
  --bv-muted: #667085;
}
html { scrollbar-gutter:auto; }
body { background:var(--bv-bg); }
.bv-brand { cursor:default; pointer-events:none; }
.bv-topbar { box-shadow:none; }
.bv-topbar-inner { max-width:1300px; margin-inline:auto; }
.bv-drawer-open { overflow:hidden; }

/* Equivalente a AFIS: .container + .page-heading + .btn + .search */
.app-container {
  width:100%; max-width:1120px; margin:0 auto;
  padding:30px 22px 45px;
}
.page-heading.records-heading {
  display:flex; flex-direction:row; justify-content:space-between;
  align-items:center; gap:14px; margin:0 0 22px;
}
.records-heading h1 {
  margin:0; color:#182230; line-height:1.22;
  font-size:clamp(23px,3vw,27px); letter-spacing:-.035em; font-weight:700;
}
.records-new.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  width:auto; min-height:42px; padding:9px 14px;
  font-size:14px; font-weight:650; line-height:1.25; border-radius:9px;
  color:#fff; border:1px solid #2563eb; background:#2563eb; box-shadow:none;
}
.records-new.btn:hover { background:#1d4ed8; border-color:#1d4ed8; }
.records-new.btn .bi { font-size:16px; }
.search.records-search {
  display:flex; align-items:center; gap:11px; width:100%;
  min-height:45px; padding:0 14px; margin:0 0 15px;
  background:#fff; border:1px solid #d7dfe8; border-radius:9px;
  color:#8795a4; cursor:text;
}
.records-search:focus-within { border-color:#7c9de4; box-shadow:0 0 0 3px rgba(37,99,235,.12); }
.records-search .bi { font-size:18px; }
.records-search input {
  display:block; flex:1 1 auto; width:100%; min-width:0;
  height:43px; padding:0; border:0; outline:0;
  background:transparent; color:#1e293b; font-size:14px; box-shadow:none;
}
.records-search input::placeholder {color:#94a3b8;opacity:1;}
/* AFIS muestra la lista directamente bajo el buscador; conservar
   el contador accesible para lectores de pantalla sin ocupar otra fila. */
.records-label-row {
  position:absolute; width:1px; height:1px; overflow:hidden;
  clip-path:inset(50%); white-space:nowrap;
}
.records-list { display:grid; gap:10px; }
.presion-tarjeta {
  min-width:0; overflow:hidden; background:#fff;
  border:1px solid #e2e6eb; border-radius:10px; box-shadow:none;
}
.presion-tarjeta .presion-miniatura {
  width:100%; min-height:69px; padding:14px 17px;
  border:0; border-radius:0; background:#fff;
  text-align:left; color:#182230; cursor:pointer;
  transition:background-color .15s;
}
.presion-tarjeta .presion-miniatura:hover {background:#fafbfc;}
.presion-tarjeta .presion-miniatura:active {transform:none;}
.presion-tarjeta .miniatura-copy {display:flex;flex-direction:column;gap:5px;align-items:flex-start;}
.presion-tarjeta .miniatura-titulo {font-size:14px;font-weight:650;line-height:1.4;color:#182230;}
.presion-tarjeta .miniatura-meta {font-size:12px;font-weight:500;color:#667085;}
.presion-tarjeta .miniatura-fecha {font-size:11px;font-weight:500;color:#7b8795;}
.miniatura-pie {
  display:flex;align-items:center;justify-content:space-between;
  min-height:47px;padding:6px 10px 6px 17px;
  border-top:1px solid #edf0f3;
}
.miniatura-status {display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#08734c;font-weight:650;}
.presion-tarjeta .miniatura-ver.presion-miniatura {
  display:grid; place-items:center; width:40px; height:38px;
  min-height:38px; padding:0; border-radius:8px;
  font-size:19px; color:#64748b;
}
.presion-tarjeta .miniatura-ver .bi {line-height:1;}

/* Barra de acciones uniforme: ver detalle y eliminar la copia de la miniatura. */
.miniatura-acciones { display:flex; align-items:center; justify-content:flex-end; gap:5px; }
.presion-tarjeta .miniatura-eliminar {
  display:grid; place-items:center; width:40px; height:38px; padding:0;
  border:0; border-radius:8px; background:transparent; color:#dc3545;
  cursor:pointer; font-size:18px;
}
.presion-tarjeta .miniatura-eliminar:hover { background:#fff1f2; color:#b42318; }
.presion-tarjeta .miniatura-eliminar:focus-visible { outline:2px solid #b42318; outline-offset:2px; }

.records-source {font-size:11px;color:#8590a1;margin:14px 0 0;line-height:1.5;}
.records-empty {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  min-height:155px; padding:26px 18px; gap:8px;
  border:1px dashed #d7dce4; border-radius:10px; background:#fff;
}
.records-empty i {font-size:24px;color:#8592a1;}
.records-empty strong {font-size:13px;color:#182230;text-align:center;}
.records-empty span {font-size:12px;color:#667085;text-align:center;}
.records-empty[hidden] {display:none;}

/* Formulario y detalle, misma densidad que los modales AFIS/CHI. */
.editor-layer,.detalle-layer { z-index:2200; }
.editor-backdrop,.detalle-backdrop { background:rgba(19,32,52,.48); }
.editor-panel,.detalle-panel { border-radius:12px; box-shadow:0 20px 65px rgba(20,33,61,.22); }
.editor-panel { width:min(100%,950px); }
.editor-header { min-height:66px; padding:14px 22px; }
.editor-header h2 { font-size:18px; letter-spacing:-.02em; }
.editor-content { padding:17px 20px 25px; }
.editor-content .form-panel { border:0; border-radius:0; padding:0; }
.form-section { padding-bottom:22px; margin-bottom:24px; }
.section-heading h2 { font-size:14px; color:#253247; }
.section-number { width:28px; height:28px; }
.form-control, .selector-btn { min-height:44px; border-color:#d5dde8; border-radius:9px; background:#fff; }
.form-control[readonly] { background:#f1f4f8; }
.form-actions { padding-bottom:0; }
.form-actions .btn { min-height:45px; }
.detalle-content { padding:22px; }
.detalle-titulo strong { color:#172033; }

@media (max-width:920px) {
  .app-container {padding:24px 18px 38px;}
}
@media (max-width:760px) {
  .app-container {padding:26px 14px 32px;}
  .page-heading.records-heading {flex-direction:column;align-items:stretch;gap:17px;margin-bottom:22px;}
  .records-new.btn {width:100%;}
  .presion-tarjeta .presion-miniatura {padding:14px 17px;}
  .editor-layer,.detalle-layer {padding:0;}
  .editor-panel,.detalle-panel {width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;}
  .editor-header {min-height:64px;padding:12px 16px;}
  .editor-content {padding:17px 15px max(25px,env(safe-area-inset-bottom));}
  .editor-content .form-panel {padding:0;}
  .detalle-content {padding:20px 16px;}
}
@media (max-width:520px) {
  .app-container {padding:22px 12px 28px;}
  .bv-topbar-inner {padding-inline:14px;}
  .records-heading h1 {font-size:23px;}
  .presion-tarjeta .presion-miniatura {padding:14px 13px;}
  .miniatura-pie {padding-left:13px;}
}
@media (max-width:359px) { .app-container {padding-inline:9px;} }
@media (prefers-reduced-motion:reduce) { .bv-drawer { transition:none; } }

/* ERP/Presiones · confirmación obligatoria posterior a la previsualización */
.presion-revision[hidden] { display:none !important; }
.presion-revision { position:fixed; inset:0; z-index:12000; display:flex; align-items:center; justify-content:center; padding:16px; }
.presion-revision-backdrop { position:absolute; inset:0; background:rgba(15,23,42,.58); }
.presion-revision-panel { position:relative; width:min(100%,520px); max-height:calc(100dvh - 32px); overflow-y:auto; background:#fff; border-radius:13px; border:1px solid #e1e5eb; box-shadow:0 20px 65px rgba(15,23,42,.18); padding:20px; color:#142033; }
.presion-revision-header { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.presion-revision-header h2 { font-size:1.17rem; line-height:1.35; margin:0; font-weight:700; }
.presion-revision-subtitulo { color:#64748b; line-height:1.5; margin:12px 0 16px; font-size:.91rem; }
.presion-revision-datos { margin:0; border:1px solid #e2e7ee; border-radius:9px; overflow:hidden; }
.presion-revision-datos > div { padding:10px 12px; display:grid; grid-template-columns:minmax(120px,42%) minmax(0,1fr); gap:12px; }
.presion-revision-datos > div + div { border-top:1px solid #edf0f4; }
.presion-revision-datos dt { color:#64748b; font-weight:500; font-size:.84rem; }
.presion-revision-datos dd { font-size:.89rem; font-weight:600; overflow-wrap:anywhere; margin:0; }
.presion-revision-aviso { color:#875b00; background:#fffbeb; border:1px solid #fde68a; border-radius:8px; padding:10px 12px; font-size:.85rem; line-height:1.5; }
.presion-revision-acciones { display:flex; gap:10px; justify-content:flex-end; margin-top:18px; }
.presion-revision-acciones .btn { min-width:140px; }
.presion-revision-acciones .btn:disabled { opacity:.55; cursor:wait; }
@media (max-width:480px) {
  .presion-revision-panel { padding:16px; }
  .presion-revision-acciones { flex-direction:column-reverse; }
  .presion-revision-acciones .btn { width:100%; }
  .presion-revision-datos > div { grid-template-columns:minmax(96px,40%) minmax(0,1fr); gap:8px; }
}
.envio-texto { white-space:pre-line; overflow-wrap:anywhere; }

/* Los selectores originales deben quedar encima del formulario modal. */
.picker-overlay { z-index:4000; }
.picker-panel { z-index:4001; }
.envio-overlay { z-index:6000; }

/* ERP/Presiones: autocomplete local como AFI/AFID, sin botón de consulta. */
.erp-ep-buscador { position:relative; z-index:5; }
.erp-ep-input-frame { display:block; position:relative; }
.erp-ep-input-frame .form-control { padding-right:40px; }
.erp-ep-search-icon { position:absolute; right:14px; top:50%; transform:translateY(-50%);
  color:#8795a4; pointer-events:none; font-size:16px; }
.erp-ep-sugerencias {
  position:absolute; z-index:15; top:calc(100% - 1px); left:0; right:0;
  max-height:min(300px,42dvh); overflow-y:auto; overscroll-behavior:contain;
  border:1px solid #d7dfe8; border-radius:9px; background:#fff;
  box-shadow:0 9px 25px rgba(18,35,64,.15); padding:5px;
}
.erp-ep-sugerencias[hidden] {display:none!important;}
.erp-ep-opcion { display:flex; flex-direction:column; align-items:flex-start; gap:3px;
  width:100%; padding:10px 12px; border:0; border-radius:6px;
  background:#fff; color:#182230; text-align:left; cursor:pointer; }
.erp-ep-opcion + .erp-ep-opcion {border-top:1px solid #f0f2f5;}
.erp-ep-opcion:hover,.erp-ep-opcion:focus-visible {background:#eff5ff;outline:0;}
.erp-ep-opcion strong {font-size:13px; font-weight:650;}
.erp-ep-opcion small {font-size:12px; color:#64748b;}
.erp-ep-mas {font-size:11px;color:#667085;margin:6px 10px;}
.erp-ep-estado {margin:0; font-size:12px; color:#64748b; line-height:1.5;}
.erp-ep-estado[hidden] {display:none;}
.erp-ep-estado[data-tipo="error"] {color:#b42318;}
.erp-ep-seleccion {margin-top:2px;}
.erp-ep-seleccion input[readonly] {background:#f7f9fc; color:#24334b; cursor:default;}

/* Pie persistente dentro del modal, fuera de la zona desplazable. */
.editor-panel > .editor-footer-actions {
  flex:0 0 auto;
  margin:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:14px 20px max(14px,env(safe-area-inset-bottom));
  border-top:1px solid #e5eaf0;
  background:#fff;
  position:relative;
  z-index:1;
}
.editor-footer-actions > .btn {width:100%;min-width:0;min-height:44px;}
.detalle-volver.btn.btn-outline-secondary {color:#2563eb;border-color:#bfcef4;}
.detalle-volver.btn.btn-outline-secondary:hover {color:#1d4ed8;background:#eff6ff;border-color:#8eabea;}
.detalle-datos dd {overflow-wrap:anywhere;}
@media (max-width:760px) {
  .editor-panel > .editor-footer-actions {gap:9px;padding:12px 15px max(12px,env(safe-area-inset-bottom));}
}

/* Ajustes v22: navegación compacta y espacio en detalle. */
#bvDrawer > .bv-menu-items + .bv-menu-label { margin-top:20px; }
.presion-tarjeta .miniatura-linea {
  display:flex;
  flex-direction:row;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  width:100%;
  min-width:0;
}
.presion-tarjeta .miniatura-linea .miniatura-meta {min-width:0;overflow-wrap:anywhere;}
.presion-tarjeta .miniatura-linea .miniatura-fecha {
  white-space:nowrap;
  flex-shrink:0;
  margin-left:auto;
}
.detalle-volver.btn {margin-top:22px;}
