.auth-page{isolation:isolate;min-height:calc(100vh - 2rem);padding:clamp(5.5rem,10vw,8rem)var(--layout-gutter)clamp(3rem,7vw,5rem);background:var(--color-bg-canvas);color:var(--color-text);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.auth-page:before,.auth-page:after{z-index:-1;content:"";pointer-events:none;filter:blur(90px);opacity:.28;border-radius:50%;width:max(18rem,min(42vw,36rem));height:max(18rem,min(42vw,36rem));position:absolute}.auth-page:before{background:var(--color-glow-primary);top:2rem;left:-15rem}.auth-page:after{background:var(--color-glow-secondary);bottom:-8rem;right:-16rem}.auth-container{z-index:1;width:min(100%,33rem);position:relative}.auth-card{border:1px solid var(--color-border-strong);border-radius:var(--radius-xl);background:var(--color-surface);background:linear-gradient(155deg,color-mix(in srgb,var(--color-surface-raised)88%,transparent),color-mix(in srgb,var(--color-surface)94%,transparent));box-shadow:var(--shadow-elevated);padding:max(1.5rem,min(4vw,2.25rem));position:relative;overflow:hidden}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.auth-card{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}}.auth-card:before{background:var(--brand-gradient);content:"";height:3px;position:absolute;top:0;bottom:auto;left:0;right:0}.auth-card:after{background:var(--color-glow-primary);content:"";opacity:.11;pointer-events:none;border-radius:50%;width:15rem;height:15rem;position:absolute;top:-8rem;right:-8rem}.auth-header,.auth-form{z-index:1;position:relative}.auth-header{margin-bottom:var(--space-8);justify-content:space-between;align-items:center;display:flex}.back-btn,.password-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);min-width:2.75rem;min-height:2.75rem;color:var(--color-text-muted);cursor:pointer;justify-content:center;align-items:center;transition:border-color .18s,background-color .18s,color .18s,transform .18s;display:inline-flex}.back-btn{text-decoration:none}.back-btn:hover,.password-toggle:hover{border-color:var(--color-border-strong);background:color-mix(in srgb,var(--color-surface-raised)78%,var(--brand-primary));color:var(--color-text);transform:translateY(-1px)}.auth-page :-webkit-any(a,button,input):focus-visible{outline:3px solid var(--brand-secondary);outline:3px solid color-mix(in srgb,var(--brand-secondary)70%,transparent);outline-offset:3px}.auth-page :-moz-any(a,button,input):focus-visible{outline:3px solid var(--brand-secondary);outline:3px solid color-mix(in srgb,var(--brand-secondary)70%,transparent);outline-offset:3px}.auth-page :is(a,button,input):focus-visible{outline:3px solid var(--brand-secondary);outline:3px solid color-mix(in srgb,var(--brand-secondary)70%,transparent);outline-offset:3px}.auth-logo{align-items:center;gap:var(--space-2);color:var(--color-text);font-size:var(--font-size-h5);font-weight:var(--font-weight-bold);display:flex}.auth-page .logo-icon,.auth-page .logo-large{background:var(--brand-gradient);color:#fff;box-shadow:0 12px 30px -14px var(--color-glow-primary);flex:none;justify-content:center;align-items:center;display:flex}.auth-page .logo-icon{border-radius:var(--radius-sm);width:2.5rem;height:2.5rem;font-size:0}.auth-page .logo-icon:before{content:"P";font-size:1rem;font-weight:900}.auth-page .logo-text{background:var(--brand-gradient);color:transparent;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.auth-page .logo-large{width:4.75rem;height:4.75rem;margin:0 auto var(--space-6);border-radius:var(--radius-card);font-size:2rem}.auth-title{margin-bottom:var(--space-8);text-align:center}.auth-title h1{margin:0 0 var(--space-2);color:var(--color-text);font-family:var(--font-display);letter-spacing:-.035em;font-size:max(1.75rem,min(5vw,2.25rem));font-weight:800;line-height:1.1}.auth-title p{max-width:27rem;color:var(--color-text-muted);line-height:var(--line-height-body);margin:0 auto}.form{gap:var(--space-6);flex-direction:column;display:flex}.form-group{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.form-row{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-group label{color:var(--color-text);font-size:var(--font-size-sm);font-weight:650}.input-container{align-items:center;display:flex;position:relative}.input-icon{z-index:1;color:var(--color-text-faint);pointer-events:none;transition:color .18s;position:absolute;left:1rem}.input-container:focus-within .input-icon{color:var(--brand-secondary)}.auth-page .input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg-band);width:100%;max-width:none;min-height:3.25rem;color:var(--color-text);font:inherit;padding:.78rem 3rem .78rem 3.25rem;transition:border-color .18s,background-color .18s,box-shadow .18s}.auth-page .input:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-border-strong)65%,var(--brand-secondary))}.auth-page .input:focus{border-color:var(--brand-secondary);background:var(--color-surface-raised);box-shadow:0 0 0 3px var(--color-info-surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-secondary)18%,transparent);outline:none}.auth-page .input:focus-visible{border-color:var(--brand-secondary);background:var(--color-surface-raised);box-shadow:0 0 0 3px var(--color-info-surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-secondary)18%,transparent);outline:none}.auth-page .input.error{border-color:var(--color-error);box-shadow:0 0 0 3px var(--color-error-surface)}.auth-page .input:disabled{opacity:.58;background:var(--color-surface)}.auth-page .input::placeholder{color:var(--color-text-faint);opacity:.9}.auth-page .input:-webkit-autofill{-webkit-text-fill-color:var(--color-text);caret-color:var(--color-text);box-shadow:0 0 0 1000px var(--color-bg-band)inset}.auth-page .input:-webkit-autofill:hover{-webkit-text-fill-color:var(--color-text);caret-color:var(--color-text);box-shadow:0 0 0 1000px var(--color-bg-band)inset}.auth-page .input:-webkit-autofill:focus{-webkit-text-fill-color:var(--color-text);caret-color:var(--color-text);box-shadow:0 0 0 1000px var(--color-bg-band)inset}.password-toggle{background:0 0;border-color:transparent;min-width:2.5rem;min-height:2.5rem;padding:0;position:absolute;right:.35rem}.field-error{margin-top:var(--space-1);color:var(--color-error);font-size:var(--font-size-sm);line-height:1.4}.error-message,.status-message{align-items:flex-start;gap:var(--space-3);padding:var(--space-3)var(--space-4);border:1px solid var(--color-error-border);border-radius:var(--radius-sm);background:var(--color-error-surface);color:var(--color-error);font-size:var(--font-size-sm);text-align:left;line-height:1.5;display:flex}.error-message__content{align-items:flex-start;gap:var(--space-2);width:100%;display:flex}.error-message__icon{flex-shrink:0;margin-top:.15rem}.error-message__text{flex:1}.error-message__dismiss{border-radius:var(--radius-sm);width:2rem;height:2rem;color:inherit;cursor:pointer;opacity:.8;background:0 0;border:0;flex:0 0 2rem;justify-content:center;align-items:center;margin:-.4rem -.45rem -.4rem 0;padding:0;display:inline-flex}.error-message__dismiss:hover{background:var(--color-error-surface);opacity:1}.status-message--success{margin-bottom:var(--space-6);border-color:var(--color-success-border);background:var(--color-success-surface);color:var(--color-success)}.status-message__detail{margin:var(--space-1)0 0;font-size:var(--font-size-sm);opacity:.92}.auth-instructions{gap:var(--space-4)}.auth-instruction{align-items:flex-start;gap:var(--space-3);color:var(--color-text-muted);line-height:1.6;display:flex}.auth-instruction svg{color:var(--brand-secondary);flex-shrink:0;margin-top:.2rem}.auth-status{min-height:5rem;padding-top:var(--space-4);justify-content:center;align-items:center;display:flex}.auth-status--success{color:var(--color-success)}.auth-status--error{color:var(--color-error)}.form-options{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.checkbox-container{align-items:center;gap:var(--space-2);color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-sm);line-height:1.45;display:inline-flex;position:relative}.checkbox-container input[type=checkbox]{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.checkmark{border:1px solid var(--color-border-strong);background:var(--color-bg-band);border-radius:.3rem;flex:0 0 1.25rem;width:1.25rem;height:1.25rem;transition:border-color .18s,background-color .18s;position:relative}.checkbox-container input[type=checkbox]:focus-visible+.checkmark{outline:3px solid var(--brand-secondary);outline:3px solid color-mix(in srgb,var(--brand-secondary)70%,transparent);outline-offset:3px}.checkbox-container input[type=checkbox]:checked+.checkmark{border-color:var(--brand-primary);background:var(--brand-gradient)}.checkbox-container input[type=checkbox]:checked+.checkmark:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:.25rem;height:.55rem;position:absolute;top:.15rem;left:.4rem;transform:rotate(45deg)}.forgot-link,.terms-link,.auth-link{color:var(--brand-secondary);font-weight:var(--font-weight-medium);text-underline-offset:.2em;text-decoration:none;transition:color .18s}.forgot-link{font-size:var(--font-size-sm)}.forgot-link:hover,.terms-link:hover,.auth-link:hover{color:var(--color-text);text-decoration:underline}.auth-page .auth-btn{gap:var(--space-2);border:1px solid var(--brand-secondary);border:1px solid color-mix(in srgb,var(--brand-secondary)36%,transparent);border-radius:var(--radius-sm);background:var(--brand-gradient);color:#fff;width:100%;min-height:3.25rem;box-shadow:0 14px 30px -16px var(--color-glow-primary);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);padding:.85rem 1.5rem}.auth-page .auth-btn:hover:not(:disabled){box-shadow:0 18px 36px -15px var(--color-glow-primary);transform:translateY(-2px)}.auth-page .auth-btn:disabled{filter:saturate(.55);opacity:.58;transform:none;cursor:not-allowed!important}.auth-divider{margin:var(--space-2)0;text-align:center;position:relative}.auth-divider:before{background:var(--color-border);content:"";height:1px;position:absolute;top:50%;left:0;right:0}.auth-divider span{z-index:1;padding:0 var(--space-4);background:var(--color-surface);color:var(--color-text-faint);font-size:var(--font-size-sm);position:relative}.form .google-login-wrapper,.form .google-login-wrapper .S9gUrf-YoZ4jf,.form .google-login-wrapper .S9gUrf-YoZ4jf>div{width:100%}.form .google-login-wrapper{border-radius:var(--radius-sm);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;min-height:2.75rem;overflow:hidden}.form .google-login-wrapper .S9gUrf-YoZ4jf>div{height:-moz-fit-content;height:fit-content}.form .google-login-wrapper .S9gUrf-YoZ4jf iframe.L5Fo6c-PQbLGe{width:100%!important;margin:0!important}.google-btn{justify-content:center;align-items:center;gap:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-raised);width:100%;min-height:3.25rem;color:var(--color-text);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);padding:.85rem 1.5rem;transition:border-color .18s,background-color .18s,transform .18s;display:flex}.google-btn:hover{border-color:var(--brand-secondary);background:var(--color-bg-band);transform:translateY(-1px)}.auth-footer{z-index:1;margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;position:relative}.auth-footer p{margin:0}.auth-loading{justify-content:center;align-items:center;min-height:7rem;display:flex}.spinner{border:2px solid var(--color-border-strong);border:2px solid color-mix(in srgb,currentColor 25%,transparent);border-top-color:currentColor;border-radius:50%;width:1.15rem;height:1.15rem;margin:auto;animation:.8s linear infinite spin}@media (max-width:620px){.auth-page{padding:5rem var(--space-4)var(--space-12);align-items:flex-start}.auth-page:before,.auth-page:after{opacity:.18;filter:blur(60px)}.auth-card{padding:var(--space-6)var(--space-4);border-radius:var(--radius-card);box-shadow:0 20px 45px -25px rgba(0,0,0,.65)}.auth-header,.auth-title{margin-bottom:var(--space-6)}.form-row{grid-template-columns:1fr}.form-options{flex-direction:column;align-items:flex-start}.auth-page .logo-large{width:4rem;height:4rem}}@media (prefers-reduced-motion:reduce){.auth-page *,.auth-page :before,.auth-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.auth-page .auth-card,.auth-page .auth-form,.auth-page .auth-btn,.auth-page .success-message,.auth-page .error-message{opacity:1!important;transform:none!important}}
