@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/quicksand-vietnamese-wght-normal-ei70gACF.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/quicksand-latin-ext-wght-normal-CrJ75Ewg.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/quicksand-latin-wght-normal-Buj9m_3d.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--navy:#0b2545;--navy2:#13315c;--acento:#ff8c42;--acento2:#e07a35;--oceano:#134074;--cielo:#8da9c4;--fondo:#f2f5f9;--borde:#e3e9f1;--texto:#22314a;--gris:#6b7f99;--blanco:#fff;--amarillo:#eab308;--rojo:#dc2626;--azulc:#2563eb}*{box-sizing:border-box;margin:0}html,body,#root{height:100%}body{font-family:Quicksand Variable,Segoe UI,system-ui,sans-serif;background:var(--fondo);color:var(--texto);font-weight:450}button{cursor:pointer;font:inherit}h2{color:var(--navy);font-weight:650;font-size:22px}h3{color:var(--navy);font-weight:600}input,select,textarea{font:inherit;padding:9px 12px;border:1.5px solid var(--borde);border-radius:10px;width:100%;background:#fff;color:var(--texto);transition:border-color .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--oceano)}label{display:block;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gris);margin:12px 0 5px;font-weight:600}.app{display:flex;min-height:100vh}.sidebar{width:232px;background:linear-gradient(180deg,var(--navy) 0%,var(--navy2) 100%);color:#dbe7f3;display:flex;flex-direction:column;position:fixed;top:0;bottom:0;left:0;z-index:30;transition:transform .2s}.brand{padding:22px 20px 14px;display:flex;align-items:center;gap:10px}.brand svg{flex-shrink:0}.brand b{font-size:17px;letter-spacing:.12em;color:#fff}.brand span{display:block;font-size:9.5px;letter-spacing:.2em;color:var(--cielo)}.menu{flex:1;padding:10px 12px;overflow-y:auto}.menu button{display:flex;align-items:center;gap:11px;width:100%;background:none;border:none;color:#c6d6e6;padding:11px 12px;border-radius:10px;font-size:14.5px;font-weight:550;margin-bottom:2px;text-align:left}.menu button:hover{background:#ffffff12;color:#fff}.menu button.activa{background:#ff8c4229;color:#ffb37e}.menu button svg{width:19px;height:19px;flex-shrink:0}.sidebar .pie{padding:14px 20px;font-size:11px;color:var(--cielo);border-top:1px solid rgba(255,255,255,.08)}.principal{flex:1;margin-left:232px;display:flex;flex-direction:column;min-width:0}.topbar{background:#fff;border-bottom:1px solid var(--borde);padding:12px 26px;display:flex;align-items:center;gap:14px;position:sticky;top:0;z-index:20}.topbar .titulo{font-weight:650;color:var(--navy);font-size:17px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hamburguesa{display:none;background:none;border:none;color:var(--navy);padding:4px}.contenido{padding:24px 26px;max-width:1500px;width:100%}.tarjeta{background:#fff;border:1px solid var(--borde);border-radius:14px;padding:22px;margin-bottom:18px;box-shadow:0 1px 3px #0b25450d}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--borde);border-radius:14px;padding:16px 18px;box-shadow:0 1px 3px #0b25450d}.stat b{display:block;font-size:28px;color:var(--navy);font-weight:650}.stat span{font-size:11.5px;color:var(--gris);text-transform:uppercase;letter-spacing:.07em;font-weight:600}.tabla-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:640px}th{font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--gris);text-align:left;padding:9px 10px;border-bottom:2px solid var(--borde);font-weight:650;white-space:nowrap}td{padding:10px;border-bottom:1px solid var(--borde);vertical-align:top}tr.fila:hover{background:#f6f9fc;cursor:pointer}.badge{display:inline-block;padding:3.5px 11px;border-radius:99px;color:#fff;font-size:11.5px;font-weight:600;white-space:nowrap}.etiqueta{display:inline-block;background:#eef3f9;color:var(--oceano);border:1px solid var(--borde);padding:2px 9px;border-radius:99px;font-size:11.5px;font-weight:600;margin:1px 3px 1px 0}.boton{background:var(--acento);color:#fff;border:none;padding:10px 18px;border-radius:10px;font-weight:650;box-shadow:0 2px 6px #ff8c4259}.boton:hover{background:var(--acento2)}.boton.sec{background:#fff;color:var(--navy);border:1.5px solid var(--borde);box-shadow:none}.boton.sec:hover{background:#f6f9fc}.boton:disabled{opacity:.5;cursor:not-allowed}.fila-acciones{display:flex;gap:10px;justify-content:flex-end;margin-top:18px;flex-wrap:wrap}.drawer{position:fixed;top:0;right:0;bottom:0;width:560px;max-width:100vw;background:#fff;box-shadow:-10px 0 40px #0b254540;padding:26px;overflow-y:auto;z-index:50}.velo{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b254573;z-index:40}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;padding:11px;border-radius:10px;margin:12px 0;font-size:13.5px}.aviso{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;padding:11px;border-radius:10px;margin:12px 0;font-size:13.5px}.ok{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;padding:11px;border-radius:10px;margin:12px 0;font-size:13.5px}.campana{position:relative;background:#fff;border:1.5px solid var(--borde);color:var(--navy);border-radius:10px;padding:8px 14px;font-weight:600}.punto{position:absolute;top:-7px;right:-7px;background:var(--acento);border-radius:99px;font-size:10.5px;padding:1.5px 6px;color:#fff;font-weight:700}.filtros{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.filtros input,.filtros select{width:auto;min-width:170px;flex:1;max-width:340px}.subtitulo{color:var(--gris);font-size:13.5px;margin:4px 0 14px}.notif{padding:11px 4px;border-bottom:1px solid var(--borde);font-size:13.5px}.notif.noleida{background:#fff7ed;border-radius:8px;padding:11px}.qr{margin:12px auto;border-radius:12px}.confidencial{border:1.5px dashed #fca5a5;background:#fff8f8;border-radius:12px;padding:14px;margin-top:18px}.login{min-height:100vh;display:flex;align-items:stretch;background:linear-gradient(180deg,#0b2545,#134074 55%,#0f3460)}.login .lado{flex:1.2;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;padding:40px}.login .lado .lema{color:#dbe7f3;position:relative;z-index:2;margin-bottom:24px;max-width:480px}.login .lema h1{font-size:34px;color:#fff;font-weight:650;letter-spacing:.02em;line-height:1.2}.login .lema p{margin-top:10px;font-size:15px;color:var(--cielo)}.login .barco{position:absolute;inset:auto 0 0 0;width:100%;z-index:1}.login .panel{width:440px;max-width:100%;background:#fff;display:flex;align-items:center;justify-content:center;padding:40px 36px}.login .caja{width:100%}.login .caja .logo{display:flex;align-items:center;gap:10px;margin-bottom:6px}.login .caja h2{letter-spacing:.14em}@media (max-width:1000px){.sidebar{transform:translate(-100%);width:250px;box-shadow:10px 0 40px #0b25454d}.sidebar.abierta{transform:translate(0)}.principal{margin-left:0}.hamburguesa{display:block}.contenido{padding:16px 14px}.drawer{width:100vw;padding:18px}.grid2{grid-template-columns:1fr}.login{flex-direction:column}.login .lado{min-height:270px;padding:24px}.login .lema h1{font-size:24px}.login .panel{width:100%;flex:1;padding:28px 20px}.filtros input,.filtros select{max-width:none}}@media (max-width:520px){.stats{grid-template-columns:1fr 1fr}.topbar{padding:10px 14px}table{font-size:12.5px}}
