.btn{font-family:var(--font-display);transition:transform .15s ease-out,filter .15s ease-out,background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out}
.btn:active{transform:translateY(2px) scale(.97);transition-duration:.075s}
.btn-fill:hover{filter:brightness(1.1)}
.btn-line{border-color:var(--line-2);color:var(--text)}
.btn-line:hover{border-color:rgba(238,241,246,.5);background:var(--bg-elev);color:var(--text)}

.field-group{border:1px solid var(--line-2);background:var(--bg-elev);box-shadow:none}
.field-group:focus-within{border-color:var(--accent);box-shadow:none}
.field + .field{border-top-color:var(--line)}
.field input{height:58px;font:400 15px var(--font-sans)}
.field input::placeholder{color:var(--dim);font-weight:400}
.go-btn,.eye-btn{border-radius:0}
.go-btn{width:38px;height:38px;border:1px solid var(--line-2)}
.go-btn:hover{border-color:rgba(238,241,246,.5);color:var(--text)}
.go-btn.is-ready{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.err-msg{font-family:var(--font-mono);font-size:12px}
.msg-box{border-radius:0;font-size:14px;font-weight:500}
.msg-box.ok{background:rgba(154,210,154,.08);box-shadow:inset 0 0 0 1px rgba(154,210,154,.35)}
.msg-box.fail{background:rgba(248,113,113,.08);box-shadow:inset 0 0 0 1px rgba(248,113,113,.35)}
.check{font-size:14px}
.check-box{border-radius:0;border:1px solid var(--line-2);background:var(--bg-elev-2)}
.check input:focus-visible + .check-box{box-shadow:0 0 0 2px var(--accent)}
.avatar-pick{border-radius:0;background-color:var(--bg-elev-2);box-shadow:inset 0 0 0 1px var(--line-2)}
.avatar-remove{border-radius:0;border-color:var(--bg)}
.strength-bar,.strength-fill{border-radius:0;height:3px}
.strength-label{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase}

.lang-switch{gap:0;padding:0;border-radius:0;background:transparent;border:1px solid var(--line-2)}
.lang-switch-option{height:32px;min-width:44px;border-radius:0;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.12em}
.lang-switch-option + .lang-switch-option{border-left:1px solid var(--line-2)}
.lang-switch-option.is-active{background:var(--accent);color:var(--on-accent)}

.icon-px{fill:currentColor;stroke:none;flex-shrink:0}
.go-btn svg,.eye-btn svg,.avatar-overlay svg,.btn svg{width:24px;height:24px}
.avatar-remove svg{width:12px;height:12px}
.fact-icon,.platform-icon svg{width:36px;height:36px}
.platform-icon{height:36px}
.logo img{height:20px}
