.auth-overlay{z-index:9999;-webkit-backdrop-filter:blur(16px)saturate(1.4);background:#ffffff73;justify-content:center;align-items:center;animation:.3s ease-out authOverlayIn;display:flex;position:fixed;inset:0}@keyframes authOverlayIn{0%{opacity:0}to{opacity:1}}.auth-modal{background:#fff;border-radius:20px;width:400px;max-width:92vw;padding:32px;animation:.35s cubic-bezier(.4,0,.2,1) authModalIn;box-shadow:0 20px 60px #0000001a,0 0 0 1px #0000000a}@keyframes authModalIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.auth-modal-brand{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.auth-modal-brand-main{align-items:center;gap:14px;display:flex}.auth-modal-logo{color:#fff;background:linear-gradient(135deg,#4948ec,#6b46f3);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:.85rem;font-weight:800;display:flex;box-shadow:0 4px 12px #4948ec33}.auth-modal-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:0;font-size:28px;line-height:1}.auth-modal-close:hover{color:#0f172a}.auth-modal-title{color:#121c34;margin:0;font-size:1.2rem;font-weight:700}.auth-modal-subtitle{color:#8b95a5;margin:2px 0 0;font-size:.85rem}.auth-modal-error{color:#dc2626;background:#fef2f2;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;font-size:.85rem;display:flex}.auth-modal-error button{color:#dc2626;cursor:pointer;background:0 0;border:none;padding:0;font-size:1.1rem;line-height:1}.auth-modal-form{flex-direction:column;gap:12px;display:flex}.auth-modal-input{color:#121c34;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;height:48px;padding:0 16px;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.auth-modal-input:focus{background:#fff;border-color:#4948ec;outline:none;box-shadow:0 0 0 3px #4948ec1a}.auth-modal-input::placeholder{color:#b0b8c4}.auth-modal-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4948ec,#6b46f3);border:none;border-radius:12px;height:48px;font-size:.95rem;font-weight:600;transition:box-shadow .2s,transform .15s}.auth-modal-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #4948ec4d}.auth-modal-submit:active:not(:disabled){transform:translateY(0)}.auth-modal-submit:disabled{opacity:.6;cursor:not-allowed}.auth-modal-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.6s linear infinite authSpin;display:inline-block}@keyframes authSpin{to{transform:rotate(360deg)}}.auth-modal-divider{color:#c0c7d1;align-items:center;gap:12px;margin:20px 0;font-size:.8rem;display:flex}.auth-modal-divider:before,.auth-modal-divider:after{content:"";background:#e5e7eb;flex:1;height:1px}.auth-modal-google{color:#334155;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;height:48px;font-size:.95rem;font-weight:500;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.auth-modal-google:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;box-shadow:0 2px 8px #0000000a}.auth-modal-google:disabled{opacity:.6;cursor:not-allowed}.auth-modal-sent{text-align:center;padding:8px 0}.auth-modal-sent-icon{margin-bottom:12px}.auth-modal-sent h3{color:#121c34;margin:0 0 8px;font-size:1.1rem;font-weight:700}.auth-modal-sent p{color:#475569;margin:0;font-size:.9rem}.auth-modal-sent strong{color:#4948ec}.auth-modal-sent-hint{color:#8b95a5;margin-top:4px;font-size:.82rem}.auth-modal-link-btn{color:#4948ec;cursor:pointer;background:0 0;border:none;border-radius:8px;margin-top:16px;padding:6px 16px;font-size:.88rem;font-weight:600;transition:background .15s}.auth-modal-link-btn:hover{background:#4948ec0f}@media (max-width:480px){.auth-modal{border-radius:16px;padding:24px 20px}}