:root{--auth-ink:#2f1f3c;--auth-purple:#7445a5;--auth-purple-dark:#523073;--auth-coral:#b83e36;--auth-accent:var(--auth-purple);--auth-lilac:#f1e6ff;--auth-paper:#fffdf8;--auth-border:#d7c9e3}*{box-sizing:border-box}html{background:var(--auth-lilac);color:var(--auth-ink);font-family:Manrope Variable,system-ui,sans-serif}body{min-height:100vh;margin:0}body[data-auth-mode=register]{--auth-accent:var(--auth-coral);background:#fff3eb}[hidden]{display:none!important}a{color:var(--auth-purple-dark);text-underline-offset:.2em;font-weight:700}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--auth-coral);outline-offset:3px}.auth-shell{width:min(100% - 2rem,71rem);margin-inline:auto}.auth-skip-link{z-index:50;background:var(--auth-ink);color:#fff;padding:.75rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-200%)}.auth-skip-link:focus{transform:translateY(0)}.auth-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.25rem;display:flex}.auth-privacy-notice{color:var(--auth-ink);margin:0;font-size:.82rem;font-weight:500;line-height:1.55}.auth-main{place-items:center;min-height:calc(100vh - 11rem);padding-block:2rem 4rem;display:grid}.auth-card{border:2px solid var(--auth-border);background:var(--auth-paper);width:min(100%,34rem);box-shadow:.75rem .75rem 0 var(--auth-accent);border-radius:1.5rem;padding:clamp(1.5rem,5vw,3rem)}body[data-auth-mode=register] .auth-card,body[data-auth-mode=sign-in] .auth-card{width:min(100%,31.25rem)}body[data-auth-mode=register] .auth-card{background:#fffaf6;border-color:#d9aa9c}.auth-kicker{color:var(--auth-accent);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .75rem;font-size:.8rem;font-weight:800}h1{margin:0;font-size:clamp(2rem,9vw,3.4rem);line-height:1}.auth-lead{margin-block:1rem 2rem;line-height:1.6}.auth-notice{gap:1rem;display:grid}.auth-notice p{margin:0;line-height:1.6}.auth-email-help{border:2px solid var(--auth-purple);background:var(--auth-lilac);border-radius:.8rem;gap:.35rem;padding:1rem;display:grid}.auth-email-help span{color:var(--auth-purple-dark);letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:800}.auth-email-help strong{font-weight:800}.auth-existing-account{border-left:.3rem solid var(--auth-coral);background:#fff3eb;gap:.75rem;padding:1rem;display:grid}.auth-existing-account__choice{gap:.5rem;display:grid}.auth-existing-account__or{color:#6b6570;text-align:center;align-items:center;gap:.75rem;display:flex}.auth-existing-account__or:before,.auth-existing-account__or:after{background:var(--auth-border);content:"";flex:1;height:1px}form,[data-account]{gap:1rem;display:grid}[data-account]{overflow-wrap:anywhere;min-width:0}label{gap:.45rem;font-weight:700;display:grid}input,button,.auth-primary-link{border:2px solid var(--auth-ink);min-height:3rem;font:inherit;border-radius:.7rem}input{background:#fff;width:100%;padding:.7rem .85rem}button,.auth-primary-link{background:var(--auth-accent);color:#fff;cursor:pointer;padding:.7rem 1rem;font-weight:800}.auth-primary-link{text-align:center;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}button:disabled{cursor:not-allowed;opacity:.55}.auth-button--secondary{color:var(--auth-ink);background:#fff}.auth-divider{color:#6b6570;align-items:center;gap:.75rem;margin:.25rem 0;display:flex}.auth-divider:before,.auth-divider:after{background:var(--auth-border);content:"";flex:1;height:1px}.auth-google-entry{gap:1rem;margin-bottom:1rem;display:grid}.auth-google-button{color:#3c4043;border-color:#dadce0;justify-content:center;align-items:center;gap:.75rem;display:inline-flex}.auth-google-button-shell{justify-content:center;align-items:center;min-height:3rem;display:flex}.auth-google-button-shell .auth-google-button{width:100%}.auth-google-button svg{flex:none;width:1.25rem;height:1.25rem}.auth-status{background:var(--auth-lilac);border-radius:.7rem;min-height:3rem;margin:1.5rem 0 0;padding:.75rem;line-height:1.5}.auth-alternatives{flex-wrap:wrap;gap:1rem;margin-top:1rem;display:flex}.auth-footer{border-top:1px solid var(--auth-border);font-size:.9rem}@media (width<=35rem){.auth-card{box-shadow:.35rem .35rem 0 var(--auth-accent)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}
