/* IFM account entry: shared game palette, compact controls and mobile-first spacing. */
:root{--ink:#edf9fc;--muted:#a1bbc6;--panel:#071b26ee;--panel-solid:#071b26;--line:#284958;--brand:#47dcf0;--brand-dark:#08748c;--danger:#ff8898;--focus:#66e9f7;--shadow:0 24px 80px #0008;background:#041019}
body{background:linear-gradient(90deg,#04121ae8,#04121a90 52%,#04121ae6),url('/game/assets/training/stadium-night-v1.png') center/cover fixed;font-size:15px}
body:before{background:radial-gradient(ellipse at 15% 20%,#0b97ac20,transparent 65%)}
.auth-shell{width:min(1180px,calc(100% - 64px));min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,440px);gap:clamp(32px,7vw,100px);align-items:center;padding:32px 0;margin:auto}
.auth-intro{min-height:500px;padding:12px 0;display:flex;flex-direction:column;justify-content:space-between;gap:32px}.auth-intro h1{font-size:clamp(40px,4.6vw,66px);line-height:1.04;max-width:14ch;margin:18px 0 24px;letter-spacing:-.045em}.auth-intro>div>p:last-child{font-size:18px;max-width:31ch;color:#b8cdd5}.auth-trust{font-size:10px;letter-spacing:.2em;color:#81a8b5;margin:0}
.auth-brand span{font-size:25px;font-style:italic;border:0;border-radius:0;background:none;box-shadow:none;color:var(--brand);width:auto;margin-right:4px}.auth-brand strong{font-size:10px;max-width:155px;line-height:1.3;letter-spacing:.12em}
.auth-panel{background:linear-gradient(155deg,#102d3aeb,#06141ff5);border:1px solid #376071;border-radius:20px;padding:28px;box-shadow:var(--shadow);backdrop-filter:blur(18px)}.auth-tabs{background:#03131d;border-color:#284553;margin-bottom:22px;border-radius:10px}.auth-tabs button{min-height:40px}.auth-tabs button[aria-selected=true]{background:#173e4d;color:#70edff;box-shadow:inset 0 -2px #49dff1}.auth-panel h2{font-size:25px;letter-spacing:-.025em;margin:0 0 10px}.eyebrow{font-size:10px;letter-spacing:.18em}.auth-panel form{gap:12px}
input,textarea,select{font:inherit;width:100%;min-height:44px;border:1px solid #355464;border-radius:8px;background:#051722;color:var(--ink);padding:10px 12px;outline:0}label{font-size:12px;letter-spacing:0;color:#c1d5df}.check input{width:18px;min-height:18px}select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.primary{min-height:46px;background:linear-gradient(110deg,#38d7e9,#269beb);color:#031923;border-radius:8px;font-size:13px}.text-button{font-size:12px;color:#9ac5d4;padding:2px 0}.text-button:hover{color:#60e7f4}.field-help{font-size:12px;line-height:1.5;margin:8px 0}.auth-message{font-size:13px;min-height:0;margin-top:14px}.auth-message:empty{margin:0}.support-link{font-size:12px;margin:16px 0 0}
#wallet-login-options{border-top:1px solid #294653;padding-top:14px;margin:2px 0 6px}#wallet-login-options summary{list-style:none;cursor:pointer;border:1px solid #386576;border-radius:8px;padding:11px 14px;text-align:center;color:#d7eff5;font-size:13px;font-weight:650;background:#10303d}#wallet-login-options summary::-webkit-details-marker{display:none}#wallet-login-options summary:after{content:' +';color:#51deed}#wallet-login-options[open] summary:after{content:' −'}#wallet-login-options label{margin:10px 0}#wallet-login-button{width:100%;min-height:44px;border:1px solid #45cfe1;border-radius:8px;background:#134352;color:#b8f8ff;font:inherit;font-size:13px;font-weight:750;margin-top:4px}#wallet-login-status{font-size:12px;color:#b1d4de;margin:8px 0 0}button:disabled{opacity:.55;cursor:wait}
@media(max-width:779px){.auth-shell{width:100%;padding:22px 18px;grid-template-columns:1fr;gap:22px;align-items:start}.auth-intro{min-height:0;gap:20px;padding:0}.auth-intro h1{font-size:32px;margin:10px 0}.auth-intro>div>p:last-child{font-size:14px;max-width:none;margin:0}.auth-trust{display:none}.auth-panel{padding:22px;border-radius:15px}.auth-panel h2{font-size:23px}}
@media(orientation:landscape) and (max-height:540px) and (min-width:600px){.auth-shell{width:100%;padding:18px 24px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px;align-items:start}.auth-intro{min-height:0;gap:28px;padding:8px 0}.auth-intro h1{font-size:34px}.auth-intro>div>p:last-child{font-size:14px}.auth-trust{display:none}.auth-panel{padding:18px}.auth-tabs{margin-bottom:16px}.auth-panel h2{font-size:22px}}

[data-email-login-fields]{display:grid;gap:12px}[data-email-login-fields][hidden]{display:none}
#facebook-login-button{min-height:44px;border:1px solid #527cb4;border-radius:8px;background:#183a62;color:#fff;font:inherit;cursor:pointer}
@media(max-width:779px){.auth-intro>div{display:none}.auth-shell{gap:14px;padding:16px}.auth-panel{padding:20px}.auth-intro{gap:0}}
@media(min-width:780px) and (max-height:820px){.auth-shell{padding:16px 0}.auth-panel{padding:20px}.auth-panel form{gap:8px}.auth-tabs{margin-bottom:14px}.support-link{margin-top:10px}.auth-intro{min-height:420px}}

/* Anchor branding to the top even when account forms are tall. */
@media(min-width:780px){.auth-shell{align-items:start;padding-top:32px}.auth-intro{align-self:start;min-height:0;justify-content:flex-start;gap:36px;padding-top:20px}.auth-intro h1{font-size:clamp(36px,4.5vw,62px)}.auth-trust{margin-top:0}}@media(min-width:780px) and (max-height:820px){.auth-shell{padding-top:18px}.auth-intro{min-height:0;padding-top:12px;gap:24px}}
