.relay-auth{--auth-paper:#f7f4ef;--auth-cream:#f0ebe3;--auth-surface:#fdfbf7;--auth-ink:#1b1b1a;--auth-muted:#625c55;--auth-line:#d5d0c9;--auth-coral:#ef604e;min-height:100svh;color:var(--auth-ink);background:var(--auth-paper);-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.relay-auth *,.relay-auth :before,.relay-auth :after{box-sizing:border-box}.relay-auth a{color:inherit;text-decoration:none}.relay-auth__skip{z-index:20;background:var(--auth-ink);padding:.7rem 1rem;position:fixed;top:-4rem;left:1rem;color:#fff!important}.relay-auth__skip:focus{top:1rem}.relay-auth__layout{grid-template-columns:minmax(0,54%) minmax(0,46%);min-height:100svh;display:grid}.relay-auth__panel{flex-direction:column;min-width:0;padding:clamp(1.5rem,3.4vw,3.625rem) clamp(1.5rem,5vw,5.5rem);display:flex}.relay-auth__header{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.relay-auth__brand{align-items:center;animation:.6s ease-out both auth-resolve;display:inline-flex}.relay-auth__brand .ed-logo{white-space:nowrap;letter-spacing:-.055em;align-items:center;gap:.65rem;font-size:1.22rem;display:inline-flex}.relay-auth__brand .ed-brand-mark{width:39px!important;height:27px!important}.relay-auth__back{align-items:center;gap:.55rem;font-size:.79rem;font-weight:600;transition:color .18s;display:inline-flex;color:var(--auth-muted)!important}.relay-auth__back svg{width:14px;height:14px;transform:rotate(180deg)}.relay-auth__back:hover{color:var(--auth-ink)!important}.relay-auth__content{outline:none;width:min(100%,425px);margin:auto;padding-block:clamp(2rem,6vh,3.5rem);animation:.65s cubic-bezier(.2,.8,.2,1) both auth-rise}.relay-auth__content:focus-visible{outline:2px solid var(--auth-coral);outline-offset:.6rem}.relay-auth__eyebrow,.relay-auth__story-eyebrow,.relay-auth__demo-label{color:var(--auth-coral);letter-spacing:.17em;text-transform:uppercase;margin:0;font-size:.65rem;font-weight:750}.relay-auth__content h1{letter-spacing:-.075em;text-wrap:balance;margin:1rem 0 0;font-size:clamp(3rem,5vw,4.5rem);font-weight:750;line-height:.98}.relay-auth__description{max-width:36ch;color:var(--auth-muted);margin:1.15rem 0 0;font-size:.96rem;line-height:1.55}.relay-auth__form-area{margin-top:1.65rem}.relay-auth .auth-form{gap:1rem;margin:0;display:grid}.relay-auth .auth-field{gap:.45rem;min-width:0;display:grid}.relay-auth .auth-label-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.relay-auth .auth-label{color:var(--auth-ink);font-size:.8rem;font-weight:650;line-height:1.4}.relay-auth .auth-input{border:1px solid var(--auth-line);width:100%;height:3.45rem;color:var(--auth-ink);background:var(--auth-surface);box-shadow:none;border-radius:7px;padding:.8rem 1rem;font-size:.94rem;font-weight:500;transition:border-color .18s,box-shadow .18s,background-color .18s}.relay-auth .auth-input::placeholder{color:#978e84;opacity:1}.relay-auth .auth-input:hover:not(:disabled){border-color:#aaa198}.relay-auth .auth-input:focus-visible{border-color:var(--auth-coral);background:#fff;outline:none;box-shadow:0 0 0 3px #ef604e29}.relay-auth .auth-input[aria-invalid=true]{border-color:#b63830}.relay-auth .auth-input--password{padding-right:3.6rem}.relay-auth .auth-password{min-width:0;position:relative}.relay-auth .auth-password__toggle{width:2.65rem;height:2.65rem;color:var(--auth-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;display:grid;position:absolute;top:50%;right:.45rem;transform:translateY(-50%)}.relay-auth .auth-password__toggle:hover{color:var(--auth-ink);background:#f1ede7}.relay-auth .auth-password__toggle svg{width:18px;height:18px}.relay-auth .auth-inline-link--small{color:var(--auth-muted);font-size:.77rem;font-weight:600}.relay-auth .auth-inline-link--small:hover,.relay-auth__switch a:hover{color:var(--auth-coral)}.relay-auth .auth-field-error{color:#a62d25;margin:0;font-size:.77rem;line-height:1.4}.relay-auth .auth-alert,.relay-auth .auth-status{border:1px solid var(--auth-line);background:var(--auth-surface);border-radius:7px;align-items:center;gap:.65rem;margin:0;padding:.8rem 1rem;font-size:.82rem;line-height:1.45;display:flex}.relay-auth .auth-alert--error{color:#92251e;background:#fff2ef;border-color:#d9a29d}.relay-auth .auth-status{color:#245d4c}.relay-auth .auth-status svg{flex:none;width:17px;height:17px}.relay-auth .auth-button{border:1px solid var(--auth-line);width:100%;min-height:3.45rem;box-shadow:none;letter-spacing:0;text-transform:none;border-radius:7px;align-items:center;gap:.75rem;padding:.8rem 1.1rem;font-size:.9rem;font-weight:700;transition:background-color .2s,border-color .2s,transform .2s;display:inline-flex}.relay-auth .auth-submit{border-color:var(--auth-ink);color:#fff;background:var(--auth-ink);justify-content:space-between;margin-top:.2rem}.relay-auth .auth-submit:hover:not(:disabled){border-color:var(--auth-coral);background:var(--auth-coral);transform:translateY(-2px)}.relay-auth .auth-google{border-color:var(--auth-line);color:var(--auth-ink);background:var(--auth-surface);justify-content:center}.relay-auth .auth-google:hover:not(:disabled){background:#fff;border-color:#aaa198}.relay-auth .auth-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.relay-auth .auth-button__arrow,.relay-auth .auth-button__spinner,.relay-auth .auth-google__mark{flex:none;width:17px;height:17px}.relay-auth .auth-button__spinner{animation:.9s linear infinite auth-spin}.relay-auth .auth-divider{color:#90877e;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;display:grid}.relay-auth .auth-divider span{background:var(--auth-line);height:1px}.relay-auth .auth-divider b{text-transform:lowercase;font-size:.75rem;font-weight:500}.relay-auth .auth-legal{color:var(--auth-muted);margin:0;font-size:.72rem;line-height:1.5}.relay-auth .auth-legal a{color:var(--auth-ink);text-underline-offset:3px;-webkit-text-decoration:underline #c9c0b5;text-decoration:underline #c9c0b5}.relay-auth__switch{color:var(--auth-muted);margin-top:1.3rem;font-size:.84rem}.relay-auth__switch a{color:var(--auth-ink);align-items:center;gap:.25rem;font-weight:700;display:inline-flex}.relay-auth__switch svg{width:14px;height:14px}.relay-auth__demo{border-top:1px solid #e4ded6;margin-top:1.2rem;padding-top:1rem}.relay-auth__demo-label{color:var(--auth-muted);font-size:.58rem}.relay-auth .relay-auth__demo-button{border-color:var(--auth-line);min-height:2.7rem;color:var(--auth-ink);background:0 0;margin-top:.55rem;font-size:.8rem;font-weight:650}.relay-auth .relay-auth__demo-button:hover:not(:disabled){background:#fff}.relay-auth__demo-copy{color:var(--auth-muted);margin:.45rem 0 0;font-size:.7rem;line-height:1.4}.relay-auth__story{background:var(--auth-cream);border-left:1px solid #e0dad1;align-items:center;min-width:0;padding:clamp(2.5rem,6vw,6.875rem);display:flex}.relay-auth__story-inner{width:min(100%,540px);margin:auto;animation:.8s cubic-bezier(.2,.8,.2,1) 80ms both auth-rise}.relay-auth__story-eyebrow{color:var(--auth-muted);font-size:.62rem}.relay-auth__story h2{letter-spacing:-.075em;text-wrap:balance;max-width:11ch;margin:1.45rem 0 0;font-size:clamp(3.25rem,5.1vw,5.9rem);font-weight:740;line-height:.94}.relay-auth__story h2 em{letter-spacing:-.085em;font-family:Georgia,Times New Roman,serif;font-weight:400}.relay-auth__story-copy{max-width:36ch;color:var(--auth-muted);margin:1.7rem 0 0;font-size:.98rem;line-height:1.58}.relay-auth__journey{margin-top:clamp(2.5rem,6vh,4rem)}.relay-auth__journey-line{background:#d1c9bf;height:1px;overflow:hidden}.relay-auth__journey-line span{background:var(--auth-coral);transform-origin:0;width:100%;height:100%;animation:1.1s cubic-bezier(.2,.8,.2,1) .35s forwards auth-line-resolve;display:block;transform:scaleX(0)}.relay-auth__journey ol{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.relay-auth__journey li{gap:.5rem;padding:.85rem .6rem 0 0;display:grid}.relay-auth__journey li+li{border-left:1px solid #d1c9bf;padding-left:.85rem}.relay-auth__journey li span{color:var(--auth-coral);letter-spacing:.08em;font-size:.62rem;font-weight:750}.relay-auth__journey li strong{font-size:.76rem;font-weight:650}.relay-auth :is(a,button):focus-visible{outline:2px solid var(--auth-coral);outline-offset:3px}@keyframes auth-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-resolve{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-line-resolve{to{transform:scaleX(1)}}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (width>=901px){.relay-auth__panel{padding-block:1.5rem}.relay-auth__content{padding-block:.75rem}.relay-auth__content h1{font-size:clamp(2.75rem,4vw,3.75rem)}.relay-auth__description{margin-top:.9rem}.relay-auth__form-area{margin-top:1rem}.relay-auth .auth-form{gap:.8rem}.relay-auth .auth-input,.relay-auth .auth-button{height:3.2rem;min-height:3.2rem}.relay-auth__switch{margin-top:1rem}}@media (width<=900px){.relay-auth__layout{grid-template-columns:minmax(0,1fr)}.relay-auth__panel{min-height:100svh}.relay-auth__content{margin:auto}.relay-auth__story{padding:2rem clamp(1.5rem,5vw,3.5rem) 2.3rem}.relay-auth__story-inner{width:min(100%,425px)}.relay-auth__story h2{max-width:16ch;margin-top:.7rem;font-size:2rem}.relay-auth__story-copy{margin-top:.85rem;font-size:.85rem}.relay-auth__journey{display:none}}@media (width<=520px){.relay-auth__panel{min-height:auto;padding:1.5rem 1.5rem 2.4rem}.relay-auth__content{padding-block:2.6rem 0}.relay-auth__content h1{font-size:clamp(2.65rem,12vw,3.35rem)}.relay-auth__description{margin-top:.9rem;font-size:.9rem}.relay-auth__form-area{margin-top:1.4rem}.relay-auth .auth-form{gap:.9rem}.relay-auth .auth-input,.relay-auth .auth-button{height:3.25rem;min-height:3.25rem}.relay-auth__switch{margin-top:1.1rem}.relay-auth__demo{margin-top:1rem}.relay-auth__story{padding:1.6rem 1.5rem 1.8rem}}@media (prefers-reduced-motion:reduce){.relay-auth *,.relay-auth :before,.relay-auth :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.relay-auth,.relay-auth__story{color:canvastext;background:canvas}.relay-auth .auth-input,.relay-auth .auth-button{border:1px solid canvastext}}
