:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Inter,Arial,sans-serif}html{min-height:100%}body{min-width:320px;min-height:100vh;margin:0}#root{min-height:100vh}button,input{font:inherit}*{box-sizing:border-box}body{background:#0b1424;margin:0;font-family:Inter,Arial,sans-serif}.pagina{background:radial-gradient(circle at 15% 20%,#163c46 0%,#0000 35%),linear-gradient(135deg,#0b1424,#14243b);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login{width:100%;max-width:430px}.marca{text-align:center;color:#fff;margin-bottom:30px}.simbolo{margin-bottom:10px;font-size:48px}.marca h1{letter-spacing:2px;margin:0;font-size:34px;font-weight:800}.marca p{color:#a7b6c9;margin-top:10px;font-size:14px}form{background:#fff;border-radius:18px;padding:35px;box-shadow:0 20px 60px #00000040}form h2{color:#15243b;margin:0;font-size:25px}.subtitulo{color:#64748b;margin-bottom:28px;font-size:14px}form label{color:#334155;margin:18px 0 8px;font-size:13px;font-weight:600;display:block}form input{border:1px solid #cbd5e1;border-radius:9px;outline:none;width:100%;padding:14px;font-size:15px}form input:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b9811f}form button{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:9px;width:100%;margin-top:28px;padding:15px;font-size:15px;font-weight:700}form button:hover{background:#059669}form button:disabled{opacity:.6;cursor:not-allowed}.mensaje{text-align:center;color:#334155;margin-top:18px;font-size:13px}.pie{text-align:center;color:#718096;margin-top:28px;font-size:12px}@media (width<=480px){form{padding:25px}.marca h1{font-size:28px}}.dashboard{color:#14243b;background:#f1f5f9;min-height:100vh}.barra{background:#101c30;justify-content:space-between;align-items:center;gap:16px;min-height:76px;padding:16px 36px;display:flex}.barra h1{color:#fff;margin:0;font-size:24px;font-weight:800}.barra button{color:#fff;cursor:pointer;background:0 0;border:1px solid #64748b;border-radius:8px;padding:11px 18px}.contenido{max-width:1300px;margin:auto;padding:40px 28px}.contenido h2{margin:0 0 8px;font-size:28px}.contenido>p{color:#64748b;margin:0 0 30px}.indicadores{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.indicador{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:18px;padding:28px;display:flex;box-shadow:0 5px 20px #0000000d}.indicador span{color:#64748b;font-size:14px;font-weight:600}.indicador strong{color:#14243b;overflow-wrap:anywhere;font-size:30px;font-weight:800}.indicador:nth-child(3) strong,.indicador:nth-child(6) strong{color:#059669}.contenido .nota{color:#64748b;margin-top:28px;font-size:13px}@media (width<=900px){.indicadores{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.barra{padding:16px}.barra h1{font-size:19px}.contenido{padding:26px 16px}.indicadores{grid-template-columns:1fr}}.seccion-cargadores{margin-top:36px}.encabezado-cargadores{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.encabezado-cargadores h2{color:#14243b;margin:0;font-size:23px}.encabezado-cargadores span{color:#1d4ed8;background:#dbeafe;border-radius:20px;padding:8px 14px;font-size:13px;font-weight:700}.tabla-contenedor{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow-x:auto;box-shadow:0 5px 20px #0000000a}.tabla-cargadores{border-collapse:collapse;text-align:left;color:#14243b;width:100%;font-size:14px}.tabla-cargadores thead{background:#f8fafc}.tabla-cargadores th{color:#475569;white-space:nowrap;border-bottom:1px solid #e2e8f0;padding:18px;font-size:12px;font-weight:700}.tabla-cargadores td{border-bottom:1px solid #f1f5f9;padding:18px}.tabla-cargadores tbody tr:hover{background:#f8fafc}.tabla-cargadores tbody tr:last-child td{border-bottom:none}.error-cargadores{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin-bottom:16px;padding:14px}@media (width<=600px){.encabezado-cargadores{flex-direction:column;align-items:flex-start}.tabla-cargadores{min-width:760px}}.filtros-sesiones{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-wrap:wrap;align-items:end;gap:16px;margin:18px 0 22px;padding:20px;display:flex}.filtro-grupo{flex-direction:column;flex:180px;gap:7px;min-width:0;display:flex}.filtro-grupo label{color:#334155;font-size:13px;font-weight:600}.filtro-grupo select,.filtro-grupo input{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;width:100%;min-height:42px;padding:10px 12px;font-size:14px}.filtro-grupo select:focus,.filtro-grupo input:focus{outline-offset:1px;outline:2px solid #2563eb}@media (width<=640px){.filtros-sesiones{flex-direction:column;align-items:stretch;padding:14px}.filtro-grupo{flex:none;width:100%}}.filtros-sesiones>select,.filtros-sesiones>input{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;flex:180px;min-width:0;min-height:44px;padding:10px 12px;font-size:14px}.filtros-sesiones>button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;min-height:44px;padding:10px 18px;font-weight:600}.filtros-sesiones>button:hover{background:#1d4ed8}@media (width<=640px){.filtros-sesiones>select,.filtros-sesiones>input,.filtros-sesiones>button{flex:none;width:100%}}
