:root{--oro: #f0b429;--oro2: #d98e1f;--verde: #4a9d6a;--terra: #c75b39;--cuerda: #4a86c5;--bg0: #0a111d;--bg1: #16263e;--panel: rgba(20, 32, 52, .55);--panel2: rgba(10, 18, 30, .8);--text: #eef3fb;--muted: #9bb0cc;--line: rgba(120, 155, 200, .16);--line2: rgba(120, 155, 200, .32)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{font-family:Manrope,system-ui,sans-serif;background:radial-gradient(130% 90% at 20% 0%,var(--bg1) 0%,var(--bg0) 58%);color:var(--text);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.shell{display:flex;min-height:100vh}.side{width:224px;flex:none;border-right:1px solid var(--line);background:#0a111d99;padding:18px 12px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:16px;padding:2px 8px 14px}.brand .tag{font-size:9.5px;font-weight:800;letter-spacing:.1em;color:var(--oro);border:1px solid rgba(240,180,41,.4);border-radius:20px;padding:2px 8px}.navsec{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:12px 10px 4px}.navlink{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:9px;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer}.navlink:hover{background:#ffffff0a;color:var(--text)}.navlink.active{background:#f0b4291a;color:var(--oro)}.side .sp{flex:1}.main{flex:1;min-width:0}.top{height:56px;display:flex;align-items:center;gap:12px;padding:0 24px;border-bottom:1px solid var(--line);background:#0a111db3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:10}.top .sp{flex:1}.who{font-size:12.5px;color:var(--muted)}.content{max-width:1240px;margin:0 auto;padding:24px 24px 80px}h1{font-size:19px;font-weight:800;margin-bottom:4px}h2{font-size:15px;font-weight:800;margin:24px 0 10px;display:flex;align-items:center;gap:8px}.sub{color:var(--muted);font-size:12.5px;margin-bottom:18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px}.card+.card{margin-top:12px}.grid{display:grid;gap:12px}.kpis{display:flex;gap:12px;flex-wrap:wrap}.kpi{flex:1;min-width:150px;background:#f0b4290d;border:1px solid var(--line);border-radius:12px;padding:12px 14px}.kpi b{font-size:24px;font-weight:800;display:block}.kpi .l{color:var(--muted);font-size:11.5px;margin-top:2px}.kpi .f{color:var(--muted);font-size:10px;margin-top:5px;opacity:.75}.kpi.ni{background:#789bc80d}.kpi.ni b{font-size:13px;color:var(--muted);font-weight:700;padding:5px 0}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:8px 10px;border-bottom:1px solid var(--line2);white-space:nowrap}td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:middle}tr:last-child td{border-bottom:none}tr.click{cursor:pointer}tr.click:hover td{background:#ffffff06}.scroll{overflow-x:auto}.pill{display:inline-block;font-size:10.5px;font-weight:800;border-radius:20px;padding:3px 9px;white-space:nowrap}.pill.trial{background:#f0b42926;color:var(--oro)}.pill.activa,.pill.ok,.pill.aceptada,.pill.active,.pill.accepted{background:#4a9d6a2e;color:#8fd6ab}.pill.vencida,.pill.error,.pill.suspendida,.pill.denied,.pill.anulada,.pill.expired,.pill.revoked,.pill.suspended,.pill.disabled{background:#c75b392e;color:#f0a585}.pill.pendiente,.pill.gris,.pill.pending{background:#789bc824;color:var(--muted)}.pill.rol{background:#4a86c529;color:#9ec4ef}.btn{font-family:inherit;font-weight:700;font-size:12.5px;border:none;border-radius:9px;padding:8px 13px;cursor:pointer;transition:.15s;color:var(--text);background:#ffffff0f;border:1px solid var(--line2)}.btn:hover{border-color:var(--oro)}.btn.oro{background:linear-gradient(120deg,var(--oro),var(--oro2));color:#2a1c02;border:none}.btn.danger{background:#c75b3926;color:#f0a585;border-color:#c75b3966}.btn.sm{padding:5px 9px;font-size:11.5px}.btn:disabled{opacity:.5;cursor:default}select,input,textarea{background:var(--panel2);border:1px solid var(--line2);border-radius:9px;color:var(--text);font-family:inherit;font-size:13px;padding:8px 10px;outline:none}select:focus,input:focus,textarea:focus{border-color:var(--oro)}.rowform{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.muted{color:var(--muted);font-size:12.5px}.mono{font-family:ui-monospace,monospace;font-size:11px}.vacio{padding:14px 10px;color:var(--muted);font-size:12.5px}.centro{max-width:430px;margin:9vh auto;background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:30px;text-align:center}.centro h1{font-size:20px;margin-bottom:6px}.centro p{color:var(--muted);font-size:13px;margin-bottom:16px}.centro input,.centro .btn{width:100%;margin-bottom:9px;padding:11px}.err{color:#f0a585;font-size:12.5px;min-height:16px;margin-top:4px;white-space:pre-wrap}.divisor{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;margin:10px 0}.divisor span{flex:1;height:1px;background:var(--line)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#04080eb3;z-index:90;display:flex;align-items:center;justify-content:center}.modal{width:min(440px,92vw);background:#101c2f;border:1px solid var(--line2);border-radius:16px;padding:20px}.modal h3{font-size:15px;font-weight:800;margin-bottom:8px}.modal .muted{margin-bottom:12px}.modal input,.modal select,.modal textarea{width:100%;margin-bottom:10px}.modal .acciones{display:flex;gap:8px;justify-content:flex-end}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#15324f;border:1px solid var(--line2);border-radius:12px;padding:11px 18px;font-size:13px;z-index:99;box-shadow:0 12px 34px #00000080}details.meta summary{cursor:pointer;color:var(--muted);font-size:11px}details.meta pre{margin-top:6px;background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:8px;font-size:10.5px;overflow-x:auto;max-width:480px}.banner{border:1px solid rgba(240,180,41,.35);background:#f0b42912;border-radius:12px;padding:10px 14px;font-size:12.5px;color:var(--text);margin-bottom:14px}.banner.rojo{border-color:#c75b3966;background:#c75b3914}
