:root{--font-space-grotesk:"Space Grotesk"}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/space-grotesk-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/space-grotesk-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}.login{--login-pad-x:clamp(20px,5.5vw,96px);--login-ease:cubic-bezier(0.2,0.7,0.2,1);position:relative;min-height:100vh;display:flex;flex-direction:column;overflow:hidden;color:var(--color-login-ink);font-family:var(--font-sans);background-color:var(--color-login-bg);background-image:linear-gradient(var(--color-login-grid-major) 1px,transparent 1px),linear-gradient(90deg,var(--color-login-grid-major) 1px,transparent 1px),linear-gradient(var(--color-login-grid-minor) 1px,transparent 1px),linear-gradient(90deg,var(--color-login-grid-minor) 1px,transparent 1px);background-size:120px 120px,120px 120px,24px 24px,24px 24px;background-position:-1px -1px}.login-decor{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;fill:none;stroke:var(--color-login-deco);stroke-width:1}.login-decor__axis{stroke-dasharray:14 5 2 5}.login-decor__text{font-family:var(--font-display);font-size:13px;fill:var(--color-login-deco);stroke:none}.login__header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:clamp(20px,3.4vw,40px) var(--login-pad-x) 0;animation:login-in .32s var(--login-ease) both}.login__brand{font-weight:var(--weight-bold);font-size:15px;letter-spacing:.18em}.login__brand,.login__sheet{font-family:var(--font-display)}.login__sheet{font-size:12px;letter-spacing:.08em;color:var(--color-login-muted)}.login__footer{justify-content:space-between;flex-wrap:wrap;gap:12px;padding:0 var(--login-pad-x) clamp(20px,3vw,32px);font-size:13px;color:var(--color-login-muted)}.login__footer,.login__main{position:relative;display:flex;align-items:center}.login__main{flex:1 1;flex-wrap:wrap;column-gap:clamp(40px,9vw,160px);row-gap:150px;padding:clamp(130px,12vw,170px) var(--login-pad-x) clamp(36px,6vw,80px)}.login-hero{align-self:flex-start;margin-top:clamp(0px,3vw,40px);flex:1 1 520px;max-width:660px}.login-hero__title{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:clamp(38px,6vw,84px);line-height:1.04;letter-spacing:-.03em;color:var(--color-login-ink);text-wrap:balance;animation:login-in .42s var(--login-ease) 80ms both}.login-hero__accent{color:var(--color-primary);white-space:nowrap}.login-panel{--login-jib-left:-90px;position:relative;flex:1 1 360px;max-width:420px;animation:login-in .4s var(--login-ease) .2s both}.login-crane{position:absolute;inset:0;z-index:2;pointer-events:none}.login-crane svg{position:absolute;overflow:visible;fill:none;stroke:var(--color-login-crane);stroke-width:.9;stroke-linejoin:round}.login-crane__jib{left:var(--login-jib-left);top:-126px;width:calc(100% + 232px - var(--login-jib-left));border-top:1.3px solid var(--color-login-crane);border-bottom:1.3px solid var(--color-login-crane)}.login-crane__mast{right:-74px;top:-186px;border-left:1.3px solid var(--color-login-crane);border-right:1.3px solid var(--color-login-crane)}.login-crane__ties{right:-232px;top:-206px}.login-crane__cab{position:absolute;right:-80px;top:-112px;width:32px;height:24px;border:1.3px solid var(--color-login-crane);border-radius:2px;background:var(--color-login-bg)}.login-crane__counterweight{position:absolute;right:-224px;top:-112px;width:42px;height:20px;background:var(--color-login-crane)}.login-crane__trolley{position:absolute;left:calc(50% - 16px);top:-112px;width:32px;height:12px;border-radius:2px;background:var(--color-login-ink);opacity:.8}.login-crane__swing{position:absolute;left:0;right:0;top:-100px;height:130px;transform-origin:50% 0;animation:login-sway 2.6s ease-in-out infinite alternate}.login-crane__cable{position:absolute;left:calc(50% - 1px);top:0;width:2px;height:60px;transform-origin:top;background:var(--color-login-cable)}.login-crane__hookbox{position:absolute;left:0;right:0;top:60px;height:50px}.login-crane .login-crane__sling{left:0;top:24px;width:100%;height:26px;opacity:0;stroke:var(--color-login-ink);stroke-width:1.5}.login-crane--lifting .login-crane__swing{animation:none}.login-crane__hook{left:50%;top:0;margin-left:-12px}.login-crane .login-crane__hook-line{stroke:var(--color-login-ink);stroke-width:2}.login-crane .login-crane__hook-block{fill:var(--color-primary);stroke:none}.login-form{position:relative;z-index:1;display:flex;flex-direction:column;gap:24px}.login-panel[data-phase=welcome] .login-form{visibility:hidden}.login-heading{display:flex;flex-direction:column;gap:10px}.login-heading__kicker,.login-welcome__kicker{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:12px;letter-spacing:.12em;color:var(--color-login-muted)}.login-heading__mark,.login-welcome__tick{width:22px;height:22px;display:grid;place-items:center;border:1px solid var(--color-login-field);border-radius:50%;font-size:11px;letter-spacing:0}.login-heading__title{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:26px;letter-spacing:-.015em;color:var(--color-login-ink)}.login-form__fields{display:flex;flex-direction:column;gap:20px}.login-form .login-alert{align-items:flex-start;padding:12px 14px;border:1px solid var(--color-login-danger-line);border-radius:var(--radius-6);background:var(--color-login-danger-bg);color:var(--color-login-danger);font-size:14px;line-height:1.5;font-weight:var(--weight-medium)}.login-form .login-alert .alert-icon{margin-top:1px;color:var(--color-login-danger)}.login-form .field__label-row{margin-bottom:7px}.login-form .field__label{font-size:14px;font-weight:var(--weight-medium);color:var(--color-login-ink)}.login-form .field__req{display:none}.login-form .field__error{margin-top:7px;color:var(--color-login-danger)}.login-field__link,.login-form .field__error{font-size:13px;font-weight:var(--weight-medium)}.login-field__link{color:var(--color-primary);text-underline-offset:3px}.login-form .input{padding:13px 14px;border:1px solid var(--color-login-field);border-radius:var(--radius-6);background:var(--color-login-surface);color:var(--color-login-ink);font-size:15px;transition:border-color .18s ease,box-shadow .18s ease}.login-form .input::placeholder{color:var(--color-login-field)}.login-form .input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-login-ring)}.login-form .input.input--error{border-color:var(--color-login-danger)}.login-form .input:disabled{background:var(--color-login-surface);color:var(--color-login-ink-2)}.login-form .input-wrap--right .input{padding-right:84px}.login-form .input-icon--right{right:6px}.login-password-toggle{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-login-ink-2);font:inherit;font-size:13px;font-weight:var(--weight-medium);cursor:pointer}.login-password-toggle:hover{background:var(--color-nav-active-bg);color:var(--color-login-ink)}.login-password-toggle:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-login-ring)}.login-form .checkbox-label{display:flex;gap:10px;min-height:24px;font-size:14px;color:var(--color-login-ink-2)}.login-form .checkbox{width:18px;height:18px;border-radius:3px}.login-form .checkbox:focus-visible{box-shadow:0 0 0 3px var(--color-login-ring)}.login-form .login-submit{position:relative;z-index:1;width:100%;height:50px;gap:10px;padding:0;border-radius:var(--radius-6);font-family:var(--font-display);font-size:16px;font-weight:var(--weight-semibold);letter-spacing:.01em;color:var(--color-login-on-accent);box-shadow:none}.login-form .login-submit:disabled{opacity:.62;cursor:not-allowed}.login-form .login-submit:focus-visible{box-shadow:0 0 0 3px var(--color-login-bg),0 0 0 6px var(--color-primary)}.login-submit__spinner{width:18px;height:18px;border:2px solid var(--color-login-spinner-track);border-top-color:var(--color-login-on-accent);border-radius:50%;animation:login-spin .7s linear infinite}.login-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.login-welcome{position:absolute;top:0;left:0;right:0;z-index:1;display:flex;flex-direction:column;gap:16px;padding-top:40px;animation:login-in .4s var(--login-ease) both}.login-welcome__kicker{color:var(--color-login-success)}.login-welcome__tick{border-color:var(--color-login-success)}.login-welcome__title{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:clamp(28px,3vw,36px);letter-spacing:-.02em;color:var(--color-login-ink)}.login-welcome__text{font-size:15px;color:var(--color-login-ink-2)}.login-welcome__bar{height:2px;overflow:hidden;background:var(--color-login-rule)}.login-welcome__bar-fill{height:100%;background:var(--color-primary);transform-origin:left;animation:login-bar 1.5s cubic-bezier(.4,0,.2,1) both}@keyframes login-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes login-spin{to{transform:rotate(1turn)}}@keyframes login-bar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes login-sway{0%{transform:rotate(-1.4deg)}to{transform:rotate(1.4deg)}}@media (prefers-reduced-motion:reduce){.login *,.login :after,.login :before{animation:none!important;transition:none!important}}@media (max-width:1000px){.login-panel{--login-jib-left:calc(8px - var(--login-pad-x))}}.login-demo{margin-top:24px;background:var(--color-divider);border-radius:10px;padding:14px}.login-demo__title{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px}.login-demo__list{display:flex;flex-direction:column;gap:6px}.login-demo__item{display:flex;align-items:center;gap:8px;padding:7px 10px;background:var(--color-surface);border:none;border-radius:7px;cursor:pointer;width:100%;text-align:left;font-size:12px}.login-demo__email{color:var(--color-text-subtle);font-size:10px}.login-demo__tag{margin-left:auto;font-size:10px;background:var(--color-primary-soft);color:var(--color-primary);padding:2px 7px;border-radius:6px;font-weight:600}