.auth-page{--auth-danger-pale:var(--color-danger-pale);--auth-danger-text:var(--color-danger-text);--auth-danger-strong:#9f1f1f;--auth-glow:16%;isolation:isolate;background:var(--color-surface);flex-direction:column;min-height:100svh;padding:12px 16px 40px;font-size:17px;line-height:1.5;display:flex;position:relative;overflow:clip}:root[data-theme=dark] .auth-page{--auth-danger-strong:#ffa3a3;--auth-glow:10%}.auth-backdrop{z-index:-1;background:radial-gradient(48% 42% at 50% 38%, color-mix(in srgb, var(--color-cue-amber) var(--auth-glow), transparent), transparent 72%), linear-gradient(to right, var(--color-grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--color-grid-line) 1px, transparent 1px);opacity:.8;pointer-events:none;background-position:top;background-size:100% 100%,100px 100px,100px 100px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(75% 70% at 50% 40%,#000 30%,#0000 100%);mask-image:radial-gradient(75% 70% at 50% 40%,#000 30%,#0000 100%)}.auth-header{justify-content:center;align-items:center;min-height:56px;display:flex;position:relative}.auth-wordmark{min-height:44px;font-size:26px}.auth-theme{position:absolute;top:50%;right:-4px;transform:translateY(-50%)}.auth-body{flex-direction:column;flex:1;align-items:center;padding-top:20px;display:flex}.auth-card{border:1px solid var(--color-border);background:var(--color-surface-raised);width:min(100%,420px);box-shadow:var(--shadow-sm);border-radius:16px;padding:28px 20px}.auth-tagline{max-width:420px;color:var(--color-ink-soft);text-align:center;text-wrap:balance;margin:24px 0 0;font-size:14px;line-height:1.5}.auth-form-stack{flex-direction:column;display:flex}.auth-form-stack>*{margin:0}.auth-form-stack>*+*{margin-top:20px}.auth-form-stack>.auth-status:empty{margin-top:0}.auth-heading{gap:8px;display:grid}.auth-title{text-wrap:balance;margin:0;font-size:30px;font-weight:600;line-height:1.15}.auth-subtitle{color:var(--color-ink-soft);text-wrap:pretty;margin:0;font-size:17px;line-height:1.5}.auth-google{gap:10px;width:100%;padding-block:11px;font-size:16px}.auth-google:disabled,.auth-submit:disabled{opacity:.6}.auth-divider{color:var(--color-ink-soft);align-items:center;gap:12px;font-size:14px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--color-border);flex:1;height:1px}.auth-form{gap:16px;display:grid}.auth-field{gap:6px;display:grid}.auth-label{color:var(--color-ink);font-size:15px;font-weight:600;line-height:1.4}.auth-input{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);width:100%;min-height:48px;box-shadow:var(--shadow-xs);color:var(--color-ink);padding:11px 14px;font-size:17px;line-height:1.4;transition:border-color .12s ease-out,box-shadow .12s ease-out}.auth-input::placeholder{color:var(--color-ink-soft);opacity:1}.auth-input:hover{border-color:var(--color-border-strong)}.auth-input:focus{border-color:var(--color-tick-teal);box-shadow:0 0 0 3px var(--color-tick-teal-pale);outline:none}.auth-input[aria-invalid=true]{border-color:var(--color-danger)}.auth-input[aria-invalid=true]:focus{box-shadow:0 0 0 3px var(--auth-danger-pale)}.auth-input:disabled{background:var(--color-surface-alt);color:var(--color-ink-soft)}.auth-input[readonly]{background:var(--color-surface-alt)}.auth-input-wrap{position:relative}.auth-input-password{padding-right:52px}.auth-password-toggle{border-radius:var(--radius-control);width:48px;height:48px;color:var(--color-ink-soft);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;transition:color .12s ease-out;display:inline-flex;position:absolute;top:0;right:0}.auth-password-toggle:hover{color:var(--color-ink)}.auth-password-toggle:focus-visible{outline-offset:-6px}.auth-field-password{grid-template-columns:minmax(0,1fr) auto;column-gap:12px}.auth-field-password>.auth-label{grid-area:1/1}.auth-field-password>.auth-forgot{grid-area:1/2;align-self:center}.auth-field-password>.auth-input-wrap{grid-area:2/1/auto/-1}.auth-field-password>.auth-hint,.auth-field-password>.auth-field-error{grid-column:1/-1}.auth-forgot{color:var(--color-ink-soft);text-decoration:underline;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:15px;font-weight:500;line-height:1.4;position:relative}.auth-forgot:after{content:"";position:absolute;inset:-12px -8px}.auth-forgot:hover{color:var(--color-ink);text-decoration-color:currentColor}.auth-forgot:focus-visible{outline-offset:3px}.auth-forgot:disabled{opacity:.6}.auth-hint{color:var(--color-ink-soft);margin:0;font-size:14px}.auth-field-error{color:var(--auth-danger-text);align-items:flex-start;gap:6px;margin:0;font-size:14px;line-height:1.45;display:flex}.auth-field-error svg{flex:none;margin-top:2px}.auth-submit{width:100%;margin-top:4px;font-size:16px}.auth-message{border-radius:var(--radius-control);align-items:flex-start;gap:10px;margin:0;padding:12px 14px;font-size:15px;line-height:1.5;display:flex}.auth-message svg{flex:none;margin-top:2px}.auth-message-error{border:1px solid color-mix(in srgb, var(--color-danger) 28%, transparent);background:var(--auth-danger-pale);color:var(--auth-danger-strong)}.auth-message-info{border:1px solid color-mix(in srgb, var(--color-tick-teal-deep) 18%, transparent);background:var(--color-tick-teal-pale);color:var(--color-tick-teal-deep)}.auth-note,.auth-switch{color:var(--color-ink-soft);font-size:15px}.auth-switch a{color:var(--color-ink);text-decoration:underline;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);text-underline-offset:3px;margin-block:-12px;padding-block:12px;font-weight:600;display:inline-block}.auth-switch a:hover{text-decoration-color:currentColor}.auth-legal{color:var(--color-ink-soft);font-size:13px;line-height:1.6}.auth-legal a{color:inherit;text-underline-offset:2px;text-decoration:underline}.auth-legal a:hover{color:var(--color-ink)}.auth-text-button{min-height:44px;color:var(--color-ink);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-size:15px;font-weight:600;text-decoration:underline}.auth-text-button:disabled{opacity:.6}@media (min-width:640px){.auth-page{padding:20px 32px 48px}.auth-theme{right:0}.auth-body{justify-content:center;padding-block:24px 56px}.auth-card{padding:36px 36px 32px}.auth-title{font-size:32px}}
