.hub{--hub-ink:#0d1031;--hub-azul:#007bad;--hub-linea:#d9dde3;min-height:100dvh;display:flex;flex-direction:column;color:var(--hub-ink);font-family:var(--font-body,system-ui,sans-serif);-webkit-font-smoothing:antialiased;background:linear-gradient(180deg,rgba(0,160,200,1),rgba(11,216,204,1))}.hub-main{flex:1;display:grid;place-items:center;padding:40px 16px 64px}.hub-card{width:100%;max-width:430px;background:#fff;border-radius:32px;padding:48px 44px 40px;box-shadow:0 24px 64px rgba(0,62,92,.28),0 4px 14px rgba(0,62,92,.1)}.hub-logo{display:block;width:min(260px,100%);height:auto;margin:0 auto 38px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hub-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:54px;padding:0 18px;border-radius:12px;border:1px solid var(--hub-linea);background:#fff;color:var(--hub-ink);font:600 16px/1 var(--font-body,system-ui);text-decoration:none;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.hub-btn:hover{border-color:var(--hub-azul);box-shadow:0 6px 18px rgba(0,123,173,.16)}.hub-btn:active{transform:translateY(1px)}.hub-btn:focus-visible,.hub-salir:focus-visible{outline:3px solid rgba(0,123,173,.45);outline-offset:2px}.hub-btn .hub-nombre{font-size:20px;font-weight:700;letter-spacing:-.01em}.hub-titulo{margin:0 0 20px;text-align:center;font-size:15px;font-weight:500;line-height:1.4;color:#5b6472}.hub-lista{display:grid;gap:12px}.hub-lista form{margin:0}.hub-error{margin:18px 0 0;text-align:center;font-size:14px;color:#c0392b}.hub-pie{margin-top:28px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;color:#7a8190}.hub-pie form{margin:0}.hub-salir{background:none;border:none;padding:4px 2px;font:600 13px/1 var(--font-body,system-ui);color:var(--hub-azul);cursor:pointer}.hub-salir:hover{text-decoration:underline}@media (max-width:520px){.hub-card{padding:38px 24px 30px;border-radius:26px}.hub-logo{margin-bottom:30px}}@media (prefers-reduced-motion:reduce){.hub-btn{transition:none}}