*{box-sizing:border-box;margin:0;padding:0}
:root{--card:#111a2e;--lin:#1f2b44;--lin2:#2b3a58;--mu:#94a3b8;--az:#3d7dff;--am:#f59e0b;--ve:#22c55e;--ro:#ef4444}
html,body{height:100%}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:#0b1120;color:#e2e8f0;font-size:14px;min-width:1100px}
b,strong{color:#fff}
button{font-family:inherit;cursor:pointer}
a{color:#93c5fd}
.app{display:grid;grid-template-columns:232px 1fr;height:100vh}
.side{background:#0a1020;border-right:1px solid var(--lin);padding:18px 14px;display:flex;flex-direction:column;gap:4px}
.logo{display:flex;align-items:center;gap:10px;padding:4px 8px 18px}
.logo i{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#3d7dff,#7c3aed);display:grid;place-items:center;font-style:normal;font-weight:900;color:#fff}
.logo small{display:block;color:var(--mu);font-size:11px}
.nav{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;color:#cbd5e1;font-weight:600;text-decoration:none;border:0;background:none;text-align:left;width:100%;font-size:14px}
.nav:hover{background:#111a2e}.nav.on{background:#13254a;color:#fff;box-shadow:inset 3px 0 0 var(--az)}
.nav .n{margin-left:auto;background:var(--ro);color:#fff;border-radius:999px;font-size:11px;padding:1px 7px;font-weight:800}
.nav svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;flex:none}
.side .pie{margin-top:auto;border-top:1px solid var(--lin);padding-top:12px;display:flex;gap:10px;align-items:center}
.av{width:34px;height:34px;border-radius:50%;background:#1e293b;display:grid;place-items:center;font-weight:800;color:#93c5fd;flex:none}
.main{padding:22px 28px;overflow:auto;display:flex;flex-direction:column;gap:16px;min-width:0}
.top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.top h1{font-size:22px;color:#fff}.sub{color:var(--mu);font-size:13px}.miga{color:var(--mu);font-size:12px;font-weight:700}
.sp{flex:1}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:38px;padding:0 16px;border-radius:10px;border:1px solid var(--lin2);background:#111827;color:#e2e8f0;font-weight:700;font-size:13px;text-decoration:none;white-space:nowrap}
.btn:hover{border-color:#475569}.btn:disabled{opacity:.45;cursor:default}
.btn.pri{background:var(--az);border-color:var(--az);color:#fff}.btn.ve{background:#15803d;border-color:#16a34a;color:#fff}.btn.am{background:var(--am);border-color:var(--am);color:#1c1203}.btn.ro{color:#fca5a5}
.btn.sm{height:30px;padding:0 11px;font-size:12px}
.card{background:var(--card);border:1px solid var(--lin);border-radius:14px}
.pad{padding:16px 18px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.kpi{padding:14px 16px}.kpi small{color:var(--mu);font-weight:600}.kpi b{display:block;font-size:26px;margin-top:4px}.kpi i{font-style:normal;font-size:12px;color:var(--mu)}
.chip{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:800;white-space:nowrap}
.c-az{background:#13254a;color:#93c5fd}.c-am{background:#3a2606;color:#fcd34d}.c-ve{background:#0b2e1a;color:#86efac}.c-ro{background:#3b0d0d;color:#fca5a5}.c-gr{background:#1e293b;color:#cbd5e1}.c-vi{background:#2a1a4a;color:#c4b5fd}
table.t{width:100%;border-collapse:collapse}
.t th{text-align:left;font-size:11.5px;color:var(--mu);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:10px 14px;border-bottom:1px solid var(--lin)}
.t td{padding:10px 14px;border-bottom:1px solid #18233a;vertical-align:middle}
.t tr.click{cursor:pointer}.t tr.click:hover td{background:#13203a}
.r{text-align:right}.mu{color:var(--mu)}
.in,input.in,select.in,textarea.in{height:38px;border-radius:9px;border:1px solid var(--lin2);background:#0b1220;color:#fff;padding:0 12px;font-size:13.5px;width:100%;font-family:inherit}
textarea.in{height:auto;min-height:70px;padding:9px 12px}
.in:focus{outline:2px solid #3d7dff55;border-color:#3d7dff}
label.f{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#cbd5e1}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.tabs{display:flex;gap:6px;flex-wrap:wrap}
.tab{padding:8px 14px;border-radius:9px;font-weight:700;color:var(--mu);font-size:13px;border:0;background:none}
.tab.on{background:#13254a;color:#fff}
.vacio{padding:40px;text-align:center;color:var(--mu)}
.aviso{border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.45}
.aviso.am{background:#2a1c06;border:1px solid #92400e;color:#fde68a}.aviso.az{background:#0d1a33;border:1px solid #2b3a58;color:#cbd5e1}.aviso.ro{background:#3b0d0d;border:1px solid #ef4444;color:#fecaca}.aviso.ve{background:#0b2e1a;border:1px solid #166534;color:#bbf7d0}
.paso{display:flex;align-items:center}
.paso .pt{display:flex;flex-direction:column;align-items:center;gap:5px;width:92px}
.paso .pt i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font:800 12px system-ui;color:#fff;font-style:normal}
.paso .pt span{font-size:11px;font-weight:700;text-align:center}
.paso .ln{flex:1;height:2px;margin-bottom:18px;min-width:8px}
.resp{display:flex;gap:4px;flex-wrap:wrap}
.resp button{padding:5px 8px;border-radius:8px;border:1px solid var(--lin2);font-size:11.5px;font-weight:700;color:var(--mu);background:none}
.resp button.on.tengo{background:#0b2e1a;border-color:#22c55e;color:#86efac}.resp button.on.tarda{background:#3a2606;border-color:#f59e0b;color:#fcd34d}.resp button.on.otra{background:#13254a;border-color:#3d7dff;color:#93c5fd}.resp button.on.no{background:#3b0d0d;border-color:#ef4444;color:#fca5a5}
.precio{width:96px;height:32px;text-align:right}
.modal-f{position:fixed;inset:0;background:rgba(2,6,23,.7);display:grid;place-items:center;z-index:50}
.modal{width:540px;max-width:calc(100vw - 40px);max-height:calc(100vh - 40px);overflow:auto;padding:26px;box-shadow:0 30px 80px rgba(0,0,0,.6);border-color:var(--lin2)}
.modal h2{color:#fff;font-size:20px}
.toast{position:fixed;right:20px;bottom:20px;background:#0f172a;border:1px solid var(--lin2);color:#e2e8f0;border-radius:12px;padding:12px 16px;z-index:99;box-shadow:0 10px 30px rgba(0,0,0,.5);max-width:420px;font-size:13px}
.ev{display:flex;gap:10px;font-size:12.5px;color:#cbd5e1;padding:5px 0;border-bottom:1px solid #18233a}.ev .mu{width:130px;flex:none}
/* despiece en pantalla (fondo blanco, como el papel) */
.hd-papel{background:#fff;color:#111;border-radius:12px;padding:14px 16px}
.hd-papel b,.hd-papel strong{color:#111}
.hd-tabla{width:100%;border-collapse:collapse;font-size:12.5px;color:#111}
.hd-tabla th{text-align:left;font-size:10.5px;color:#555;font-weight:700;padding:7px 8px;border-bottom:1.5px solid #bbb}
.hd-tabla td{padding:7px 8px;border-bottom:1px solid #e3e3e3;vertical-align:top}
.hd-tabla td.c{width:46px}.hd-tabla td.x,.hd-tabla th.x{width:18px;color:#888}.hd-tabla td.p{width:45%}
.hd-med{font-size:14.5px;color:#111}.hd-cod{font-size:10.5px;color:#555;line-height:1.35}.hd-nota{font-size:10.5px;color:#8a5a00;font-style:italic}
.hd-mat{background:#1e293b;color:#fff;padding:9px 12px;display:flex;align-items:center;border-radius:8px 8px 0 0}.hd-mat b{color:#fff;font-size:15px}.hd-mat span{margin-left:auto;font-size:11.5px;color:#cbd5e1}
.hd-aviso{font-size:11px;color:#555;padding:6px 2px}
.hd-ley{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:#222;align-items:center}.hd-ley span{display:inline-flex;align-items:center;gap:5px}.hd-ley b{color:#000}
.hd-lista{width:100%;border-collapse:collapse;font-size:11.5px;color:#111}.hd-lista td{padding:3px 4px;border-bottom:1px solid #e3e3e3}.hd-n{display:inline-grid;place-items:center;min-width:18px;height:16px;border:1px solid #000;font-weight:800;font-size:10px}
.hd-svg{display:block;background:#fff}
/* lo que se imprime: solo #imprimir, en blanco y negro */
#imprimir{display:none}
@media print{
  @page{size:A4 landscape;margin:9mm}
  body{background:#fff !important;color:#000 !important;min-width:0}
  body > *:not(#imprimir){display:none !important}
  #imprimir{display:block !important}
  .hp-hoja{page-break-after:always;break-after:page;color:#000;font-family:system-ui,sans-serif}
  .hp-hoja:last-child{page-break-after:auto;break-after:auto}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  #imprimir,#imprimir *{color:#000 !important}   /* (siempre negro: las impresoras de los talleres son en blanco y negro) */
}
.hp-cab{display:flex;align-items:flex-end;border-bottom:2px solid #000;padding-bottom:4px;margin-bottom:8px}.hp-cab .t1{font-size:9px;font-weight:800;color:#333}.hp-cab .t2{font-size:15px;font-weight:900;color:#000}.hp-cab .der{margin-left:auto;font-size:9px;text-align:right;color:#222}
.hp-mat{border:2px solid #000;padding:6px 10px;display:flex;align-items:center}.hp-mat b{font-size:14px;color:#000}.hp-mat span{margin-left:auto;font-size:10px}
.hp-aviso{font-size:10px;color:#333;padding:4px 0}.hp-sub{font-size:10px;color:#222;margin-bottom:6px}
.hp-fila{display:flex;gap:16px;align-items:flex-start}.hp-lado{flex:1;display:flex;flex-direction:column;gap:10px}
.hp-nota{border:1px solid #000;padding:6px 8px;font-size:11px;margin-top:8px}
.hp-hoja .hd-tabla,.hp-hoja .hd-lista{color:#000}.hp-hoja .hd-tabla th{color:#000;border-bottom:1.5px solid #000}.hp-hoja .hd-cod{color:#000}
.hp-etqs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.hp-etq{border:1px dashed #000;padding:6px;display:flex;gap:6px;font-size:10px;align-items:center}.hp-etq>b{font-size:18px;border:2px solid #000;min-width:30px;text-align:center}
