/* Sign-in screen and sign-out link, in the portal's own look. */
body.gated .brandbar,body.gated .wrap{display:none}
.gate{min-height:100vh;display:grid;place-items:center;padding:24px 16px}
/* Sign-in: full-screen spindle photo under navy, like the website's hero. */
.gate{--ink:#ffffff;--muted:#b9c5da;--field:rgba(255,255,255,.08);--line:rgba(255,255,255,.28);color:var(--ink);background:linear-gradient(rgba(15,26,51,.62),rgba(15,26,51,.8)),url(../assets/bg-signin.jpg) 50% 55%/cover}
.gatebox{background:rgba(15,26,51,.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);padding:28px 24px;clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,0 100%)}
.gate input{color-scheme:dark}
.gatebox{width:100%;max-width:380px;display:grid;gap:14px}
.gatelogo{width:220px;height:auto;margin-bottom:6px}
.gate h1{font-family:var(--display);font-size:24px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin:0}
.gate form{display:grid;gap:12px}
.gate form[hidden]{display:none}
.gate .btn{width:100%;justify-content:center}
.linkbtn{background:none;border:0;padding:4px 0;color:var(--blue);font:inherit;font-weight:600;cursor:pointer;justify-self:start}
.linkbtn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.gate .msg{margin:0;min-height:1.4em}
.foot .who{display:inline-flex;gap:10px;align-items:baseline;text-transform:none;letter-spacing:.02em}
.foot .who span:empty{display:none}
.foot .so{margin-left:0}
@media(max-width:640px){.foot .who{flex-wrap:wrap}}
.gate .linkbtn{color:#8fbaff}
@media(max-width:600px){.gate{background-position:80% 55%}}
