.auth-modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:3000;padding:16px}.auth-modal{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);width:100%;max-width:920px;height:min(560px,calc(100dvh - 32px));max-height:min(560px,calc(100dvh - 32px));position:relative;overflow:hidden}.auth-modal.auth-modal--signup{height:min(600px,calc(100dvh - 32px));max-height:min(600px,calc(100dvh - 32px))}.auth-modal-close{position:absolute;top:16px;right:16px;background:none;border:none;color:#64748b;cursor:pointer;padding:6px;border-radius:8px;z-index:10}.auth-modal-close:hover{color:#334155;background:#f1f5f9}.auth-modal-panels{display:flex;height:100%;min-height:0}.auth-modal-form-panel{flex:1 1;padding:56px 40px 32px;display:flex;flex-direction:column;min-width:0;min-height:0;overflow-y:auto}.auth-modal-title{font-size:1.75rem;font-weight:700;color:#334155;margin:0 0 8px}.auth-modal-subtitle{font-size:.95rem;color:#64748b;margin:0 0 28px;line-height:1.4}.auth-modal-error{background:#fef2f2;color:#b91c1c;padding:10px 14px;border-radius:8px;font-size:.9rem;margin-bottom:16px}.auth-modal-form{display:flex;flex-direction:column;gap:14px;flex:1 1;min-height:0;max-width:360px}.auth-modal.auth-modal--signup .auth-modal-form-panel{padding:40px 32px 28px;overflow-y:auto;-webkit-overflow-scrolling:touch}.auth-modal.auth-modal--signup .auth-modal-form{flex:0 1 auto;gap:12px}.auth-modal.auth-modal--signup .auth-modal-title{font-size:1.45rem;margin-bottom:6px;line-height:1.22}.auth-modal.auth-modal--signup .auth-modal-subtitle{font-size:.875rem;margin-bottom:18px;line-height:1.4}.auth-modal.auth-modal--signup .auth-modal-error{padding:10px 12px;font-size:.875rem;margin-bottom:12px}.auth-modal.auth-modal--signup .auth-modal-input-group .auth-modal-label{margin-bottom:6px;font-size:.875rem}.auth-modal.auth-modal--signup .auth-modal-input{padding:11px 14px;font-size:.95rem}.auth-modal.auth-modal--signup .auth-modal-terms{font-size:.82rem;margin:4px 0 0;line-height:1.4;gap:10px}.auth-modal.auth-modal--signup .auth-modal-terms input{margin-top:3px;flex-shrink:0}.auth-modal.auth-modal--signup .auth-modal-btn.primary{padding:12px 18px;margin-top:4px;font-size:.95rem}.auth-modal.auth-modal--signup .auth-modal-toggle{font-size:.9rem;margin-top:4px;padding-bottom:4px}@media (max-height:640px){.auth-modal.auth-modal--signup .auth-modal-form-panel{padding:28px 24px 20px}.auth-modal.auth-modal--signup .auth-modal-title{font-size:1.28rem}.auth-modal.auth-modal--signup .auth-modal-subtitle{margin-bottom:12px;font-size:.8125rem}.auth-modal.auth-modal--signup .auth-modal-form{gap:8px}.auth-modal.auth-modal--signup .auth-modal-input{padding:9px 12px;font-size:.9rem}}@media (max-height:520px){.auth-modal.auth-modal--signup .auth-modal-form-panel{padding:20px 20px 16px}}.auth-modal-input{width:100%;padding:12px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:1rem;box-sizing:border-box;background:#fff}.auth-modal-input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.2)}.auth-modal-input::placeholder{color:#94a3b8}.auth-modal-label{display:block;font-size:.9rem;font-weight:500;color:#334155;margin-bottom:8px}.auth-modal-password-wrap{position:relative;display:flex;align-items:center}.auth-modal-password-wrap .auth-modal-input{padding-right:44px}.auth-modal-password-toggle{position:absolute;right:10px;background:none;border:none;color:#64748b;cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;justify-content:center}.auth-modal-password-toggle:hover{color:#334155;background:#f1f5f9}.auth-modal-terms{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:.9rem;color:#475569;margin:4px 0}.auth-modal-terms input{margin-top:3px;accent-color:#6d28d9}.auth-modal-terms a{color:#6d28d9;text-decoration:none;font-weight:500}.auth-modal-terms a:hover{text-decoration:underline}.auth-modal-options{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.auth-modal-remember{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem;color:#475569}.auth-modal-remember input{accent-color:#6d28d9}.auth-modal-forgot{color:#6d28d9;font-size:.9rem;text-decoration:none;font-weight:500}.auth-modal-forgot:hover{text-decoration:underline}.auth-modal-btn{padding:12px 20px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;border:none;transition:background .2s;margin-top:4px}.auth-modal-btn.primary{background:#6d28d9;color:#fff}.auth-modal-btn.primary:hover:not(:disabled){background:#5b21b6}.auth-modal-btn:disabled{opacity:.7;cursor:not-allowed}.auth-modal-divider{display:flex;align-items:center;gap:16px;margin:24px 0 16px}.auth-modal-divider:after,.auth-modal-divider:before{content:"";flex:1 1;height:1px;background:#e2e8f0}.auth-modal-divider span{font-size:.85rem;color:#94a3b8}.auth-modal-google{display:flex;justify-content:center;margin-bottom:8px}.auth-modal-toggle{background:none;border:none;color:#6d28d9;font-size:.95rem;font-weight:500;cursor:pointer;padding:0;margin:0;width:100%;max-width:360px;text-align:left;flex-shrink:0;line-height:1.45}.auth-modal-toggle:hover{text-decoration:underline}.auth-modal-illustration-panel{width:48%;min-width:320px;background:linear-gradient(160deg,#1e3a5f,#0f172a);position:relative;display:flex;align-items:center;justify-content:center}.auth-illus-gear{position:absolute;top:24px;right:24px;width:64px;height:64px;border:3px solid hsla(0,0%,100%,.15);border-radius:50%;background:repeating-conic-gradient(from 0deg,hsla(0,0%,100%,.08) 0deg 18deg,transparent 18deg 36deg)}.auth-illus-tablet{position:relative;width:220px;height:280px;background:#1e293b;border-radius:16px;padding:12px;box-shadow:0 20px 40px rgba(0,0,0,.3)}.auth-illus-screen{width:100%;height:100%;background:linear-gradient(180deg,#3b82f6,#2563eb);border-radius:8px;position:relative;padding:24px 16px}.auth-illus-person{position:absolute;bottom:24px;left:20px;width:56px;height:56px;background:linear-gradient(180deg,#fbbf24,#f59e0b);border-radius:50% 50% 50% 50%/60% 60% 40% 40%;box-shadow:0 4px 12px rgba(0,0,0,.2)}.auth-illus-locks{bottom:40px;color:hsla(0,0%,100%,.9)}.auth-illus-icons,.auth-illus-locks{position:absolute;right:16px;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.auth-illus-icons{top:20px;color:hsla(0,0%,100%,.85)}.auth-illus-field{width:80px;height:8px;background:hsla(0,0%,100%,.3);border-radius:4px}.auth-illus-field.dotted{background:repeating-linear-gradient(90deg,hsla(0,0%,100%,.4),hsla(0,0%,100%,.4) 4px,transparent 0,transparent 8px)}.auth-illus-leaf{position:absolute;bottom:40px;left:24px;width:60px;height:60px;background:rgba(59,130,246,.25);border-radius:50% 0 50% 50%;transform:rotate(-30deg)}@media (max-width:768px){.auth-modal-illustration-panel{display:none}.auth-modal-form-panel{padding:48px 24px 28px}.auth-modal.auth-modal--signup .auth-modal-form-panel{padding:36px 20px 24px}.auth-modal-form{max-width:none}}