:root{--blue: #005dff;--blue-dark: #0047c4;--lime: #bef940;--lime-dark: #9ed424;--navy: #00133c;--pink: #ff70cd;--background: #f6f8ff;--surface: #ffffff;--surface-blue-tint: #eaf0ff;--text: #00133c;--text-muted: #5a6b8c;--success: #2fbf71;--warning: #ffb020;--danger: #e5484d;--border: #dde5f5;--heading: "Poppins", system-ui, sans-serif;--body: "Nunito", system-ui, sans-serif;--radius: 16px;--radius-sm: 10px;--radius-pill: 999px}*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--text);font-family:var(--body);font-size:15px}h1,h2,h3,button{font-family:var(--heading)}.app{display:flex;min-height:100vh}.lateral{width:220px;background:var(--navy);color:#fff;padding:24px 16px;display:flex;flex-direction:column;gap:6px;flex-shrink:0}.wordmark{font-family:var(--heading);font-weight:700;font-size:26px;letter-spacing:1px;color:#fff;margin:0 8px 18px}.wordmark span{color:var(--lime)}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);color:#c9d4ea;font-family:var(--heading);font-weight:500;font-size:14px;background:none;border:none;cursor:pointer;text-align:left}.nav-item.activo{background:var(--blue);color:#fff}.nav-item:hover:not(.activo){background:#ffffff14}.lateral .abajo{margin-top:auto;border-top:1px solid rgba(255,255,255,.15);padding-top:14px}.contenido{flex:1;padding:28px 32px;max-width:1100px}.contenido h1{font-size:24px;font-weight:700;margin:0 0 4px}.subtitulo{color:var(--text-muted);margin:0 0 20px}.tarjeta{background:var(--surface);border-radius:var(--radius);padding:18px 20px;box-shadow:0 2px 10px #00133c0f;margin-bottom:14px}.boton{font-weight:600;font-size:14px;border:none;border-radius:var(--radius-pill);padding:10px 20px;cursor:pointer;background:var(--blue);color:#fff}.boton:hover{background:var(--blue-dark)}.boton:disabled{opacity:.5;cursor:default}.boton.lima{background:var(--lime);color:var(--navy)}.boton.lima:hover{background:var(--lime-dark)}.boton.borde{background:transparent;color:var(--blue);border:2px solid var(--blue)}.boton.peligro{background:transparent;color:var(--danger);border:2px solid var(--danger)}.boton.chico{padding:6px 14px;font-size:13px}input,select{font-family:var(--body);font-size:14px;color:var(--text);background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:9px 12px;outline:none}input:focus,select:focus{border-color:var(--blue)}table{width:100%;border-collapse:collapse}th{font-family:var(--heading);font-weight:600;font-size:12.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);text-align:left;padding:8px 10px;border-bottom:1.5px solid var(--border)}td{padding:10px;border-bottom:1px solid var(--border);vertical-align:middle}tr:last-child td{border-bottom:none}.chip{display:inline-block;border-radius:var(--radius-pill);padding:3px 10px;font-size:12px;font-family:var(--heading);font-weight:500;background:var(--surface-blue-tint);color:var(--navy);margin-right:4px}.chip.lima{background:var(--lime)}.chip.rosa{background:var(--pink);color:#fff}.chip.gris{background:#eef1f8;color:var(--text-muted)}.estado-ok{color:var(--success);font-weight:700}.estado-mal{color:var(--danger);font-weight:700}.estado-espera{color:var(--warning);font-weight:700}.fila-acciones{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.error{color:var(--danger);font-weight:700;margin:10px 0}.nota{color:var(--text-muted);font-size:13px}.login-fondo{min-height:100vh;background:var(--navy);display:flex;align-items:center;justify-content:center}.login-caja{background:var(--surface);border-radius:var(--radius);padding:36px;width:380px;display:flex;flex-direction:column;gap:12px}.login-caja h1{margin:0;font-size:22px}.docs-grid{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.doc-miniatura{display:block;width:130px;border:1.5px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;text-align:center;color:var(--blue);font-size:12.5px;text-decoration:none;background:var(--surface-blue-tint)}.doc-miniatura img{width:100%;height:90px;object-fit:cover;display:block}.doc-miniatura .etiqueta{padding:5px;font-family:var(--heading);font-weight:500}.modal-fondo{position:fixed;top:0;right:0;bottom:0;left:0;background:#00133c8c;display:flex;align-items:center;justify-content:center;z-index:50;padding:24px}.modal-caja{background:var(--surface);border-radius:var(--radius);padding:22px 24px;max-width:92vw;max-height:86vh;overflow-y:auto;box-shadow:0 18px 60px #00133c59}.modal-cabecera{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.modal-cabecera h2{margin:0;font-size:18px}.modal-cerrar{background:none;border:none;font-size:26px;line-height:1;color:var(--text-muted);cursor:pointer;padding:2px 6px}.paginado{display:flex;align-items:center;gap:10px;justify-content:flex-end;margin-top:12px}.perfil-cabecera{display:flex;gap:14px;align-items:center}.perfil-foto{width:64px;height:64px;border-radius:14px;object-fit:cover;background:var(--surface-blue-tint)}.perfil-foto.placeholder{display:flex;align-items:center;justify-content:center;font-family:var(--heading);font-weight:700;font-size:22px;color:var(--blue)}.perfil-datos{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px 18px;margin-top:12px}.perfil-dato .etiqueta{font-family:var(--heading);font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.perfil-parrafo{margin:10px 0 0;padding:10px 12px;background:var(--surface-blue-tint);border-radius:var(--radius-sm);font-size:14px}
