:root{
  color-scheme:dark;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --bg:#0b0d12;--surface:#11151c;--subtle:#0f1319;--raised:#151a22;
  --border:#242a34;--border-strong:#303945;--text:#f3f5f7;--secondary:#b0b7c3;
  --muted:#798290;--accent:#57d7c2;--positive:#69d9a7;--warning:#e8bd68;--negative:#f07178;
  background:var(--bg);color:var(--text)
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}
body{min-height:100vh}
button,input{font:inherit}
a{color:inherit}

.login-shell{
  min-height:100vh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(470px,.92fr);
  background:
    radial-gradient(circle at 18% 20%,rgba(87,215,194,.07),transparent 34%),
    radial-gradient(circle at 58% 78%,rgba(124,107,255,.035),transparent 32%),
    var(--bg)
}
.login-story{
  min-height:100vh;display:flex;flex-direction:column;padding:34px 54px 30px;border-right:1px solid var(--border)
}
.login-brand{display:inline-flex;align-items:center;gap:11px;width:max-content;text-decoration:none}
.login-mark{
  width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:var(--accent);
  color:#07110f;font-size:12px;font-weight:800
}
.login-brand>span:last-child{display:grid;gap:2px}
.login-brand b{font-size:13px;font-weight:650}
.login-brand small{font-size:7px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.eyebrow{font-size:7.5px;font-weight:750;letter-spacing:.10em;text-transform:uppercase;color:var(--muted)}

.login-copy{max-width:660px;margin:auto 0}
.login-copy h1{
  max-width:650px;margin:8px 0 16px;font-size:clamp(42px,4.2vw,64px);line-height:1.01;
  letter-spacing:-.045em;font-weight:650
}
.login-copy>p{max-width:600px;margin:0;color:#8a95a2;font-size:14px;line-height:1.65}
.login-proof{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:30px
}
.login-proof article{
  min-width:0;padding:14px;border:1px solid var(--border);border-radius:10px;background:rgba(15,19,25,.78)
}
.login-proof b,.login-proof span{display:block}
.login-proof b{font-size:9.5px;font-weight:650;color:#d8dde3}
.login-proof span{margin-top:6px;font-size:7.7px;line-height:1.5;color:#697481}
.riot-disclaimer{
  max-width:720px;margin:30px 0 0;color:#535e6a;font-size:6.8px;line-height:1.55
}

.login-panel-wrap{min-height:100vh;display:grid;place-items:center;padding:42px}
.login-card{
  width:min(470px,100%);padding:28px;border:1px solid var(--border-strong);border-radius:15px;
  background:rgba(17,21,28,.96);box-shadow:0 28px 90px rgba(0,0,0,.38)
}
.login-card-head h2{margin:6px 0 8px;font-size:26px;line-height:1.15;letter-spacing:-.025em;font-weight:650}
.login-card-head p{margin:0;color:#7f8a97;font-size:10.5px;line-height:1.55}

.oauth-button{
  width:100%;min-height:45px;display:flex;align-items:center;justify-content:center;gap:9px;margin-top:21px;
  border:1px solid #343e4a;border-radius:9px;background:#f4f5f7;color:#11151c;font-size:10.5px;font-weight:700;cursor:pointer
}
.oauth-button:hover{background:#fff}
.oauth-button:disabled,.email-row button:disabled{opacity:.55;cursor:wait}
.google-mark{
  width:20px;height:20px;display:grid;place-items:center;border:1px solid #d7dbe0;border-radius:50%;
  background:#fff;color:#4285f4;font-size:10px;font-weight:800
}
.auth-divider{display:flex;align-items:center;gap:10px;margin:15px 0;color:#5f6a77;font-size:7px}
.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#252d37}
.auth-divider span{padding:0 3px;text-transform:uppercase;letter-spacing:.08em}

.email-form{display:grid;gap:7px}
.email-form>label{font-size:9px;font-weight:650;color:#87919d}
.email-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.email-row input{
  min-width:0;min-height:43px;padding:10px 11px;border:1px solid #303945;border-radius:8px;
  background:#0d1218;color:#edf1f4;outline:0
}
.email-row input:focus{border-color:rgba(87,215,194,.52);box-shadow:0 0 0 3px rgba(87,215,194,.06)}
.email-row input::placeholder{color:#596573}
.email-row button{
  min-height:43px;padding:0 12px;border:1px solid rgba(87,215,194,.34);border-radius:8px;
  background:rgba(87,215,194,.12);color:#a9eee3;font-size:9.5px;font-weight:700;cursor:pointer
}
.email-row button:hover{background:rgba(87,215,194,.18)}
.email-form>small{color:#626d79;font-size:9px;line-height:1.45}

.riot-link-note{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-top:18px;padding:12px;
  border:1px solid #29323d;border-radius:9px;background:#0e1319
}
.riot-link-icon{
  width:27px;height:27px;display:grid;place-items:center;border:1px solid #39434f;border-radius:7px;
  color:#9aa4af;font-size:9px;font-weight:800
}
.riot-link-note b,.riot-link-note span{display:block}
.riot-link-note b{font-size:9.5px;font-weight:650;color:#c8cfd7}
.riot-link-note span{margin-top:4px;color:#697481;font-size:8px;line-height:1.5}
.login-status{
  min-height:18px;margin-top:14px;color:#75818e;font-size:8px;line-height:1.45
}
.login-status.success{color:var(--positive)}
.login-status.error{color:var(--negative)}
.login-status.setup{color:var(--warning)}
.login-card-footer{margin-top:15px;padding-top:13px;border-top:1px solid var(--border)}
.login-card-footer span{color:#5e6976;font-size:7px;line-height:1.5}
.login-card-footer a{color:#8a95a2;text-underline-offset:2px}

@media(max-width:980px){
  .login-shell{grid-template-columns:1fr}
  .login-story{min-height:auto;padding:28px 24px 24px;border-right:0;border-bottom:1px solid var(--border)}
  .login-copy{margin:80px 0 18px}
  .login-copy h1{font-size:clamp(36px,8vw,58px)}
  .login-panel-wrap{min-height:auto;padding:26px 18px 46px}
  .riot-disclaimer{margin-top:24px}
}
@media(max-width:620px){
  .login-story{padding:20px 16px 18px}
  .login-copy{margin:48px 0 12px}
  .login-copy h1{font-size:38px}
  .login-copy>p{font-size:11px}
  .login-proof{grid-template-columns:1fr;margin-top:22px}
  .login-panel-wrap{padding:18px 12px 36px}
  .login-card{padding:18px;border-radius:12px}
  .email-row{grid-template-columns:1fr}
  .email-row button{width:100%}
}
