
.auth-wrap{min-height:calc(100vh - 58px);display:grid;place-items:center;padding:20px}
.auth-box{width:min(460px,100%);background:#211b38;border:2px solid #594b78;border-radius:18px;padding:24px;box-shadow:0 18px 60px #0007;color:#fff}
.brand{text-align:center;margin-bottom:20px}.brand-icon{font-size:54px}.brand h1{margin:10px 0 5px}.brand p{margin:0;color:#c6bdd4;font-size:14px}
.tabs{display:flex;gap:7px;margin:20px 0}.tabs button{flex:1}.tabs .active{background:#8a6cff;color:#fff}
.field{margin:12px 0}.field label{display:block;margin-bottom:5px;font-size:12px;font-weight:900}.field input{width:100%;box-sizing:border-box;background:#121020;color:#fff;border:1px solid #594b78;border-radius:9px;padding:11px}
.submit{width:100%;margin-top:8px;padding:12px;background:#8a6cff;color:#fff;font-weight:900;border-radius:10px}.submit:disabled{opacity:.55}
.msg{min-height:22px;margin:12px 0;text-align:center;font-size:13px;color:#c6bdd4}.msg.success{color:#8df0c9}.msg.error{color:#ff9eae}.links{text-align:center;margin-top:12px}.links button{background:none;color:#cfc4e4;font-size:12px}.hidden{display:none!important}
.character-setup{margin:16px 0;padding:14px;border:1px solid #594b78;border-radius:14px;background:#171329}.char-setup-title{font-weight:900;font-size:12px;margin-bottom:10px}.char-setup-grid{display:grid;grid-template-columns:180px 1fr;gap:14px;align-items:start}.char-preview-box{text-align:center;color:#aaa0b7;font-size:10px}.char-preview-box canvas{width:180px;height:220px;background:#121020;border-radius:12px;image-rendering:pixelated}.char-options label{display:block;font-size:10px;font-weight:900;margin:7px 0 5px}.mini-options{display:flex;flex-wrap:wrap;gap:5px}.mini-options button{padding:7px 8px;font-size:10px;background:#27203d;color:#fff;border:1px solid #594b78;border-radius:7px}.mini-options button.active{outline:2px solid #8a6cff;background:#3a2d5d}.mini-options button[data-skin]{font-size:18px;padding:2px 8px}.colors{display:flex;gap:8px}.colors input{width:45px;height:32px;padding:2px}.config-note{margin-top:18px;padding:10px;border-radius:9px;background:#121020;color:#a9a1b8;font-size:11px;text-align:center}.config-note code{color:#fff}


.char-create{margin:14px 0;padding:14px;border:1px solid #594b78;border-radius:12px;background:#151226}.char-create h3{margin:0 0 10px;font-size:14px}.char-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.char-grid label{font-size:11px;font-weight:800}.char-grid select,.char-grid input[type=color]{width:100%;box-sizing:border-box;margin-top:4px;background:#121020;color:#fff;border:1px solid #594b78;border-radius:8px;padding:8px}.char-preview{display:grid;place-items:center;height:180px;margin-bottom:10px;background:linear-gradient(#6f9bd4,#8fc67a);border-radius:10px;overflow:hidden}.pixel-person{position:relative;width:100px;height:145px;image-rendering:pixelated;filter:drop-shadow(0 8px 5px #0005)}.pixel-person .head{position:absolute;left:30px;top:15px;width:40px;height:38px;background:var(--skin);border-radius:7px}.pixel-person .hair{position:absolute;left:26px;top:7px;width:48px;height:17px;background:var(--hair);border-radius:9px 9px 3px 3px}.pixel-person .eye{position:absolute;top:34px;width:5px;height:5px;background:#292632}.pixel-person .e1{left:39px}.pixel-person .e2{left:56px}.pixel-person .body{position:absolute;left:22px;top:54px;width:56px;height:48px;background:var(--shirt);border-radius:7px 7px 4px 4px}.pixel-person .leg{position:absolute;top:100px;width:18px;height:34px;background:#29314a;border-radius:4px}.pixel-person .l1{left:28px}.pixel-person .l2{left:54px}.pixel-person .shoe{position:absolute;top:130px;width:23px;height:8px;background:#202331;border-radius:4px}.pixel-person .s1{left:25px}.pixel-person .s2{left:52px}.pixel-person .acc{position:absolute;left:64px;top:48px;font-size:20px}
@media(max-width:500px){.char-grid{grid-template-columns:1fr}}

.pixel-person{--skin:#f0b47d;--hair:#2f241f;--shirt:#7568c9}
