.auth-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#000000b3;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.auth-modal-content{background:#fff;border-radius:24px;width:90%;max-width:480px;max-height:90vh;padding:3rem;animation:.4s slideUp;position:relative;overflow-y:auto;box-shadow:0 25px 50px #0000004d}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-modal-close{cursor:pointer;color:#6b7280;background:#f3f4f6;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:2rem;line-height:1;transition:all .3s;display:flex;position:absolute;top:1.5rem;right:1.5rem}.auth-modal-close:hover{color:#1f2937;background:#e5e7eb;transform:rotate(90deg)}.auth-modal-header{text-align:center;margin-bottom:2.5rem}.auth-modal-title{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.75rem;font-size:2rem;font-weight:800}.auth-modal-subtitle{color:#6b7280;font-size:1rem;line-height:1.5}.auth-form{flex-direction:column;gap:1.5rem;display:flex}.auth-form-group{flex-direction:column;gap:.5rem;display:flex}.auth-label{color:#374151;font-size:.95rem;font-weight:600}.auth-input{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:.875rem 1.25rem;font-size:1rem;transition:all .3s}.auth-input:focus{background:#fff;border-color:#667eea;outline:none;box-shadow:0 0 0 4px #667eea1a}.auth-input::placeholder{color:#9ca3af}.auth-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;align-items:center;gap:.75rem;padding:1rem 1.25rem;font-size:.95rem;animation:.4s shake;display:flex}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.error-icon{font-size:1.25rem}.auth-submit-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:12px;margin-top:.5rem;padding:1rem 2rem;font-size:1.05rem;font-weight:700;transition:all .3s;box-shadow:0 4px 15px #667eea66}.auth-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.auth-submit-btn:active:not(:disabled){transform:translateY(0)}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.loading-spinner{animation:1s linear infinite spin;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-footer{text-align:center;border-top:1px solid #e5e7eb;margin-top:2rem;padding-top:2rem}.auth-switch-text{color:#6b7280;font-size:.95rem}.auth-switch-btn{color:#667eea;cursor:pointer;background:0 0;border:none;font-size:.95rem;font-weight:700;text-decoration:underline;transition:all .3s}.auth-switch-btn:hover{color:#764ba2}.auth-demo-hint{text-align:center;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:12px;margin-top:1.5rem;padding:1rem}.demo-text{color:#0369a1;font-size:.9rem;font-weight:600}[data-theme=dark] .auth-modal-content{color:#f9fafb;background:#1f2937}[data-theme=dark] .auth-input{color:#f9fafb;background:#374151;border-color:#4b5563}[data-theme=dark] .auth-input:focus{background:#4b5563;border-color:#667eea}[data-theme=dark] .auth-label{color:#e5e7eb}[data-theme=dark] .auth-modal-close{color:#9ca3af;background:#374151}[data-theme=dark] .auth-modal-close:hover{color:#f9fafb;background:#4b5563}@media (max-width:640px){.auth-modal-content{border-radius:20px;padding:2rem 1.5rem}.auth-modal-title{font-size:1.75rem}.auth-modal-subtitle{font-size:.9rem}}
