:root{
  --xm-auth-bg:#050608;
  --xm-auth-surface:#0e1116;
  --xm-auth-border:rgba(255,255,255,.085);
  --xm-auth-text:#f5f7fa;
  --xm-auth-muted:#717b88;
  --xm-auth-accent:#d7bc6c;
  --xm-auth-green:#3ddc97;
}
body{
  min-height:100dvh!important;
  overflow:auto!important;
  background:
    radial-gradient(900px 650px at 15% 15%,rgba(215,188,108,.055),transparent 60%),
    radial-gradient(850px 600px at 90% 85%,rgba(124,167,255,.045),transparent 58%),
    var(--xm-auth-bg)!important;
  color:var(--xm-auth-text)!important;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,"Segoe UI",sans-serif!important;
  -webkit-font-smoothing:antialiased;
}
.xm-grid,.xm-orbit,.xm-glow,.xm-scan{display:none!important}
.xm-auth{min-height:100dvh!important;padding:32px!important;isolation:auto!important}
.xm-auth-shell{width:min(1120px,100%)!important;grid-template-columns:minmax(0,1fr) 420px!important;gap:72px!important}
.xm-auth-copy{padding:24px 0!important}
.xm-mini-brand{margin-bottom:70px!important;gap:11px!important}
.xm-logo-mark{
  width:40px!important;height:40px!important;flex-basis:40px!important;border-radius:12px!important;
  background:linear-gradient(145deg,#f4e7bd,#c7a84f)!important;color:#0a0b0d!important;font-size:17px!important;font-weight:780!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 8px 24px rgba(0,0,0,.24)!important;
}
.xm-brand-name strong{font-size:14px!important;letter-spacing:.14em!important;font-weight:720!important}
.xm-brand-name small{margin-top:4px!important;color:#606a76!important;font-size:8px!important;letter-spacing:.08em!important}
.xm-kicker{padding:6px 9px!important;border:1px solid var(--xm-auth-border)!important;background:rgba(255,255,255,.025)!important;color:#818b98!important;font-size:8px!important;letter-spacing:.09em!important}
.xm-kicker-dot,.xm-security-dot{width:5px!important;height:5px!important;background:var(--xm-auth-green)!important;box-shadow:0 0 0 3px rgba(61,220,151,.08)!important}
.xm-auth-copy h1{max-width:620px!important;margin-top:20px!important;font-size:clamp(42px,5.4vw,68px)!important;line-height:.96!important;letter-spacing:-.06em!important;font-weight:650!important}
.xm-auth-copy h1 span{color:#f3f5f7!important}
.xm-auth-copy>p{max-width:520px!important;margin-top:21px!important;color:#707a87!important;font-size:13px!important;line-height:1.7!important}
.xm-data-strip{gap:8px!important;margin-top:32px!important}
.xm-data-chip{min-width:120px!important;padding:11px 12px!important;border:1px solid var(--xm-auth-border)!important;border-radius:13px!important;background:rgba(255,255,255,.018)!important}
.xm-data-chip small{color:#4f5864!important;font-size:7px!important;letter-spacing:.08em!important}.xm-data-chip strong{font-size:10px!important;color:#aeb6c1!important}
.xm-login-card,.xm-register-card{
  border:1px solid rgba(255,255,255,.095)!important;border-radius:28px!important;
  background:linear-gradient(145deg,rgba(19,23,29,.96),rgba(10,12,16,.96))!important;
  box-shadow:0 28px 90px rgba(0,0,0,.42)!important;backdrop-filter:blur(24px)!important;
}
.xm-card-top{border-bottom:1px solid rgba(255,255,255,.055)!important}.xm-card-label{color:#7c8693!important;letter-spacing:.08em!important}.xm-security{color:#67717e!important}
.xm-card-brand .xm-logo-mark{box-shadow:none!important}.xm-subtitle{color:#65707d!important}
.xm-field label{color:#747e8b!important;font-size:9px!important}.xm-input-wrap{border:1px solid var(--xm-auth-border)!important;border-radius:13px!important;background:#080a0d!important;box-shadow:none!important}.xm-input-wrap:focus-within{border-color:rgba(215,188,108,.28)!important;box-shadow:0 0 0 3px rgba(215,188,108,.045)!important}.xm-input-wrap input{color:#e5e9ee!important}.xm-input-wrap input::placeholder{color:#424a55!important}.xm-field-icon,.xm-password-toggle{color:#5b6571!important}
.xm-form-row{color:#68727f!important}.xm-form-row a,.xm-create a,.xm-login-link a{color:#d9c887!important}
.xm-submit{border-radius:13px!important;background:#eef1f3!important;color:#080a0d!important;border:1px solid #eef1f3!important;box-shadow:none!important;font-weight:680!important}.xm-submit:hover{transform:translateY(-1px)!important;box-shadow:0 10px 28px rgba(0,0,0,.25)!important}
.xm-create,.xm-login-link{color:#68727f!important}.xm-trust{border-top-color:rgba(255,255,255,.055)!important}.xm-trust-item{color:#5c6571!important}.xm-footer-status{color:#4d5661!important}
.xm-steps{margin-top:28px!important}.xm-step{color:#555f6b!important;font-size:8px!important;letter-spacing:.06em!important}.xm-step.active{color:#cbd2da!important}.xm-step-bullet{border:1px solid var(--xm-auth-border)!important;background:rgba(255,255,255,.025)!important;color:#697380!important}.xm-step.active .xm-step-bullet{border-color:#eef1f3!important;background:#eef1f3!important;color:#090b0d!important}.xm-step-line{background:rgba(255,255,255,.07)!important}
.xm-referral{border-color:var(--xm-auth-border)!important;background:rgba(255,255,255,.02)!important;border-radius:12px!important}.xm-referral-code{color:#d8c682!important}.xm-consent{color:#66717d!important}
@media(max-width:900px){
  .xm-auth{padding:28px 18px!important}.xm-auth-shell{grid-template-columns:1fr!important;max-width:520px!important;gap:24px!important}.xm-auth-copy{text-align:center;padding:8px 0 4px!important}.xm-mini-brand{justify-content:center;margin-bottom:28px!important}.xm-auth-copy h1{font-size:42px!important}.xm-auth-copy>p{margin-left:auto!important;margin-right:auto!important}.xm-data-strip,.xm-steps{justify-content:center}.xm-login-card,.xm-register-card{width:100%!important}
}
@media(max-width:560px){
  .xm-auth{padding:14px 10px 22px!important;align-items:flex-start!important}.xm-auth-shell{gap:18px!important}.xm-auth-copy{padding-top:18px!important}.xm-mini-brand{margin-bottom:22px!important}.xm-auth-copy h1{font-size:34px!important}.xm-auth-copy>p{font-size:11px!important;margin-top:14px!important}.xm-data-strip{display:none!important}.xm-steps{display:none!important}.xm-login-card,.xm-register-card{border-radius:22px!important}.xm-card-top{padding-left:18px!important;padding-right:18px!important}.xm-form{padding-left:18px!important;padding-right:18px!important}.xm-trust{padding-left:18px!important;padding-right:18px!important}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* 2026-10-07: Mobile auth hardening
   Keeps login/register truly full-width on phones and neutralises Safari autofill styling. */
html,body{
  width:100%;
  max-width:100%;
}

.xm-input-wrap input:-webkit-autofill,
.xm-input-wrap input:-webkit-autofill:hover,
.xm-input-wrap input:-webkit-autofill:focus,
.xm-input-wrap input:-webkit-autofill:active{
  -webkit-text-fill-color:#e8edf2!important;
  caret-color:#e8edf2!important;
  -webkit-box-shadow:0 0 0 1000px #080a0d inset!important;
  box-shadow:0 0 0 1000px #080a0d inset!important;
  transition:background-color 9999s ease-out 0s!important;
  border-radius:12px!important;
}

@media(max-width:900px){
  html,body{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  .xm-auth{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:100svh!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    padding:max(18px,env(safe-area-inset-top)) 16px max(26px,env(safe-area-inset-bottom))!important;
  }

  .xm-auth-shell{
    display:block!important;
    width:100%!important;
    max-width:460px!important;
    min-width:0!important;
    margin:0 auto!important;
  }

  .xm-auth-copy{
    display:none!important;
  }

  .xm-login-card,
  .xm-register-card{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:28px 24px!important;
    border-radius:24px!important;
  }

  .xm-card-top,
  .xm-card-brand,
  .xm-form,
  .xm-trust{
    width:100%!important;
    min-width:0!important;
  }

  .xm-input-wrap,
  .xm-input-wrap input,
  .xm-submit{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .xm-footer-status{
    width:100%!important;
    padding:0 16px!important;
    white-space:normal!important;
    text-align:center!important;
  }
}

@media(max-width:560px){
  .xm-auth{
    padding:max(12px,env(safe-area-inset-top)) 12px max(22px,env(safe-area-inset-bottom))!important;
  }

  .xm-login-card,
  .xm-register-card{
    padding:24px 20px!important;
    border-radius:20px!important;
  }

  .xm-card-top,
  .xm-form,
  .xm-trust{
    padding-left:0!important;
    padding-right:0!important;
  }

  .xm-login-card h2{
    font-size:28px!important;
  }

  .xm-login-card .xm-subtitle{
    max-width:30ch!important;
  }

  .xm-input-wrap input{
    min-height:52px!important;
    font-size:16px!important; /* Prevents iOS zoom-on-focus */
  }

  .xm-submit{
    min-height:52px!important;
  }

  .xm-trust{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }

  .xm-trust-item{
    font-size:7px!important;
  }

  .xm-trust-item strong{
    font-size:9px!important;
  }
}

@media(max-width:360px){
  .xm-auth{padding-left:10px!important;padding-right:10px!important}
  .xm-login-card,.xm-register-card{padding:22px 17px!important}
  .xm-card-brand{margin-bottom:24px!important}
}

