/* Member sign-in appears only over a requested account feature. */
.h5-splash{position:fixed;inset:0;z-index:300;display:flex;flex-direction:column;align-items:center;justify-content:space-between;overflow:hidden;padding:clamp(22px,6vh,56px) 24px max(18px,env(safe-area-inset-bottom));background:linear-gradient(180deg,#fff 0%,#fff 42%,#f6fbff 64%,#e9f5ff 100%);color:#10213c;transition:opacity .22s ease,visibility .22s ease}
.h5-splash[hidden]{display:none}
.h5-splash.is-leaving{opacity:0;visibility:hidden;pointer-events:none}
.splash-slogan{align-self:flex-end;z-index:2;color:#167cf3;font-size:clamp(18px,4.8vw,25px);font-style:italic;font-weight:650;line-height:1.35;text-align:right;letter-spacing:.08em}
.splash-slogan:after{display:block;width:74%;height:2px;margin:8px 0 0 auto;border-radius:2px;background:#167cf3;content:"";transform:rotate(-8deg)}
.splash-center{position:relative;z-index:2;width:min(100%,520px);margin:auto 0 14vh;text-align:center}
.splash-logo{width:96px;height:96px;border-radius:27px;background:#fff;object-fit:contain;box-shadow:0 9px 28px rgba(35,126,220,.16)}
.splash-center h1{margin:18px 0 4px;color:#10213c;font-size:clamp(25px,6.7vw,34px);font-weight:800;letter-spacing:.04em}
.splash-center>p{margin:0;color:#7085a2;font-size:clamp(14px,3.7vw,18px);letter-spacing:.12em}
.splash-features{display:flex;align-items:center;justify-content:space-between;margin-top:28px}
.splash-features>div{display:flex;min-width:0;flex:1;flex-direction:column;align-items:center;gap:4px}
.splash-features span{display:flex;width:54px;height:54px;align-items:center;justify-content:center;border-radius:50%;background:#e6f2ff;color:#167cf3;font-size:24px;font-weight:750}
.splash-features b{color:#18365f;font-size:15px}
.splash-features small{color:#8597af;font-size:12px}
.splash-features>i{width:1px;height:45px;background:#c6ddf8}
.splash-scene{position:absolute;right:0;bottom:112px;left:0;height:24vh;min-height:150px;max-height:245px;overflow:hidden;background:linear-gradient(180deg,rgba(230,244,255,0),rgba(208,232,252,.8));opacity:.82;pointer-events:none}
.splash-scene>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 72%}
.splash-scene:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(239,248,255,.65),rgba(239,248,255,0) 38%,rgba(255,255,255,.18));content:""}
.splash-tower{position:absolute;bottom:0;width:22px;height:62%;border:2px solid #87b5dc;border-radius:10px 10px 0 0;background:linear-gradient(90deg,#eef8ff,#a9cce8,#f8fcff)}
.splash-tower:before,.splash-tower:after{position:absolute;right:-9px;left:-9px;height:5px;border:1px solid #7da9d0;border-radius:5px;background:#d7eafb;content:""}
.splash-tower:before{top:24%}.splash-tower:after{top:58%}
.tower-one{left:10%;height:72%}.tower-two{left:22%;height:53%;width:18px}
.splash-pipe{position:absolute;right:-6%;height:67px;border:13px solid #bed7ed;border-left:0;border-bottom:0;border-radius:0 80px 0 0;transform:skewY(-12deg)}
.pipe-one{bottom:32%;width:66%}.pipe-two{bottom:8%;width:81%;height:52px;border-width:11px;opacity:.72}
.splash-roll{position:absolute;bottom:-20px;width:110px;height:62px;border:2px solid #d4c7a9;border-radius:50% 50% 12px 12px;background:linear-gradient(180deg,#faf3df,#e4d4b1);box-shadow:0 7px 15px rgba(77,102,130,.12)}
.splash-roll:after{position:absolute;top:14px;left:42%;width:24px;height:24px;border:5px solid #c7b692;border-radius:50%;background:#f8f3e8;content:""}
.roll-one{right:8%;height:82px;width:130px}.roll-two{right:30%;height:58px;width:110px}.roll-three{right:20%;height:45px;width:168px;border-color:#9eb4c7;background:linear-gradient(180deg,#eaf4fc,#b9cede)}
.splash-loading{position:relative;z-index:3;width:min(100%,300px);margin-top:auto;text-align:center}
.splash-progress{height:12px;overflow:hidden;border-radius:999px;background:#d6e4f5}
.splash-progress span{display:block;width:18%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1885ff,#42a4ff);animation:splash-progress 720ms cubic-bezier(.2,.75,.25,1) forwards}
.splash-loading p{margin:10px 0 20px;color:#7185a1;font-size:14px;letter-spacing:.08em}
.splash-loading small{color:#9aacbf;font-size:12px;letter-spacing:.45em}
@keyframes splash-progress{to{width:100%}}
@media(prefers-reduced-motion:reduce){.h5-splash,.splash-progress span{transition:none;animation-duration:.01ms}}
#auth-gate{background:rgba(20,35,51,.48);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
#auth-gate[hidden]{display:none}
.auth-card{position:relative;max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
.brand-logo{display:block;object-fit:contain;background:transparent;padding:0}
.auth-field input:focus{border-color:#2563b8;box-shadow:0 0 0 3px #2563b81a;outline:none}
.auth-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:0;border-radius:50%;background:#f1f4f7;color:#5e6e7e;font-size:25px;line-height:1;cursor:pointer}
.auth-close:hover{background:#e5ebf0;color:#26384a}
.auth-close:focus-visible,.auth-submit:focus-visible,.auth-switch:focus-visible{outline:3px solid #8db5e6;outline-offset:2px}
@media(max-width:600px){#auth-gate{padding:16px}.auth-card{width:min(100%,440px);max-height:calc(100dvh - 32px)}}
