[hidden]{display:none!important}
.password-field{position:relative}
.login-card .password-field input{padding-right:51px;width:100%;box-sizing:border-box}
.login-card .password-toggle{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:40px;height:36px;display:flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:#697586;cursor:pointer;padding:0;margin:0}
.password-toggle:hover{background:#eef1f5;color:#a9121b}
.password-toggle:focus-visible{outline:2px solid #a9121b;outline-offset:1px}
.password-toggle .eye-slash{display:none}
.password-toggle[aria-pressed="true"] .eye-slash{display:block}
.login-transition{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;box-sizing:border-box;background:radial-gradient(ellipse at 18% 16%,#a9273540,transparent 50%),radial-gradient(ellipse at 83% 85%,#44678235,transparent 50%),linear-gradient(145deg,#151f2e,#243447 65%,#1a2636);color:#f4f6f9;overflow:auto}
.connection-card{position:relative;width:min(100%,540px);box-sizing:border-box;padding:46px 38px 28px;text-align:center;background:linear-gradient(140deg,#ffffff10,#ffffff05);border:1px solid #ffffff24;border-radius:24px;box-shadow:0 24px 80px #0003}
.connection-kicker,.connection-footer{display:block;font-size:10px;letter-spacing:2px;font-weight:700;color:#d9e0e9}
.connection-animation{position:relative;width:132px;height:132px;margin:37px auto 31px;display:grid;place-items:center}
.connection-core{display:grid;place-items:center;width:68px;height:68px;border:1px solid #ffffff30;border-radius:21px;color:#fff;background:linear-gradient(135deg,#bc2636,#7c1828);box-shadow:0 0 45px #d43b4730}
.connection-orbit{position:absolute;inset:4px;border-radius:50%;border:1px solid #ffffff15;border-top-color:#e9898e;border-right-color:#ffffff50;animation:portal-orbit 2.8s linear infinite}
.connection-orbit.second{inset:17px;border-top-color:#fff9;border-right-color:transparent;animation-direction:reverse;animation-duration:4s}
.connection-orbit:after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:#f5bac0;top:14px;right:13px;box-shadow:0 0 12px #ef7886}
.connection-card h2{font-size:25px;line-height:1.3;font-weight:600;margin:0 0 14px;color:#fff}
.connection-card p{font-size:14px;line-height:1.8;color:#c1cbd8;margin:0 auto;max-width:380px}
.connection-footer{margin-top:38px;font-size:9px;color:#8f9fb2;letter-spacing:1.8px}
.transition-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:25px}
.transition-actions button{min-height:43px;padding:11px 18px;cursor:pointer;font-size:12px}
.transition-actions .secondary-action{background:transparent;color:#dbe3ed;border-color:#ffffff35}
.login-transition.is-paused .connection-orbit{animation-play-state:paused}
body.login-busy{overflow:hidden}
@keyframes portal-orbit{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.connection-orbit{animation:none}}
@media(max-width:520px){.connection-card{padding:33px 21px 24px}.connection-card h2{font-size:22px}.connection-kicker{font-size:9px;letter-spacing:1.2px}}
.guest-entry{background:#096473!important;color:#fff!important;border:2px solid #0a7180!important;font-size:23px!important;font-weight:750!important;padding:20px 26px!important;min-height:66px;box-shadow:0 8px 25px #03435226}.guest-entry:hover{background:#074d59!important}.guest-entry b{color:#fff!important}
