:root{--marca:#2e3f94;--marca-suave:#eef1fb;--tinta:#0f172a;--texto:#334155;--tenue:#64748b;--borde:#e2e8f0;--fondo:#f6f7f9;--superficie:#ffffff;--rojo:#b91c1c;--rojo-suave:#fef2f2;--verde:#166534;--verde-suave:#ecfdf3;--amarillo:#92400e;--amarillo-suave:#fffbeb;--azul:#1e40af;--azul-suave:#eff6ff;--naranjo:#9a3412;--naranjo-suave:#fff7ed;--radio:10px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.5;color:var(--texto);background:var(--fondo)}a{color:var(--marca)}h1,h2,h3{color:var(--tinta);line-height:1.25;margin:0 0 12px}h1{font-size:22px}h2{font-size:17px}h3{font-size:15px}.contenedor{max-width:1100px;margin:0 auto;padding:20px 16px 60px}.cabecera{background:var(--marca);color:#fff;display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:12px 16px}.cabecera .marca{font-weight:800;font-size:16px;margin-right:auto}.cabecera nav{display:flex;gap:4px;flex-wrap:wrap}.cabecera nav a{color:#fff;text-decoration:none;padding:6px 10px;border-radius:8px;font-weight:600;font-size:14px}.cabecera nav a:hover{background:rgba(255,255,255,.15)}.cabecera .usuario{font-size:13px;opacity:.9;display:flex;gap:10px;align-items:center}.cabecera button{background:transparent;border:1px solid rgba(255,255,255,.5);color:#fff;padding:4px 10px;border-radius:8px;cursor:pointer}.tarjeta{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);padding:16px;margin-bottom:16px}.fila{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.entre{justify-content:space-between}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:16px;gap:16px}.tenue{color:var(--tenue);font-size:13px}table.tabla{width:100%;border-collapse:collapse;font-size:14px}.tabla th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--tenue);padding:8px}.tabla td,.tabla th{border-bottom:1px solid var(--borde)}.tabla td{padding:10px 8px;vertical-align:top}.tabla tr:last-child td{border-bottom:0}.tabla a.fila-link{color:inherit;text-decoration:none;font-weight:700}.scroll{overflow-x:auto}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.badge.verde{background:var(--verde-suave);color:var(--verde)}.badge.rojo{background:var(--rojo-suave);color:var(--rojo)}.badge.amarillo{background:var(--amarillo-suave);color:var(--amarillo)}.badge.azul{background:var(--azul-suave);color:var(--azul)}.badge.naranjo{background:var(--naranjo-suave);color:var(--naranjo)}.badge.gris{background:#f1f5f9;color:#475569}.pestanas{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.pestanas a{text-decoration:none;padding:6px 12px;border-radius:999px;border:1px solid var(--borde);background:#fff;color:var(--texto);font-size:14px;font-weight:600}.pestanas a.activa{background:var(--marca);color:#fff;border-color:var(--marca)}label{display:block;font-size:13px;font-weight:600;color:var(--tinta);margin-bottom:4px}input,select,textarea{font:inherit;width:100%;padding:9px 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:var(--tinta)}input:focus,select:focus,textarea:focus{outline:2px solid var(--marca);outline-offset:1px}input.num{width:90px}.campo{margin-bottom:12px}.btn{font:inherit;font-weight:700;border:0;border-radius:9px;padding:10px 16px;cursor:pointer;background:var(--marca);color:#fff}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.sec{background:#fff;color:var(--tinta);border:1px solid #cbd5e1}.btn.peligro{background:var(--rojo)}.btn.chico{padding:6px 10px;font-size:13px}.aviso{border-radius:var(--radio);padding:12px 14px;margin-bottom:14px;font-size:14px}.aviso.ok{background:var(--verde-suave);color:var(--verde)}.aviso.error{background:var(--rojo-suave);color:var(--rojo)}.aviso.alerta{background:var(--amarillo-suave);color:var(--amarillo)}.aviso.info{background:var(--azul-suave);color:var(--azul)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.kpi{background:#fff;border:1px solid var(--borde);border-radius:var(--radio);padding:14px}.kpi b{display:block;font-size:22px;color:var(--tinta)}.linea-tiempo{list-style:none;margin:0;padding:0;font-size:13px}.linea-tiempo li{padding:6px 0 6px 14px;border-left:2px solid var(--borde);position:relative}.linea-tiempo li:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--marca);position:absolute;left:-5px;top:12px}.codigo{font-size:26px;font-weight:800;letter-spacing:.2em;color:var(--marca)}.centro{max-width:560px;margin:40px auto;padding:0 16px}