.auth-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:2.5rem 1.5rem 3rem;animation:landingIn .4s ease;background:linear-gradient(160deg,#fdf8ff,#faf5f0 40%,#fff5f8);position:relative;overflow:hidden}.auth-back-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;font-size:.8rem;font-weight:500;font-family:var(--font-body);color:var(--text-muted);background:rgba(255,255,255,.65);border:1px solid rgba(155,89,182,.12);border-radius:999px;cursor:pointer;transition:color .25s ease,background .25s ease,border-color .25s ease;margin-bottom:18px}.auth-back-btn svg{transition:transform .25s cubic-bezier(.4,0,.2,1)}.auth-back-btn:hover{color:var(--accent)}.auth-back-btn:hover svg{transform:translateX(-3px)}.auth-card{width:100%;max-width:600px;background:rgba(255,255,255,.86);border-radius:16px;border:1px solid rgba(255,255,255,.7);box-shadow:0 24px 60px rgba(16,24,40,.16),0 8px 22px rgba(16,24,40,.08);padding:clamp(1.5rem,4vw,2.8rem) clamp(1.2rem,4vw,3.2rem) clamp(1.4rem,3vw,2.4rem);margin-top:clamp(1.5rem,6vh,3.5rem);position:relative;z-index:1;backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);transition:transform .25s ease,box-shadow .25s ease}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:4px;justify-content:center}.auth-brand h1{font-size:1.5rem;font-weight:700;background:var(--gradient-main);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}.auth-subtitle{text-align:center;color:var(--text-muted);font-size:.9rem;max-width:420px;margin:0 auto 1.6rem}.auth-tabs{display:flex;background:rgba(155,89,182,.08);border:1.5px solid rgba(155,89,182,.15);border-radius:12px;padding:4px;margin-bottom:1.4rem;gap:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.7);-webkit-backdrop-filter:blur(6px) saturate(140%);backdrop-filter:blur(6px) saturate(140%)}.auth-tab,.auth-tabs{transition:all .3s cubic-bezier(.4,0,.2,1)}.auth-tab{flex:1 1;padding:10px 0;font-size:.84rem;font-weight:600;font-family:var(--font-body);color:var(--text-muted);background:none;border:none;border-radius:9px;cursor:pointer;position:relative;overflow:hidden;letter-spacing:.01em}.auth-tab:before{content:"";position:absolute;inset:0;background:rgba(155,89,182,.1);transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:-1}.auth-tab:hover{color:var(--text-secondary);transform:translateY(-1px)}.auth-tab:hover:before{transform:scaleX(1)}.auth-tab.active{color:var(--accent);background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.8));box-shadow:0 6px 16px rgba(155,89,182,.18);font-weight:700;transform:translateY(-1px)}.auth-tab.active:before{opacity:0;transform:scaleX(0)}.auth-tab.active:hover{color:var(--accent);background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.8));box-shadow:0 6px 16px rgba(155,89,182,.18);transform:translateY(-1px)}.auth-alert{padding:10px 14px;border-radius:var(--radius-sm);font-size:.82rem;font-weight:500;margin:0 0 1rem;line-height:1.45}.auth-alert-error{background:var(--error-bg);color:var(--error);border:1px solid #f5c6cb}.auth-alert-success{background:#eaf7ec;color:#2d6a3f;border:1px solid #b8dfc3}.auth-verify-stack{display:flex;flex-direction:column;gap:1rem;width:100%}.auth-verify-stack .auth-alert{margin:0}.auth-verify-stack .auth-btn{margin-top:0}.auth-verify-stack .auth-switch{margin:0;text-align:center}.auth-form{gap:16px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:4px}.form-group label{font-size:.74rem;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:var(--text-secondary)}.form-group input{width:100%;padding:13px 16px;font-size:.9rem;font-family:var(--font-body);border:1.5px solid var(--border-light);border-radius:10px;background:rgba(255,255,255,.9);color:var(--text);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 2px 4px rgba(0,0,0,.02)}.form-group input:hover{border-color:rgba(155,89,182,.2);background:rgba(255,255,255,.95)}.form-group input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(155,89,182,.15),inset 0 2px 4px rgba(0,0,0,.02);background:rgba(255,255,255,1);transform:translateY(-1px)}.form-group input::placeholder{color:var(--text-muted)}.password-input-wrap{position:relative;width:100%}.password-input-wrap input{padding-right:44px}.password-input-toggle{position:absolute;top:50%;right:10px;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;margin:0;border:none;border-radius:6px;background:transparent;box-shadow:none;color:var(--text-muted);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;transform:translateY(-50%);transition:color .2s ease,background .2s ease}.password-input-toggle:hover{color:var(--accent);background:rgba(155,89,182,.08);border:none;box-shadow:none}.password-input-toggle:focus-visible{outline:none;color:var(--accent);box-shadow:0 0 0 2px rgba(155,89,182,.25)}.auth-help{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:-4px}.auth-link{background:none;border:none;padding:0;color:var(--accent);font-size:.78rem;font-weight:600;cursor:pointer;transition:color var(--transition),-webkit-text-decoration-color var(--transition);transition:color var(--transition),text-decoration-color var(--transition);transition:color var(--transition),text-decoration-color var(--transition),-webkit-text-decoration-color var(--transition);text-decoration:none}.auth-link:hover{color:var(--accent-hover);text-decoration:underline}.auth-btn{margin-top:10px;width:100%;min-height:60px;padding:12px 28px;font-size:1.08rem;font-weight:700;letter-spacing:.02em;background:var(--accent);border:1px solid var(--accent);border-radius:12px;color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 12px 24px rgba(155,89,182,.22),0 4px 10px rgba(16,24,40,.12);position:relative;overflow:hidden}.auth-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.2),rgba(255,255,255,0));opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.auth-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 16px 30px rgba(155,89,182,.3),0 6px 14px rgba(16,24,40,.14);transform:translateY(-2px)}.auth-btn:disabled{opacity:.72;cursor:not-allowed}.auth-btn:disabled,.auth-btn:disabled:hover{transform:none;box-shadow:0 8px 16px rgba(155,89,182,.16)}.auth-btn:disabled:hover{background:var(--accent);border-color:var(--accent)}.auth-btn:active{transform:translateY(0);box-shadow:0 10px 18px rgba(155,89,182,.22)}.auth-btn:hover:before{opacity:1}.auth-social-wrap{margin-top:4px}.auth-or-divider{display:flex;align-items:center;gap:10px;color:var(--text-muted);font-size:.78rem;margin:2px 0 4px}.auth-or-divider:after,.auth-or-divider:before{content:"";flex:1 1;height:1px;background:var(--border-light)}.auth-form .auth-google-btn{-moz-appearance:none;appearance:none;-webkit-appearance:none;outline:none;margin-top:10px;width:100%;min-height:46px;border-radius:var(--radius-sm);border:1px solid var(--border);background:rgba(255,255,255,.92);color:var(--text);display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-body);font-weight:600;font-size:.94rem;cursor:pointer;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition),background var(--transition)}.auth-form .auth-google-btn:hover{border-color:var(--accent-light);box-shadow:0 8px 18px rgba(16,24,40,.08),0 0 0 3px rgba(155,89,182,.08);background:#fff;transform:translateY(-1px)}.auth-form .auth-google-btn:focus-visible{border-color:var(--accent);box-shadow:0 0 0 4px rgba(109,74,255,.14)}.auth-form .auth-google-btn:active{transform:translateY(0)}.auth-form .auth-google-btn:disabled{opacity:.75;cursor:wait}.auth-google-icon{width:22px;height:22px;border-radius:50%;background:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.auth-google-label{line-height:1}.auth-switch{text-align:center;margin-top:1.2rem;font-size:.82rem;color:var(--text-muted)}.auth-reset-confirm{display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;padding-top:.25rem}.auth-reset-confirm-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1.1rem;color:var(--accent);background:linear-gradient(145deg,rgba(155,89,182,.14),rgba(255,255,255,.9));border:1px solid rgba(155,89,182,.16);box-shadow:0 10px 24px rgba(155,89,182,.12)}.auth-reset-confirm-title{font-size:1.35rem;font-weight:700;letter-spacing:-.02em;color:var(--text);margin:0 0 1.35rem;line-height:1.25}.auth-reset-confirm-btn{margin-top:0}.auth-reset-confirm-switch{margin-top:1.15rem;margin-bottom:0}.auth-switch a{color:var(--accent);font-weight:600;text-decoration:none;margin-left:4px;transition:color var(--transition),-webkit-text-decoration-color var(--transition);transition:color var(--transition),text-decoration-color var(--transition);transition:color var(--transition),text-decoration-color var(--transition),-webkit-text-decoration-color var(--transition)}.auth-switch a:hover{color:var(--accent-hover);text-decoration:underline}.landing-user-bar{position:absolute;top:16px;right:20px;gap:8px;z-index:10;flex-wrap:wrap}.landing-user-bar,.user-avatar{display:flex;align-items:center}.user-avatar{width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;justify-content:center;font-size:.72rem;font-weight:700;flex-shrink:0;text-transform:uppercase}.user-email-text{font-size:.78rem;color:var(--text-secondary);font-weight:500;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.signout-link{background:transparent;border:1px solid rgba(155,89,182,.22);color:var(--text-secondary);font-size:.82rem;font-weight:600;font-family:var(--font-body);cursor:pointer;min-height:36px;padding:.42rem .86rem;border-radius:7px;transition:color var(--transition),background var(--transition),border-color var(--transition)}.signout-link:hover{color:var(--accent);background:var(--accent-bg);border-color:rgba(155,89,182,.34)}.top-bar-actions{display:flex;align-items:center;gap:10px}.topbar-user{font-size:.76rem;color:var(--text-muted);font-weight:500;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.signout-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:color var(--transition),border-color var(--transition),background var(--transition)}.signout-btn:hover{color:var(--error);border-color:var(--error);background:var(--error-bg)}