.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:#08090a}.auth-container{width:100%;max-width:420px}.auth-brand{text-align:center;margin-bottom:32px}.auth-brand h1{font-size:24px;font-weight:700;color:#fff;letter-spacing:-.02em;margin:0}.auth-brand p{color:#9ca3af;font-size:14px;margin-top:4px}.auth-brand img.auth-logo{height:64px;width:auto;display:inline-block}.auth-card{background:#121416;border:1px solid hsla(0,0%,100%,.08);border-radius:16px;padding:32px;box-shadow:0 25px 50px -12px rgba(0,0,0,.5)}.auth-header{text-align:center;margin-bottom:24px}.auth-header h2{font-size:20px;font-weight:600;color:#fff;margin:0}.auth-header p{color:#9ca3af;font-size:14px;margin-top:4px}.auth-form{gap:20px}.auth-field,.auth-form{display:flex;flex-direction:column}.auth-field{gap:8px}.auth-field label{font-size:14px;font-weight:500;color:#f3f4f6}.auth-field label span{color:#6b7280;font-weight:400}.auth-input{width:100%;padding:12px 16px;background:#1b1e21;border:1px solid hsla(0,0%,100%,.08);border-radius:12px;color:#fff;font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s}.auth-input::placeholder{color:#6b7280}.auth-input:focus{border-color:#5e6ad2;box-shadow:0 0 0 3px rgba(94,106,210,.15)}.auth-hint{font-size:12px;color:#6b7280;margin-top:4px}.auth-role-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.auth-role-btn{padding:16px 12px;background:#1b1e21;border:1px solid hsla(0,0%,100%,.08);border-radius:12px;text-align:center;cursor:pointer;transition:all .2s}.auth-role-btn:hover{border-color:hsla(0,0%,100%,.15)}.auth-role-btn.active{background:rgba(94,106,210,.15);border-color:#5e6ad2}.auth-role-btn .role-icon{font-size:28px;margin-bottom:8px}.auth-role-btn .title{font-size:14px;font-weight:500;color:#fff}.auth-role-btn .desc{font-size:11px;color:#9ca3af;margin-top:4px;line-height:1.3}@media (max-width:480px){.auth-role-grid{grid-template-columns:1fr}}.auth-submit{width:100%;padding:14px;background:linear-gradient(135deg,#5e6ad2,#4f5bba);border:none;border-radius:12px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:opacity .2s,transform .2s;box-shadow:0 4px 14px rgba(94,106,210,.4)}.auth-submit:hover{opacity:.9}.auth-submit:active{transform:scale(.98)}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-footer{text-align:center;margin-top:24px;font-size:14px;color:#9ca3af}.auth-footer button{background:none;border:none;color:#5e6ad2;font-weight:500;cursor:pointer;transition:color .2s}.auth-footer button:hover{color:#7c85e0}.auth-checkbox-label{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:#9ca3af;cursor:pointer}.auth-checkbox-label input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:#5e6ad2;cursor:pointer}.auth-checkbox-label a{color:#5e6ad2;text-decoration:none}.auth-checkbox-label a:hover{text-decoration:underline}.auth-terms{text-align:center;font-size:12px;color:#6b7280;margin-top:24px}.auth-links{display:flex;justify-content:space-between;font-size:13px}.auth-links button{background:none;border:none;color:#9ca3af;cursor:pointer;transition:color .2s}.auth-links button:hover{color:#fff}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}