:root{
  --amarillo:#FFC400; --amarillo-osc:#E0A800; --negro:#141414; --gris:#6B6B6B;
  --gris-claro:#F4F2EC; --borde:#E4E0D4; --blanco:#fff; --verde:#1E9E6A;
}
*{margin:0;padding:0;box-sizing:border-box;font-family:'Archivo',system-ui,sans-serif;}
body{background:var(--gris-claro);color:var(--negro);min-height:100vh;}
.fondo{position:fixed;inset:0;z-index:-1;
  background:
    radial-gradient(900px 500px at 85% -10%, rgba(255,196,0,.28), transparent 60%),
    radial-gradient(700px 420px at -5% 110%, rgba(255,196,0,.14), transparent 55%),
    var(--gris-claro);}
.fondo::after{content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(20,20,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(20,20,20,.035) 1px,transparent 1px);
  background-size:34px 34px;}
.wrap{max-width:1120px;margin:0 auto;padding:28px 20px 60px;}
/* Topbar */
.topbar{display:flex;align-items:center;gap:14px;background:var(--blanco);border:1px solid var(--borde);
  border-radius:18px;padding:12px 18px;margin-bottom:22px;box-shadow:0 6px 24px rgba(20,20,20,.06);flex-wrap:wrap;}
.topbar img{width:52px;height:52px;border-radius:50%;border:2px solid var(--negro);}
.topbar .marca b{font-size:1.15rem;letter-spacing:-.02em;display:block;line-height:1.1;}
.topbar .marca span{font-size:.74rem;color:var(--gris);letter-spacing:.14em;text-transform:uppercase;font-weight:600;}
.topbar .espacio{flex:1;}
.topbar .chip{background:var(--gris-claro);border:1px solid var(--borde);border-radius:999px;padding:7px 14px;
  font-size:.8rem;font-weight:600;color:var(--gris);}
/* Botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;cursor:pointer;
  border-radius:14px;padding:13px 22px;font-weight:800;font-size:.95rem;transition:.15s;text-decoration:none;color:inherit;}
.btn.amarillo{background:var(--amarillo);color:var(--negro);box-shadow:0 4px 0 var(--amarillo-osc),0 8px 18px rgba(224,168,0,.28);}
.btn.amarillo:hover{transform:translateY(-1px);}
.btn.negro{background:var(--negro);color:#fff;}
.btn.negro:hover{opacity:.9;}
.btn.contorno{background:transparent;border:1.5px solid var(--borde);color:var(--gris);font-weight:700;}
.btn.contorno:hover{border-color:var(--negro);color:var(--negro);}
/* Login */
.login-card{max-width:420px;margin:8vh auto 0;background:var(--blanco);border:1px solid var(--borde);
  border-radius:26px;padding:38px 34px;box-shadow:0 24px 70px rgba(20,20,20,.14);text-align:center;}
.login-card .logo{width:96px;height:96px;border-radius:50%;border:3px solid var(--negro);margin:0 auto 16px;}
.login-card h1{font-size:1.55rem;letter-spacing:-.03em;}
.login-card .sub{color:var(--gris);font-size:.85rem;margin-top:4px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;}
.login-card .btn{width:100%;margin-top:20px;font-size:1.05rem;padding:15px;}
.login-foot{margin-top:16px;font-size:.72rem;color:var(--gris);}
/* Campos */
.campo{margin:16px 0 6px;text-align:left;}
.campo label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gris);margin-bottom:6px;}
.campo input{width:100%;border:1.5px solid var(--borde);border-radius:12px;padding:13px 14px;font-size:1rem;
  background:var(--gris-claro);outline:none;transition:.15s;}
