:root{--auth-primary:#4f7cff;--auth-primary-hover:#3d66e0;--auth-bg:#fff;--auth-surface:#f8fafc;--auth-border:#e2e8f0;--auth-text:#1e293b;--auth-text-muted:#64748b;--auth-success:#10b981;--auth-error:#ef4444;--auth-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--auth-shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--auth-radius:.5rem;--auth-radius-lg:.75rem}.auth-page{background:linear-gradient(135deg,#1e3a5f 0%,#0f172a 100%);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.login-form,.signup-form,.reset-form,.update-form{background:var(--auth-bg);border-radius:var(--auth-radius-lg);width:100%;max-width:26rem;box-shadow:var(--auth-shadow-lg);flex-direction:column;gap:1.25rem;padding:2.5rem;display:flex}.auth-form__header{text-align:center;margin-bottom:.5rem}.auth-form__title{color:var(--auth-text);margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.auth-form__subtitle{color:var(--auth-text-muted);margin:0;font-size:.875rem}.login-form__field,.signup-form__field,.reset-form__field,.update-form__field{flex-direction:column;gap:.5rem;display:flex}.auth-form__label{color:var(--auth-text);font-size:.875rem;font-weight:500}.auth-form__input{width:100%;color:var(--auth-text);background:var(--auth-bg);border:1px solid var(--auth-border);border-radius:var(--auth-radius);box-sizing:border-box;outline:none;padding:.75rem 1rem;font-size:.9375rem;transition:all .2s}.auth-form__input::placeholder{color:var(--auth-text-muted)}.auth-form__input:hover{border-color:#cbd5e1}.auth-form__input:focus{border-color:var(--auth-primary);box-shadow:0 0 0 3px #4f7cff26}.login-form__submit,.signup-form__submit,.reset-form__submit,.update-form__submit{color:#fff;background:var(--auth-primary);border-radius:var(--auth-radius);cursor:pointer;border:none;width:100%;margin-top:.5rem;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:600;transition:all .2s}.login-form__submit:hover,.signup-form__submit:hover,.reset-form__submit:hover,.update-form__submit:hover{background:var(--auth-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #4f7cff59}.login-form__submit:active,.signup-form__submit:active,.reset-form__submit:active,.update-form__submit:active{transform:translateY(0)}.login-form__submit:disabled,.signup-form__submit:disabled,.reset-form__submit:disabled,.update-form__submit:disabled{cursor:not-allowed;box-shadow:none;background:#94a3b8;transform:none}.login-form__alert,.signup-form__alert,.reset-form__alert,.update-form__alert{border-radius:var(--auth-radius);color:var(--auth-error);background:#fef2f2;border:1px solid #fecaca;padding:.875rem 1rem;font-size:.875rem}.reset-form__alert--success,.auth-form__alert--success{color:var(--auth-success);background:#ecfdf5;border:1px solid #a7f3d0}.auth-form__divider{color:var(--auth-text-muted);align-items:center;gap:1rem;font-size:.8125rem;display:flex}.auth-form__divider:before,.auth-form__divider:after{content:"";background:var(--auth-border);flex:1;height:1px}.auth-form__social{gap:.75rem;display:flex}.auth-form__social-btn{color:var(--auth-text);background:var(--auth-bg);border:1px solid var(--auth-border);border-radius:var(--auth-radius);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.auth-form__social-btn:hover{background:var(--auth-surface);border-color:#cbd5e1}.login-form__footer,.signup-form__footer,.reset-form__footer{text-align:center;color:var(--auth-text-muted);margin-top:.5rem;font-size:.875rem}.login-form__link,.signup-form__link,.reset-form__link{color:var(--auth-primary);font-weight:500;text-decoration:none;transition:all .2s}.login-form__link:hover,.signup-form__link:hover,.reset-form__link:hover{color:var(--auth-primary-hover);text-decoration:underline}.auth-form__forgot{text-align:right;margin-top:-.25rem}.auth-form__forgot-link{color:var(--auth-text-muted);font-size:.8125rem;text-decoration:none;transition:color .2s}.auth-form__forgot-link:hover{color:var(--auth-primary)}.auth-form__checkbox-group{justify-content:space-between;align-items:center;display:flex}.auth-form__checkbox-label{color:var(--auth-text-muted);cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.auth-form__checkbox{width:1rem;height:1rem;accent-color:var(--auth-primary)}.auth-form__submit--loading{color:#0000;position:relative}.auth-form__submit--loading:after{content:"";border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:1.25rem;height:1.25rem;margin-top:-.625rem;margin-left:-.625rem;animation:.8s linear infinite spin;position:absolute;top:50%;left:50%}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:480px){.login-form,.signup-form,.reset-form,.update-form{padding:1.5rem}.auth-form__social{flex-direction:column}}
