.auth-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.85);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.auth-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:32px;max-width:450px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.5);animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-modal-close{position:absolute;top:16px;right:16px;background:transparent;border:none;color:#888;font-size:24px;cursor:pointer;padding:8px;line-height:1;transition:all .2s}.auth-modal-close:hover{color:#fff;transform:scale(1.1)}.auth-modal-header{text-align:center;margin-bottom:32px}.auth-modal-header h2{font-size:28px;font-weight:700;color:#fff;margin:0 0 8px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-modal-header p{font-size:14px;color:#888;margin:0}.auth-alert{padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.auth-alert-error{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#ef4444}.auth-alert-success{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);color:#22c55e}.auth-form{gap:20px}.auth-form,.auth-form-group{display:flex;flex-direction:column}.auth-form-group{gap:8px}.auth-form-group label{font-size:14px;font-weight:500;color:#aaa}.auth-form-group input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;font-size:15px;color:#fff;transition:all .2s}.auth-form-group input:focus{outline:none;border-color:#667eea;background:rgba(255,255,255,.08);box-shadow:0 0 0 3px rgba(102,126,234,.1)}.auth-form-group input:disabled{opacity:.5;cursor:not-allowed}.auth-form-group input::-moz-placeholder{color:#555}.auth-form-group input::placeholder{color:#555}.auth-btn{padding:12px 24px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;justify-content:center;gap:8px}.auth-btn:disabled{opacity:.5;cursor:not-allowed}.auth-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px rgba(102,126,234,.3)}.auth-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,.4)}.auth-btn-primary:active:not(:disabled){transform:translateY(0)}.auth-btn-social{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#fff}.auth-btn-social:hover:not(:disabled){background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2)}.auth-divider{display:flex;align-items:center;text-align:center;margin:24px 0;color:#666;font-size:13px}.auth-divider:after,.auth-divider:before{content:"";flex:1;border-bottom:1px solid rgba(255,255,255,.1)}.auth-divider span{padding:0 12px}.auth-social-btns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-footer{margin-top:24px;text-align:center;font-size:14px;color:#888;display:flex;flex-direction:column;gap:12px}.auth-link{background:none;border:none;color:#667eea;cursor:pointer;padding:0;font-size:inherit;font-weight:500;transition:color .2s}.auth-link:hover{color:#764ba2;text-decoration:underline}@media (max-width:480px){.auth-modal{padding:24px}.auth-modal-header h2{font-size:24px}.auth-social-btns{grid-template-columns:1fr}}