.campo input:focus{border-color:var(--amarillo-osc);background:#fff;box-shadow:0 0 0 4px rgba(255,196,0,.18);}
.grid-campos{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px 14px;}
.grid-campos .ancho2{grid-column:span 2;}
@media(max-width:560px){.grid-campos .ancho2{grid-column:span 1;}}
.grid-campos .campo{margin:0;}
.fila-form{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px;}
.fila-form .campo{flex:1;min-width:170px;}
/* Panel */
.panel-tit h2{font-size:1.6rem;letter-spacing:-.03em;}
.panel-tit p{color:var(--gris);font-size:.92rem;margin-top:4px;}
.grid-accesos{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-top:22px;}
.acceso{background:var(--blanco);border:1px solid var(--borde);border-radius:20px;padding:22px;cursor:pointer;
  text-align:left;transition:.18s;position:relative;overflow:hidden;text-decoration:none;color:inherit;display:block;}
.acceso:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(20,20,20,.1);border-color:var(--amarillo);}
.acceso.deshab{opacity:.62;cursor:default;}
.acceso.deshab:hover{transform:none;box-shadow:none;border-color:var(--borde);}
.acceso .icono{width:48px;height:48px;border-radius:14px;background:var(--amarillo);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.acceso .icono svg{width:26px;height:26px;}
.acceso .icono .punto{width:12px;height:12px;border-radius:50%;background:var(--gris);}
.acceso b{font-size:1.05rem;display:block;}
.acceso span{font-size:.8rem;color:var(--gris);display:block;margin-top:4px;line-height:1.4;}
.acceso .flecha{position:absolute;right:18px;top:20px;color:var(--gris);font-weight:900;font-size:1.2rem;}
.acceso .tag{position:absolute;right:16px;bottom:16px;font-size:.66rem;font-weight:800;letter-spacing:.08em;
  text-transform:uppercase;background:var(--gris-claro);border:1px solid var(--borde);padding:4px 10px;border-radius:999px;}
.acceso .tag.nuevo{background:var(--amarillo);border-color:var(--amarillo-osc);}
/* Hojas/formularios */
.hoja{background:var(--blanco);border:1px solid var(--borde);border-radius:20px;padding:26px;box-shadow:0 8px 30px rgba(20,20,20,.06);}
.hoja h3{font-size:1.25rem;letter-spacing:-.02em;margin-bottom:2px;}
.hoja .desc{color:var(--gris);font-size:.85rem;margin-bottom:18px;}
.acciones-doc{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;}
/* Avisos */
.aviso{border-radius:14px;padding:12px 16px;font-size:.9rem;font-weight:600;margin-bottom:16px;}
.aviso.ok{background:rgba(30,158,106,.1);border:1px solid rgba(30,158,106,.35);color:#146a47;}
.aviso.error{background:rgba(204,51,51,.08);border:1px solid rgba(204,51,51,.3);color:#a22;}
/* Tabla */
table.tabla{width:100%;border-collapse:collapse;margin-top:10px;font-size:.9rem;}
table.tabla th{text-align:left;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris);
  padding:10px;border-bottom:2px solid var(--negro);}
table.tabla td{padding:10px;border-bottom:1px solid var(--borde);}
.pie{text-align:center;color:var(--gris);font-size:.75rem;margin-top:34px;}
/* Fase 2 */
.cabeza-lista{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:8px;}
.cabeza-lista .desc{margin-bottom:0;}
.badge{display:inline-block;padding:4px 11px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}
.badge.ok{background:rgba(30,158,106,.12);color:#146a47;border:1px solid rgba(30,158,106,.3);}
.badge.off{background:rgba(204,51,51,.08);color:#a22;border:1px solid rgba(204,51,51,.3);}
.btn.mini{padding:8px 14px;font-size:.8rem;border-radius:10px;}
/* Fase 3 — documentos y cotizador */
.bloque-total{min-width:150px;background:var(--gris-claro);border:1px solid var(--borde);border-radius:14px;padding:12px 16px;text-align:right;}
.bloque-total span{display:block;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris);font-weight:700;}
.bloque-total b{font-size:1.25rem;letter-spacing:-.02em;}
.bloque-total.total{background:var(--negro);color:#fff;border-color:var(--negro);}
.bloque-total.total span{color:rgba(255,255,255,.65);}
.quitar{width:34px;height:34px;border-radius:10px;border:1px solid var(--borde);background:#fff;color:var(--gris);
  cursor:pointer;font-size:1rem;font-weight:700;}
.quitar:hover{border-color:#c33;color:#c33;}
/* Encabezado de documento: izquierda logo+empresa · centro titulo · derecha TRANSFERENCIA */
.doc-enc{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:start;border-bottom:2px solid var(--negro);padding-bottom:16px;margin-bottom:4px;}
.doc-enc .doc-izq{display:flex;gap:16px;align-items:flex-start;min-width:0;}
.doc-enc .doc-izq img{width:84px;height:84px;border-radius:50%;border:2px solid var(--negro);flex:none;}
.doc-enc .empresa b{font-size:1.1rem;display:block;}
.doc-enc .empresa span{font-size:.8rem;color:var(--gris);display:block;line-height:1.5;}
.doc-enc .titulo-doc{text-align:center;align-self:center;padding:0 14px;}
.doc-enc .titulo-doc .num{font-size:1.5rem;font-weight:900;letter-spacing:-.03em;}
.doc-enc .titulo-doc .autor{font-size:.78rem;color:var(--gris);margin-top:2px;}
.bloque-trans{background:var(--gris-claro);border:1px solid var(--borde);border-radius:14px;padding:12px 16px;font-size:.82rem;min-width:230px;max-width:300px;justify-self:end;text-align:left;}
.bloque-trans b{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;display:block;margin-bottom:4px;}
.bloque-trans div{line-height:1.55;}
/* Fase 3.5 — resumen arriba-derecha y autocompletado de clientes */
.doc-cuerpo{display:flex;gap:26px;align-items:flex-start;justify-content:space-between;margin:14px 0;}
.doc-cliente{flex:1;min-width:0;}
.caja-info{display:flex;gap:14px;font-size:.9rem;padding:6px 0;border-bottom:1px dotted var(--borde);align-items:baseline;}
.caja-info .etq{color:var(--gris);font-weight:700;min-width:110px;flex:none;white-space:nowrap;}
.caja-info b{font-weight:700;}
.resumen-doc{width:320px;max-width:100%;background:var(--gris-claro);border:1px solid var(--borde);border-radius:14px;padding:14px 18px;box-shadow:0 4px 14px rgba(20,20,20,.05);margin:0;}
.resumen-doc .fila{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px dashed var(--borde);font-size:.95rem;}
.resumen-doc .fila span{color:var(--gris);}
.resumen-doc .fila.total{background:var(--negro);color:#fff;font-weight:900;border:none;border-radius:8px;padding:11px 14px;margin-top:7px;font-size:1.05rem;}
.resumen-doc .fila.total span{color:rgba(255,255,255,.7);}
.busqueda-cliente{position:relative;}
.busqueda-cliente input{width:100%;border:1.5px solid var(--borde);border-radius:12px;padding:13px 14px;font-size:.95rem;background:var(--gris-claro);outline:none;}
.busqueda-cliente input:focus{border-color:var(--amarillo-osc);background:#fff;box-shadow:0 0 0 4px rgba(255,196,0,.18);}
.busqueda-cliente .btn{position:absolute;right:8px;top:7px;padding:8px 12px;}
.sugerencias{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid var(--borde);border-radius:12px;box-shadow:0 12px 30px rgba(20,20,20,.14);z-index:50;display:none;max-height:260px;overflow:auto;}
.sugerencias.visible{display:block;}
.sug{display:flex;justify-content:space-between;gap:10px;padding:10px 14px;cursor:pointer;font-size:.88rem;border-bottom:1px solid var(--gris-claro);}
.sug:hover{background:var(--gris-claro);}
.sug span{color:var(--gris);font-size:.78rem;}
.sug.vacia{color:var(--gris);font-style:italic;cursor:default;}
.sug.vacia:hover{background:#fff;}
/* Modal de búsqueda de clientes (Fase 3.8) */
.modal-backdrop{position:fixed;inset:0;background:rgba(20,20,20,.55);z-index:200;display:none;align-items:center;justify-content:center;padding:20px;}
.modal-backdrop.visible{display:flex;}
.modal{width:100%;max-width:520px;max-height:80vh;background:#fff;border-radius:20px;box-shadow:0 24px 70px rgba(20,20,20,.35);display:flex;flex-direction:column;overflow:hidden;}
.modal-cabeza{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--borde);}
.modal-cabeza b{font-size:1.05rem;}
.modal>input{border:none;border-bottom:1px solid var(--borde);padding:14px 20px;font-size:.95rem;outline:none;font-family:inherit;}
.modal>input:focus{border-bottom-color:var(--amarillo-osc);}
.modal-lista{overflow:auto;flex:1;}
.modal-lista .sug{padding:13px 20px;border-bottom:1px solid var(--gris-claro);display:flex;flex-direction:column;gap:2px;}
.modal-lista .sug b{font-size:.92rem;}
.modal-lista .sug span{color:var(--gris);font-size:.8rem;}
/* Fase 3.9 — comentarios grandes y gracias */
.tabla-lado{flex:1;min-width:0;}
.campo textarea{width:100%;border:1.5px solid var(--borde);border-radius:12px;padding:12px 14px;font-size:.95rem;
  background:var(--gris-claro);outline:none;font-family:inherit;resize:vertical;line-height:1.5;}
.campo textarea:focus{border-color:var(--amarillo-osc);background:#fff;box-shadow:0 0 0 4px rgba(255,196,0,.18);}
.comentarios-doc{margin-top:18px;border:1px solid var(--borde);border-radius:14px;padding:14px 18px;background:var(--blanco);}
.comentarios-doc b{font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;color:var(--gris);display:block;margin-bottom:8px;}
.comentarios-doc p{font-size:.9rem;white-space:pre-wrap;line-height:1.6;}
.gracias{text-align:center;font-weight:900;font-size:1.05rem;letter-spacing:.06em;margin-top:26px;}
/* Fase 3.10 — tabla unificada estilo Excel (productos + totales en una sola unidad) */
.tabla-excel{width:100%;border-collapse:collapse;border:1px solid var(--borde);border-radius:12px;overflow:hidden;background:#fff;}
.tabla-excel th{background:var(--gris-claro);font-weight:800;text-align:center;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris);padding:10px 8px;border:1px solid var(--borde);}
.tabla-excel td{padding:8px;border:1px solid var(--borde);font-size:.9rem;vertical-align:middle;}
.tabla-excel td.und{text-align:center;}
.tabla-excel td.cant{width:100px;text-align:center;vertical-align:middle;}
.tabla-excel td.cant input{width:100%;}
.tabla-excel td.pu{text-align:center;}
.tabla-excel td.tot-col{background:var(--gris-claro);text-align:right;font-weight:700;}
.tabla-excel tfoot td{background:#fff;border-top:2px solid var(--negro);}
.tot-excel{display:flex;flex-direction:column;}
.tot-excel .fila{display:flex;justify-content:space-between;gap:24px;align-items:baseline;padding:6px 2px;font-size:.92rem;font-weight:600;border-bottom:1px dotted var(--borde);}
.tot-excel .fila span{text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;color:var(--gris);}
.tot-excel .fila b{font-variant-numeric:tabular-nums;}
.tot-excel .fila.desc{color:#b00020;}
.tot-excel .fila.desc span{color:#b00020;}
.tot-excel .fila.total{margin-top:8px;background:var(--negro);color:#fff;border:none;border-radius:10px;padding:10px 14px;font-weight:900;font-size:1.02rem;box-shadow:0 4px 12px rgba(20,20,20,.18);}
.tot-excel .fila.total span{color:rgba(255,255,255,.72);}
.tot-excel .fila.peso{border-bottom:none;color:var(--gris);font-size:.85rem;}
.tot-excel .fila.peso span{color:var(--gris);}
/* Fase 3.12 — campo descuento en la celda izquierda del pie de tabla */
.desc-edit-cell{background:#fff;}
.desc-edit{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:4px 2px;}
.desc-edit label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--gris);font-weight:700;white-space:nowrap;}
.desc-edit input{width:130px;border:1.5px solid var(--borde);border-radius:10px;padding:8px 10px;font-size:.95rem;font-weight:700;text-align:right;outline:none;background:var(--gris-claro);}
.desc-edit input:focus{border-color:var(--amarillo-osc);background:#fff;}
/* Autocomplete (combobox) reutilizable — dropdown flotante anclado al input */
.autobox{position:absolute;z-index:300;background:#fff;border:1px solid var(--borde);border-radius:12px;
  box-shadow:0 14px 34px rgba(20,20,20,.16);overflow:auto;max-height:280px;display:none;padding:6px;}
.autobox-item{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:10px 12px;
  border-radius:8px;cursor:pointer;font-size:.9rem;}
.autobox-item b{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.autobox-item span{color:var(--gris);font-size:.8rem;flex:none;}
.autobox-item:hover{background:var(--gris-claro);}
.autobox-item.resaltado{background:var(--gris-claro);}
.autobox-item.vacio{justify-content:center;color:var(--gris);cursor:default;font-size:.85rem;}
/* type-ahead de productos (dentro de las celdas) */
.bq-prod{position:relative;}
.bq-prod .prod-search{width:100%;border:1.5px solid var(--borde);border-radius:10px;padding:9px 10px;font-size:.88rem;background:var(--gris-claro);outline:none;font-family:inherit;}
.bq-prod .prod-search:focus{border-color:var(--amarillo-osc);background:#fff;box-shadow:0 0 0 3px rgba(255,196,0,.15);}
.cant-linea{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:.78rem;color:var(--gris);}
.cant-linea input{width:80px;border:1.5px solid var(--borde);border-radius:8px;padding:6px 8px;font-size:.85rem;background:var(--gris-claro);outline:none;}
.cant-linea input:focus{border-color:var(--amarillo-osc);}
.sug.resaltada{background:var(--gris-claro);}
table.tabla select{width:100%;border:1.5px solid var(--borde);border-radius:10px;padding:9px 10px;font-size:.88rem;background:var(--gris-claro);outline:none;font-family:inherit;}
table.tabla select:focus{border-color:var(--amarillo-osc);background:#fff;}
table.tabla td input[type=number]{border:1.5px solid var(--borde);border-radius:10px;padding:9px 10px;font-size:.88rem;width:100%;background:var(--gris-claro);outline:none;font-family:inherit;}
table.tabla td input[type=number]:focus{border-color:var(--amarillo-osc);background:#fff;}
/* Fase 3.14 — nota informativa bajo las acciones del documento */
.nota-info{font-size:.78rem;color:var(--gris);margin-top:12px;text-align:center;}
/* Fase 4 — Orden de Compra */
.badge.anul{background:rgba(153,153,153,.12);color:#666;border:1px solid rgba(153,153,153,.35);}
.firmas{display:flex;gap:60px;margin-top:34px;justify-content:center;}
.firmas>div{flex:1;max-width:260px;text-align:center;}
.linea-firma{border-top:1.5px solid var(--negro);margin-bottom:8px;padding-top:2px;}
.panel-confirmar{display:inline-block;position:relative;}
.panel-confirmar summary{list-style:none;cursor:pointer;display:inline-block;}
.panel-confirmar summary::-webkit-details-marker{display:none;}
.caja-confirmar{position:absolute;right:0;top:calc(100% + 8px);z-index:60;background:#fff;border:1px solid var(--borde);
  border-radius:16px;box-shadow:0 18px 44px rgba(20,20,20,.18);padding:18px;width:340px;max-width:86vw;text-align:left;}
.caja-confirmar .campo{margin-bottom:10px;}
.caja-confirmar .campo input{border:1.5px solid var(--borde);border-radius:10px;padding:9px 10px;font-size:.88rem;width:100%;background:var(--gris-claro);outline:none;font-family:inherit;}
.caja-confirmar .campo input:focus{border-color:var(--amarillo-osc);background:#fff;}
.caja-confirmar .btn{width:100%;justify-content:center;margin-top:6px;}
/* Fase 5 — Panel de estados 3D de la NV */
.panel-3d{margin-top:22px;border:1.5px solid var(--borde);border-radius:18px;padding:16px 18px;background:#fff;}
.panel-3d-titulo{font-weight:800;font-size:.95rem;margin-bottom:12px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.panel-3d-titulo span{font-weight:400;font-size:.75rem;color:var(--gris);}
.panel-3d-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;}
.bloque-estado{border:1px solid var(--borde);border-radius:14px;padding:12px 14px;background:var(--gris-claro);}
.bloque-cabeza{margin-bottom:8px;}
.bloque-cabeza .etq{font-size:.8rem;letter-spacing:.5px;color:var(--gris);}
.badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;}
.badges .badge{font-size:.68rem;padding:4px 9px;border-radius:999px;font-weight:700;}
.badges .badge.off{background:rgba(153,153,153,.14);color:#9a9a9a;border:1px solid rgba(153,153,153,.3);}
.bloque-acciones{display:flex;flex-wrap:wrap;gap:8px;}
.mini-totales{display:flex;flex-wrap:wrap;gap:12px;font-size:.78rem;margin-bottom:10px;}
.mini-totales span{background:#fff;border:1px solid var(--borde);border-radius:999px;padding:4px 10px;}
.inline-detalles{display:inline-block;position:relative;}
.inline-detalles summary{list-style:none;cursor:pointer;}
.inline-detalles summary::-webkit-details-marker{display:none;}
.caja-detalle{position:absolute;right:0;top:calc(100% + 8px);z-index:70;background:#fff;border:1px solid var(--borde);
  border-radius:16px;box-shadow:0 18px 44px rgba(20,20,20,.18);padding:16px;width:340px;max-width:86vw;text-align:left;}
.caja-detalle .campo{margin-bottom:10px;}
.caja-detalle .campo label{font-size:.75rem;color:var(--gris);}
.caja-detalle .campo input,.caja-detalle .campo select{border:1.5px solid var(--borde);border-radius:10px;padding:9px 10px;font-size:.88rem;width:100%;background:var(--gris-claro);outline:none;font-family:inherit;}
.caja-detalle .campo input:focus,.caja-detalle .campo select:focus{border-color:var(--amarillo-osc);background:#fff;}
.caja-detalle .btn{width:100%;justify-content:center;margin-top:6px;}
.aviso-mini{font-size:.72rem;margin-top:8px;padding:8px 10px;border-radius:10px;}
.panel-3d-dte{margin-top:14px;padding-top:12px;border-top:1px dashed var(--borde);display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:.82rem;}
.panel-3d-dte .chip{font-size:.72rem;padding:4px 10px;border-radius:999px;background:#fff;border:1px solid var(--borde);}
.panel-3d-dte .chip.off{background:rgba(153,153,153,.14);color:#9a9a9a;}
.historial-3d{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.hist-col{border-top:1px dashed var(--borde);padding-top:10px;min-width:0;}
.hist-item{border:1px solid var(--borde);border-radius:12px;padding:10px 12px;margin-top:8px;font-size:.8rem;display:flex;flex-direction:column;gap:6px;}
.hist-item .chip{font-size:.68rem;padding:3px 8px;border-radius:999px;background:#fff;border:1px solid var(--borde);margin-left:8px;}
.hist-item .chip.ok{background:rgba(32,160,91,.14);border-color:rgba(32,160,91,.35);color:#127a43;}
.hist-item .chip.off{background:rgba(153,153,153,.14);color:#9a9a9a;}
.guia-lineas{margin-top:4px;display:flex;flex-direction:column;gap:4px;}
.guia-linea{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:.76rem;flex-wrap:wrap;}
.guia-linea .fecha,.hist-item .fecha{color:var(--gris);font-size:.72rem;}
@media(max-width:720px){.historial-3d{grid-template-columns:1fr;}}
/* Fase 6 — Inventario */
.alerta-stock{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap;
  background:#FFF8E6;border:1.5px solid #E6B800;border-radius:16px;padding:12px 18px;margin-bottom:18px;
  color:var(--negro);text-decoration:none;}
.alerta-stock b{font-size:.92rem;}
.alerta-stock span{font-size:.78rem;color:#8a6d00;}
.badge.warn{background:rgba(230,184,0,.16);color:#8a6d00;border:1px solid rgba(230,184,0,.45);}

