.auth-page{background:var(--bg);flex-direction:column;min-height:100dvh;display:flex;position:relative}.auth-back{color:var(--text-3);align-items:center;gap:8px;padding:14px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:color .15s;display:inline-flex}.auth-back:hover{color:var(--text)}.auth-center{flex:1;justify-content:center;align-items:center;padding:0 24px 40px;display:flex}.auth-card{background:var(--bg-card);border:1px solid var(--border);border-radius:24px;width:100%;max-width:440px;padding:40px 36px;box-shadow:0 4px 32px #0000000f}.auth-logo{height:28px;margin-bottom:32px;display:block}.auth-logo img{width:auto;height:100%}.auth-title{letter-spacing:.5px;margin-bottom:6px;font-family:Bebas Neue,cursive;font-size:40px;line-height:1}.auth-sub{color:var(--text-3);margin-bottom:24px;font-size:14px}.auth-steps{align-items:center;gap:6px;margin-bottom:24px;display:flex}.auth-step-dot{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:flex}.auth-step-dot.on{background:var(--accent);color:var(--bg-card)}.auth-step-dot.off{background:var(--bg-raised);color:var(--border-2);border:1px solid var(--border)}.auth-step-label{font-size:12px;font-weight:600}.auth-step-label.on{color:var(--text)}.auth-step-label.off{color:var(--border-2)}.auth-step-line{background:var(--border);flex:1;height:1px}.auth-field{margin-bottom:14px}.auth-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.07em;margin-bottom:7px;font-size:12px;font-weight:600;display:block}.auth-input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);border-radius:12px;outline:none;padding:13px 14px;font-family:Inter,sans-serif;font-size:15px;transition:border-color .15s}.auth-input:focus{border-color:var(--accent);background:var(--bg-card)}.auth-pw{position:relative}.auth-pw .auth-input{padding-right:44px}.auth-pw-toggle{color:var(--text-3);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;font-size:16px;transition:color .15s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.auth-pw-toggle:hover{color:var(--text)}.auth-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.auth-chips{flex-wrap:wrap;gap:8px;display:flex}.auth-chip{background:var(--bg);border:1px solid var(--border);color:var(--text-3);cursor:pointer;text-align:center;border-radius:12px;flex:1;padding:12px;font-family:Inter,sans-serif;font-size:14px;transition:all .15s}.auth-chip.sel{background:var(--accent-bg);color:var(--accent);border-color:#1700ff59;font-weight:600}.auth-grid-2{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.auth-grid-3{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.auth-grid-4{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.auth-error{background:var(--red-bg);border:1px solid var(--red-border);color:var(--red);border-radius:10px;margin-bottom:14px;padding:11px 14px;font-size:13px}.auth-btn{background:var(--lime);width:100%;color:var(--text);cursor:pointer;border:none;border-radius:12px;margin-top:6px;padding:15px;font-size:15px;font-weight:800;transition:all .2s;box-shadow:0 2px 12px #c8ff0033}.auth-btn:hover:not(:disabled){background:#d4ff33;transform:translateY(-1px);box-shadow:0 4px 20px #c8ff004d}.auth-btn:disabled{opacity:.6;cursor:not-allowed}.auth-hint{color:var(--text-3);margin-top:5px;font-size:12px}.auth-alt{text-align:center;color:var(--text-3);margin-top:22px;font-size:14px}.auth-alt a{color:var(--accent);font-weight:600;text-decoration:none}.auth-alt a:hover{text-decoration:underline}.auth-divider{background:var(--border);height:1px;margin:20px 0}.auth-scroll{width:100%;max-width:480px;margin:0 auto;padding:24px 16px 40px}.auth-section{background:var(--bg-card);border:1px solid var(--border);border-radius:20px;margin-bottom:12px;padding:24px}.auth-section-title{letter-spacing:.5px;color:var(--text);margin-bottom:14px;font-family:Bebas Neue,cursive;font-size:18px}.auth-opt-badge{color:var(--text-3);background:var(--bg);letter-spacing:0;border-radius:100px;margin-left:8px;padding:2px 8px;font-family:Inter,sans-serif;font-size:11px;font-weight:400}.auth-level-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:1fr;gap:8px;display:grid}.auth-level-card{background:var(--bg);border:1px solid var(--border);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;padding:12px;transition:all .2s;display:flex}.auth-level-card:hover{border-color:var(--accent-border)}.auth-level-card.sel{background:var(--accent-bg);border-color:var(--accent-border)}.auth-level-name{color:var(--text);font-size:13px;font-weight:700}.auth-level-card.sel .auth-level-name{color:var(--accent)}.auth-level-info{align-items:center;gap:6px;min-width:0;max-width:100%;margin-top:4px;display:flex;overflow:hidden}.auth-level-emoji{flex-shrink:0;font-size:16px}.auth-level-desc{color:var(--text-3);white-space:normal;word-break:break-word;min-width:0;font-size:11px}.auth-avatar-zone{align-items:center;gap:20px;display:flex}.auth-avatar-preview{background:var(--bg);border:2px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:80px;height:80px;font-size:32px;display:flex;overflow:hidden}.auth-avatar-preview img{object-fit:cover;width:100%;height:100%}.auth-avatar-btn{background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--accent);cursor:pointer;border-radius:100px;padding:10px 20px;font-family:Inter,sans-serif;font-size:14px;transition:all .2s}.auth-avatar-btn:hover{background:#1700ff1a}.auth-city-wrap{position:relative}.auth-city-sug{background:var(--bg-card);border:1px solid var(--border);z-index:100;border-radius:12px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden;box-shadow:0 8px 32px #0000001a}.auth-city-item{cursor:pointer;color:var(--text);align-items:center;gap:10px;padding:11px 16px;font-size:14px;transition:all .15s;display:flex}.auth-city-item:hover{background:var(--bg)}.auth-city-cp{color:var(--text-3);font-size:12px}.auth-skip{text-align:center;color:var(--text-3);cursor:pointer;margin-top:16px;font-size:13px}.auth-skip:hover{color:var(--text-2)}.auth-invite-banner{background:#1700ff0d;border:1px solid #1700ff26;border-radius:12px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 14px;display:flex}.auth-invite-ic{flex-shrink:0;font-size:24px}.auth-invite-t{color:var(--accent);font-size:13px;font-weight:600}.auth-invite-d{color:var(--text-2);margin-top:2px;font-size:12px}
