:root{--rojo:#c00;--rojo-osc:#a30000;--azul:#1c2b4a;--azul-claro:#2c3f66;--fondo:#f4f5f8;--tarjeta:#fff;--texto:#1d2433;--tenue:#6b7385;--borde:#dde1e8;--radio:10px;color:var(--texto);background:var(--fondo);font-family:Fira Sans,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--fondo);margin:0}h1,h2{color:var(--azul);margin:0 0 6px}h1{font-size:1.6rem;font-weight:600}h2{font-size:1.2rem;font-weight:600}p{margin:0 0 8px;line-height:1.45}a{color:inherit}.centro{min-height:100vh;color:var(--tenue);place-items:center;display:grid}.tenue{color:var(--tenue)}.alerta{color:#8a1010;background:#fdecec;border:1px solid #f3c2c2;border-radius:8px;padding:10px 12px}.btn{font:inherit;cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;padding:9px 16px;font-weight:500;transition:background .15s,border-color .15s}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primario{background:var(--rojo);color:#fff}.btn-primario:hover:not(:disabled){background:var(--rojo-osc)}.btn-secundario{color:var(--azul);border-color:var(--borde);background:#fff}.btn-secundario:hover:not(:disabled){border-color:var(--azul)}.btn-claro{color:#fff;background:0 0;border-color:#fff6;padding:6px 12px}.btn-claro:hover{border-color:#fff}.btn-peligro{color:var(--rojo);background:#fff;border-color:#efb3b3}.btn-peligro:hover:not(:disabled){background:#fdecec}.login{background:linear-gradient(160deg, var(--azul) 0%, var(--azul-claro) 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.login-card{text-align:center;color:#fff;background:#ffffff0f;border:1px solid #ffffff24;border-radius:16px;width:100%;max-width:400px;padding:36px 28px}.login-card h1{color:#fff;margin-top:18px}.login-card p{color:#fffc}.login-logo{width:170px;max-width:70%}.btn-ms{color:#1d2433;background:#fff;justify-content:center;align-items:center;gap:10px;width:100%;margin-top:18px;padding:11px 16px;text-decoration:none;display:inline-flex}.btn-ms:hover{background:#f0f2f6}.ms-logo{grid-template-columns:9px 9px;gap:2px;display:grid}.ms-logo i{width:9px;height:9px;display:block}.ms-logo i:first-child{background:#f25022}.ms-logo i:nth-child(2){background:#7fba00}.ms-logo i:nth-child(3){background:#00a4ef}.ms-logo i:nth-child(4){background:#ffb900}.login .alerta{text-align:left;margin-top:14px}.pie{color:#ffffff8c;margin-top:22px;font-size:.85rem}.barra{background:var(--azul);color:#fff;flex-wrap:wrap;align-items:center;gap:24px;padding:10px 24px;display:flex}.barra-marca{align-items:center;gap:10px;text-decoration:none;display:flex}.barra-marca img{height:30px}.barra-marca span{letter-spacing:.02em;border-left:1px solid #ffffff4d;padding-left:10px;font-weight:600}.barra-nav{flex:1;gap:4px;display:flex}.barra-nav a{color:#fffc;border-radius:6px;padding:6px 12px;text-decoration:none}.barra-nav a:hover{color:#fff;background:#ffffff14}.barra-nav a.activo{color:#fff;background:#ffffff24}.barra-usuario{align-items:center;gap:12px;font-size:.92rem;display:flex}.barra-usuario span{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.contenido{max-width:1080px;margin:0 auto;padding:32px 24px 48px}.encabezado{margin-bottom:24px}.encabezado p{color:var(--tenue);max-width:640px}.encabezado-fila{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.tarjetas{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;display:grid}.tarjeta{font:inherit;text-align:left;cursor:pointer;background:var(--tarjeta);border:1px solid var(--borde);border-top:4px solid var(--rojo);border-radius:14px;flex-direction:column;gap:8px;padding:22px;transition:transform .15s,box-shadow .15s;display:flex}.tarjeta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 24px #1c2b4a1f}.tarjeta-icono{width:48px;height:48px;color:var(--azul);background:#eef1f7;border-radius:12px;place-items:center;display:grid}.tarjeta-nombre{color:var(--azul);font-size:1.12rem;font-weight:600}.tarjeta-desc{color:var(--tenue);flex:1;font-size:.93rem}.tarjeta-ir{color:var(--rojo);font-size:.93rem;font-weight:600}.vacio{border:1px dashed var(--borde);text-align:center;background:#fff;border-radius:12px;padding:28px}.buscador{font:inherit;border:1px solid var(--borde);background:#fff;border-radius:8px;width:100%;max-width:380px;margin-bottom:14px;padding:9px 12px}.tabla-envoltura{border:1px solid var(--borde);background:#fff;border-radius:12px;overflow-x:auto}.tabla{border-collapse:collapse;width:100%;font-size:.93rem}.tabla th{text-align:left;color:var(--tenue);border-bottom:1px solid var(--borde);background:#fafbfc;padding:10px 14px;font-weight:500}.tabla td{vertical-align:middle;border-bottom:1px solid #eef0f4;padding:12px 14px}.tabla tr:last-child td{border-bottom:0}.tabla tr.inactivo td{opacity:.55}.tabla td:last-child{text-align:right;width:1%}.persona-nombre{font-weight:500}.persona-email{color:var(--tenue);font-size:.86rem}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{color:var(--azul);white-space:nowrap;background:#eef1f7;border-radius:999px;padding:3px 10px;font-size:.82rem}.chip em{color:var(--tenue);font-style:normal}.chip-admin{color:var(--rojo-osc);background:#fdecec}.estado{white-space:nowrap;font-size:.86rem}.estado-off{color:var(--rojo);font-weight:500}.fondo-modal{z-index:10;background:#141c2d73;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;flex-direction:column;gap:14px;width:100%;max-width:540px;max-height:calc(100vh - 32px);padding:24px;display:flex;overflow-y:auto}.campo{color:var(--tenue);flex-direction:column;gap:5px;font-size:.9rem;display:flex}.campo input,.modulo-fila select{font:inherit;color:var(--texto);border:1px solid var(--borde);background:#fff;border-radius:8px;padding:9px 11px}.campo input:disabled{background:#f4f5f8}.modulos-form{border:1px solid var(--borde);border-radius:10px;margin:0;padding:8px 14px 4px}.modulos-form legend{color:var(--tenue);padding:0 6px;font-size:.9rem}.modulo-fila{border-bottom:1px solid #eef0f4;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.modulo-fila:last-child{border-bottom:0}.modulo-fila select{min-width:170px}.check{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.check input{accent-color:var(--rojo);width:16px;height:16px;margin-top:3px}.check span{flex-direction:column;display:flex}.check small{color:var(--tenue);font-size:.82rem}.modal-acciones{align-items:center;gap:8px;margin-top:4px;display:flex}.espaciador{flex:1}@media (width<=640px){.barra{gap:12px;padding:10px 16px}.barra-usuario span{display:none}.contenido{padding:24px 16px 40px}.modulo-fila{flex-direction:column;align-items:stretch}.modulo-fila select{min-width:0}}
