/* Krodity revamp — login page. Loaded after login.html's inline styles, so it overrides them. */
body.k-login{display:block!important;min-height:100vh;min-height:100svh;overflow-x:clip}
.k-login .resume-btn{padding:10px 16px!important;font-size:.88rem!important;border-radius:999px!important;margin:0!important;color:var(--ink)!important;background:var(--glass)!important;border:1px solid var(--line-2)!important;width:auto!important}
.k-login .resume-btn svg{width:15px;height:15px}

.k-auth{min-height:100vh;min-height:100svh;display:grid;align-content:center;gap:40px;max-width:1240px;margin:0 auto;padding:100px 16px 60px}
.k-pitch{max-width:640px}
.k-login .site-title{font-family:var(--display)!important;font-size:clamp(2.6rem,9vw,5.4rem)!important;color:var(--ink)!important;margin:22px 0 20px!important;font-weight:700;letter-spacing:-.035em;line-height:1.02;perspective:600px}
.k-login .site-title:hover{color:var(--ink)!important}
.k-lede{color:var(--muted);font-size:clamp(1.02rem,2.6vw,1.18rem);max-width:46ch;text-shadow:0 1px 14px var(--bg)}
.k-feats{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-top:28px;padding:0}
.k-feats li{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border-radius:999px;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:.88rem;font-weight:600;color:var(--ink)}
.k-feats .ic{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:var(--c);background:color-mix(in srgb,var(--c) 16%,transparent);box-shadow:inset 0 0 12px color-mix(in srgb,var(--c) 30%,transparent)}
.k-feats svg{width:17px;height:17px}

/* card */
.k-login .login-card{width:100%!important;max-width:460px!important;padding:36px 30px 28px!important;background:var(--glass-2)!important;border:1px solid var(--line)!important;border-radius:28px!important;overflow:hidden;justify-self:center}
.k-login .login-card>div{position:relative;z-index:1}
.k-login .login-card .orb{position:absolute;width:300px;height:300px;border-radius:50%;filter:blur(70px);opacity:.4;pointer-events:none;z-index:0}
.k-login .login-card .orb.a{background:var(--violet);top:-170px;left:-90px;animation:k-orb 9s ease-in-out infinite}
.k-login .login-card .orb.b{background:var(--magenta);bottom:-190px;right:-110px;opacity:.28;animation:k-orb 11s ease-in-out infinite reverse}
@keyframes k-orb{50%{transform:translate(40px,30px) scale(1.15)}}
.card-h{font-size:clamp(1.9rem,6vw,2.4rem);margin:12px 0 6px}
.k-login .subtitle{text-align:left!important;color:var(--muted)!important;font-size:.92rem!important;margin-bottom:24px!important}
.k-login .form-group{margin-bottom:16px!important}
.k-login .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.k-login .form-group label{font-family:var(--mono);font-size:.68rem!important;letter-spacing:.16em!important;color:var(--muted)!important;margin-bottom:8px!important}
.k-login .form-group input{padding:14px 16px!important;font-size:16px!important;border-radius:14px!important;background:rgba(255,255,255,.05)!important;border:1px solid var(--line-2)!important;color:var(--ink)!important;transition:border-color .2s,box-shadow .25s,background .2s!important}
.k-login .form-group input:focus{border-color:var(--violet-2)!important;background:rgba(168,85,247,.08)!important;box-shadow:0 0 0 4px rgba(168,85,247,.18),0 0 30px rgba(168,85,247,.25)!important}
.k-login .form-group input::placeholder{color:var(--dim)!important}
.k-login .login-btn{width:100%!important;margin-top:10px!important;padding:15px!important;border:0!important;border-radius:14px!important;color:#1b0b02!important;font-size:1rem!important;overflow:hidden}
.k-login .login-btn::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s var(--ease)}
.k-login .login-btn:hover::after{transform:translateX(120%)}
.k-login .switch-mode-btn{margin-top:18px!important;width:100%;background:transparent!important;border:1px dashed var(--line-2)!important;border-radius:14px!important;color:var(--muted)!important;padding:12px!important;font-size:.88rem!important}
.k-login .switch-mode-btn b{color:var(--gold);font-weight:700}
.k-login .switch-mode-btn:hover{border-style:solid!important;border-color:var(--violet)!important;color:var(--ink)!important}
.k-login .error-msg,.k-login .success-msg{border-radius:12px!important;font-size:.88rem!important}
.k-login .shake{animation:k-shake .5s var(--ease)!important}
@keyframes k-shake{20%,60%{transform:translateX(-8px)}40%,80%{transform:translateX(8px)}}

/* floating games button */
.k-login .games-btn{width:52px!important;height:52px!important;border-radius:16px!important;background:linear-gradient(135deg,var(--violet),var(--magenta))!important;border:0!important;box-shadow:0 10px 30px var(--glow-v)!important}
.k-login .games-btn svg{fill:#fff!important}

@media (min-width:980px){
  .k-auth{grid-template-columns:1.15fr .85fr;align-items:center;gap:60px}
  .k-login .login-card{justify-self:end}
}
@media (max-width:460px){.k-login .form-row{grid-template-columns:1fr;gap:0}.k-logo small{display:none}}
