@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap";
:root{--hb-carbon:#13294b;--hb-blue:#3a5dae;--hb-celeste:#6cace4;--hb-gray:#3f4444;--hb-resin:#2c5697;--hb-flow:#0072ce;--hb-calypso:#dde5ed;--bg:#f1f5f9;--line:#e2e8f0;--line2:#eef2f7;--ink:#0f172a;--muted:#64748b;--ok-bg:#dcfce7;--ok:#15803d;--warn-bg:#fef9c3;--warn:#854d0e;--err-bg:#fee2e2;--err:#991b1b;--verde:#a9c47f;--vino:#672e45;--metal:#7a99ac;--naranja:#eca154;--gris:#566361;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:Montserrat,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.5}a{color:var(--hb-flow);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{text-wrap:balance;margin:0}.mono{font-family:ui-monospace,Consolas,monospace;font-size:12.5px}.app{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.side{background:var(--hb-carbon);color:#c9d6ea;flex-direction:column;display:flex}.side .brand{border-bottom:1px solid #ffffff14;align-items:center;gap:10px;padding:18px 16px;display:flex}.side .brand b{color:#fff;font-size:16px;font-weight:700;display:block}.side .brand small{color:#9fb1cc;font-size:11px}.navsec{padding:14px 0 4px}.navsec h4{letter-spacing:.08em;color:var(--hb-celeste);padding:0 16px 6px;font-size:11px;font-weight:600}.navsec a{color:#c9d6ea;border-radius:8px;align-items:center;gap:10px;margin:1px 8px;padding:8px 16px;font-size:13px;font-weight:500;display:flex}.navsec a:hover{background:var(--hb-resin);color:#fff;text-decoration:none}.navsec a.on{background:var(--hb-blue);color:#fff;font-weight:600}.side .foot{border-top:1px solid #ffffff14;align-items:center;gap:10px;margin-top:auto;padding:14px 16px;font-size:12.5px;display:flex}.avatar{background:var(--hb-blue);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:11px;font-weight:700;display:grid}.main{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:12px 24px;display:flex}.crumb{color:var(--muted);font-size:12.5px}.crumb b{color:var(--ink);font-weight:600}.role{background:var(--hb-calypso);color:var(--hb-blue);border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:600}.content{flex-direction:column;gap:16px;min-width:0;padding:24px;display:flex}.ph{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ph h1{font-size:26px;font-weight:700}.ph p{color:var(--muted);margin:4px 0 0;font-size:13.5px}.btns{flex-wrap:wrap;gap:8px;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:12.5px;font-weight:600;display:inline-flex}.btn-primary{background:var(--hb-flow);color:#fff}.btn-primary:hover{background:#005fb0}.btn-secondary{color:var(--hb-gray);background:#fff;border-color:#cbd5e1}.btn:disabled{opacity:.45;cursor:default}.card{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.card h3{color:var(--hb-carbon);font-size:15px;font-weight:700}.card h4{letter-spacing:.06em;text-transform:uppercase;color:var(--hb-gray);font-size:11px;font-weight:700}.kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.kpi{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;gap:1px;padding:12px 14px;display:flex}.kpi small{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:10.5px;font-weight:600}.kpi b{font-variant-numeric:tabular-nums;color:var(--hb-carbon);font-size:20px;font-weight:700}.kpi span{color:var(--muted);font-size:11.5px}.filtros{flex-wrap:wrap;align-items:center;gap:8px;display:flex}input[type=text],select{color:var(--ink);background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:13px}input[type=text]{flex:240px}.barra{background:#e8f0fb;border:1px solid #c7d9f5;border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;font-size:13px;display:flex}.scroll{border:1px solid var(--line);background:#fff;border-radius:10px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12.5px}thead th{background:var(--hb-blue);color:#fff;text-transform:uppercase;letter-spacing:.05em;text-align:left;white-space:nowrap;padding:9px 11px;font-size:11px;font-weight:700}td{border-top:1px solid var(--line2);vertical-align:middle;padding:9px 11px}tbody tr:hover td{background:#f8fafc}td.num{text-align:right;font-variant-numeric:tabular-nums}.chip{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.b-ok{background:var(--ok-bg);color:var(--ok)}.b-warn{background:var(--warn-bg);color:var(--warn)}.b-err{background:var(--err-bg);color:var(--err)}.b-mute{color:var(--muted);background:#f1f5f9}.b-info{background:var(--hb-calypso);color:var(--hb-blue)}.cls{white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:500;display:inline-flex}.cls i{border-radius:2px;width:9px;height:9px;display:block;transform:rotate(45deg)}.mini{color:var(--muted);font-size:11px}.lista{flex-direction:column;gap:9px;display:flex}.item{grid-template-columns:20px 1fr;gap:9px;font-size:12.5px;display:grid}.senal{border-left:3px solid var(--hb-celeste);background:#f7fafe;border-radius:0 8px 8px 0;flex-direction:column;gap:3px;padding:8px 10px;font-size:12.5px;display:flex}.dos{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:14px;display:grid}.fila-contacto{border:1px solid var(--line);border-radius:8px;grid-template-columns:86px 1fr auto;align-items:center;gap:10px;padding:8px 10px;font-size:12.5px;display:grid}.etapas{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:9px;display:grid}.cargando{color:var(--muted);padding:20px;font-size:13px}@media (max-width:1100px){.dos{grid-template-columns:1fr}}@media (max-width:1023px){.app{grid-template-columns:64px 1fr}.side .brand div,.navsec h4,.navsec a span,.side .foot div{display:none}.navsec a{justify-content:center;padding:9px 0}.side .brand{justify-content:center;padding:16px 0}}@media (max-width:767px){.app{grid-template-columns:1fr}.side{display:none}.content{padding:16px}}
