:root{--marino: #17307a;--marino-2: #1f3d94;--acento: #2f5fd0;--acento-claro: #e7eefc;--cian: #2ee6f6;--ambar: #f2a33a;--ambar-claro: #fff4e2;--rojo: #c8442f;--rojo-claro: #fdecea;--texto: #1b2433;--texto-2: #5b6678;--borde: #dfe4ec;--fondo: #f4f6fa;--blanco: #ffffff;--radio: 10px;--sombra: 0 1px 2px rgba(18, 35, 63, .06), 0 4px 16px rgba(18, 35, 63, .06)}*{box-sizing:border-box}html,body{margin:0}body{font-family:Roboto,Inter,system-ui,sans-serif;color:var(--texto);background:var(--fondo);font-size:14px}a{color:var(--acento);text-decoration:none}h1{font-size:22px;margin:0 0 4px;letter-spacing:-.01em}h2{font-size:16px;margin:0 0 12px}.sub{color:var(--texto-2);margin:0 0 20px}.btn{border:0;border-radius:8px;padding:9px 16px;font:inherit;font-weight:600;cursor:pointer;background:var(--marino);color:#fff;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn:hover{background:var(--marino-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.acento{background:var(--acento)}.btn.acento:hover{background:#2550b8}.btn.secundario{background:var(--blanco);color:var(--texto);border:1px solid var(--borde)}.btn.secundario:hover{background:var(--fondo)}.btn.peligro{background:var(--rojo)}.btn.chico{padding:5px 10px;font-size:13px}.btn.link{background:none;color:var(--acento);padding:4px 6px}label{display:block;font-size:12px;font-weight:600;color:var(--texto-2);margin-bottom:4px}input,select,textarea{width:100%;font:inherit;padding:9px 11px;border:1px solid var(--borde);border-radius:8px;background:#fff;color:var(--texto)}input:focus,select:focus,textarea:focus{outline:2px solid var(--acento-claro);border-color:var(--acento)}input[type=checkbox]{width:auto}.campo{margin-bottom:14px}.check{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--texto);margin-bottom:8px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:0 16px}@media(max-width:760px){.grid2,.grid3{grid-template-columns:1fr}}.tarjeta{background:var(--blanco);border:1px solid var(--borde);border-radius:var(--radio);box-shadow:var(--sombra);padding:20px;margin-bottom:18px}.barra{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin-bottom:16px}.barra>*{flex:0 0 auto}.barra .crece{flex:1 1 220px}.tabla-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--texto-2);padding:10px 12px;border-bottom:1px solid var(--borde);background:#fafbfd}td{padding:11px 12px;border-bottom:1px solid var(--borde);vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafbfd}.acciones{display:flex;gap:4px;justify-content:flex-end}.vacio{text-align:center;color:var(--texto-2);padding:32px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;word-break:break-all}.insignia{display:inline-block;padding:3px 9px;border-radius:99px;font-size:12px;font-weight:600;background:#eef1f6;color:var(--texto-2)}.insignia.Pendiente{background:var(--ambar-claro);color:#9a5d06}.insignia.EnProceso{background:#e6effc;color:#2457a6}.insignia.Completado,.insignia.Firmado,.insignia.ok,.insignia.Enviado{background:#e3f6ec;color:#11795a}.insignia.Simulado{background:#eef1f6;color:#5b6678}.insignia.Fallido,.insignia.Rechazado,.insignia.Anulado,.insignia.Caducado{background:var(--rojo-claro);color:var(--rojo)}.insignia.demo{background:var(--ambar);color:#fff}.aviso{padding:12px 14px;border-radius:8px;margin-bottom:14px;font-size:13px;line-height:1.45}.aviso.error{background:var(--rojo-claro);color:var(--rojo)}.aviso.ok{background:#e3f6ec;color:#11795a}.aviso.info{background:#e6effc;color:#2457a6}.aviso.demo{background:var(--ambar-claro);color:#8a5300;border:1px solid #f5d39d}.velo{position:fixed;top:0;right:0;bottom:0;left:0;background:#12233f73;display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;z-index:50;overflow-y:auto}.modal{background:#fff;border-radius:14px;width:100%;max-width:640px;padding:24px;box-shadow:0 20px 60px #00000040}.modal.ancho{max-width:920px}.modal-pie{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
