@keyframes auth-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@keyframes auth-toast-in{0%{opacity:0;transform:translate(60px)scale(.94)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes auth-toast-out{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(40px)scale(.96)}}@keyframes auth-toast-bar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes auth-spin{to{transform:rotate(360deg)}}@keyframes auth-confetti-fall{to{opacity:0;transform:translateY(105vh)rotate(760deg)}}.auth{--ink:#0e141b;--steel-900:#131b24;--steel-800:#1b2631;--steel-500:#4a5c6b;--steel-400:#6e8091;--steel-300:#9aabb8;--steel-100:#e2e8ed;--paper:#f7f9fb;--white:#fff;--hivis:#ffc93c;--hivis-deep:#e5a900;--hivis-soft:#fff3d0;--flare:#ff5a3c;--flare-soft:#ffe3dd;--amber:#f09819;--sky:#3d8fe0;--signal:#12b886;--violet:#7c6bff;--r-sm:6px;--r-md:10px;--ease:cubic-bezier(.22, .68, .32, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--fast:.18s;--mid:.34s;background:var(--paper);height:100vh;color:var(--ink);font-family:var(--font-dispatch-sans), system-ui, sans-serif;grid-template-columns:1fr 1fr;align-items:start;display:grid;overflow:hidden}.auth__aside{background:var(--steel-900);height:100vh;color:var(--steel-300);flex-direction:column;justify-content:center;padding:clamp(36px,5vw,64px);display:flex;position:sticky;top:0;overflow:hidden}.auth-brand-inline{color:inherit;text-decoration:none}.auth-brand-inline:hover{opacity:.85}.auth-brand-inline:focus-visible{outline:2px solid var(--hivis);outline-offset:3px}.auth-brand-inline span{color:var(--hivis)}.auth__aside:before{content:"";pointer-events:none;opacity:.3;background-image:linear-gradient(#9aabb82e 1px,#0000 1px),linear-gradient(90deg,#9aabb82e 1px,#0000 1px);background-size:38px 38px;position:absolute;inset:0}.auth__aside>*{z-index:1;position:relative}.auth__form{-webkit-overflow-scrolling:touch;flex-direction:column;justify-content:flex-start;height:100vh;padding:clamp(32px,5vw,60px) 24px;display:flex;overflow:hidden auto}.auth__form-inner{width:min(430px,100%);margin-block:auto;margin-inline:auto;padding-block:8px}.auth__form-inner.is-revealing{opacity:0;transform:translate(32px)}.auth__form-inner.is-visible{opacity:1;transition:opacity .72s var(--ease-out), transform .72s var(--ease-out);transform:translate(0)}.auth-eyebrow{font-family:var(--font-hivis-mono), monospace;letter-spacing:.22em;text-transform:uppercase;color:var(--steel-300);align-items:center;gap:9px;margin:0;font-size:.69rem;font-weight:600;display:inline-flex}.auth-eyebrow:before{content:"";background:var(--hivis);border-radius:2px;width:22px;height:3px;display:block}.auth-eyebrow--light{color:var(--steel-500)}.auth-eyebrow--light:before{background:var(--hivis)}.auth-display-lg{font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.04em;text-transform:uppercase;color:var(--white);margin:16px 0 0;font-size:clamp(2rem,4vw,2.75rem);font-weight:900;line-height:1.05}.auth-display-md{font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.04em;text-transform:uppercase;color:var(--ink);margin:12px 0 0;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:900;line-height:1.1}.auth-lede{max-width:42ch;color:var(--steel-400);margin:16px 0 0;font-size:.98rem;line-height:1.55}.auth-sub{color:var(--steel-400);margin:10px 0 0;font-size:.94rem}.auth-sub a{color:var(--ink);border-bottom:2px solid var(--hivis);font-weight:600;text-decoration:none}.auth-quote{border-left:3px solid var(--hivis);margin-top:34px;padding-left:18px}.auth-quote p{color:var(--steel-300);margin:0;font-size:.98rem;line-height:1.55}.auth-quote cite{font-family:var(--font-hivis-mono), monospace;color:var(--steel-400);margin-top:12px;font-size:.74rem;font-style:normal;display:block}.auth-stats{flex-wrap:wrap;gap:24px;margin-top:48px;display:flex}.auth-stats b{font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.03em;color:var(--hivis);font-size:1.5rem;font-weight:900;display:block}.auth-stats span{font-family:var(--font-hivis-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--steel-500);font-size:.68rem}.auth-fields{flex-direction:column;gap:16px;margin-top:32px;display:flex}.field{flex-direction:column;gap:7px;display:flex}.field__label-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.field__label{font-family:var(--font-hivis-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--steel-500);font-size:.71rem;font-weight:600}.field__req{color:var(--flare)}.field__forgot{font-family:var(--font-hivis-mono), monospace;color:var(--steel-400);font-size:.72rem;text-decoration:none}.field__forgot:hover{color:var(--ink)}.input,.select{border:1.5px solid var(--steel-100);border-radius:var(--r-md);background:var(--white);width:100%;color:var(--ink);transition:border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);outline:none;padding:12px 14px;font-family:inherit;font-size:.94rem}.input:focus,.select:focus{border-color:var(--ink);box-shadow:0 0 0 4px #ffc93c4d}.input.is-error,.select.is-error{border-color:var(--flare);box-shadow:0 0 0 4px var(--flare-soft)}.field__error{color:#b02d14;animation:auth-shake .34s var(--ease);align-items:center;gap:6px;font-size:.78rem;display:flex}.field__hint{color:var(--steel-400);font-size:.78rem}.field__check{color:var(--steel-500);align-items:flex-start;gap:10px;font-size:.9rem;display:flex}.field__check input{width:17px;height:17px;accent-color:var(--ink);flex-shrink:0;margin-top:2px}.btn-auth{border-radius:var(--r-md);background:var(--hivis);width:100%;color:var(--ink);font-family:var(--font-dispatch-display), sans-serif;cursor:pointer;transition:transform var(--fast) var(--ease), box-shadow var(--fast) var(--ease), opacity var(--fast) var(--ease);border:none;justify-content:center;align-items:center;gap:8px;padding:17px 30px;font-size:1.05rem;font-weight:700;display:inline-flex}.btn-auth:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #e5a90052}.btn-auth:active:not(:disabled){transform:translateY(0)scale(.985)}.btn-auth:disabled{cursor:not-allowed;opacity:.75}.btn-auth__spin{width:16px;height:16px;animation:.8s linear infinite auth-spin}.auth-divider{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:28px 0 16px;display:grid}.auth-divider:before,.auth-divider:after{content:"";background:var(--steel-100);height:1px}.auth-divider span{font-family:var(--font-hivis-mono), monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--steel-400);font-size:.68rem;font-weight:600}.demo-acc{border:1.5px solid var(--steel-100);border-radius:var(--r-md);background:var(--white);text-align:left;cursor:pointer;width:100%;transition:border-color var(--fast) var(--ease), transform var(--fast) var(--ease);align-items:center;gap:12px;margin-top:8px;padding:11px 13px;display:flex}.demo-acc:hover{border-color:var(--ink);transform:translate(3px)}.demo-acc__avatar{background:var(--steel-800);width:34px;height:34px;color:var(--hivis);font-family:var(--font-dispatch-display), sans-serif;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:inline-flex}.demo-acc__name{font-family:var(--font-dispatch-display), sans-serif;color:var(--ink);font-size:.87rem;font-weight:700;display:block}.demo-acc__meta{font-family:var(--font-hivis-mono), monospace;color:var(--steel-400);font-size:.72rem;display:block}.demo-acc__arrow{color:var(--steel-400);margin-left:auto}.role-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.role-opt{border:1.5px solid var(--steel-100);border-radius:var(--r-md);background:var(--white);text-align:center;cursor:pointer;transition:border-color var(--fast) var(--ease), background var(--fast) var(--ease), transform var(--fast) var(--ease), color var(--fast) var(--ease);flex-direction:column;align-items:center;gap:8px;padding:16px 12px;display:flex}.role-opt:hover{border-color:var(--steel-300);transform:translateY(-2px)}.role-opt.is-selected{border:2.5px solid var(--ink);background:var(--hivis-soft)}.role-opt.is-selected .role-opt__icon{color:var(--hivis-deep)}.role-opt input{opacity:0;pointer-events:none;position:absolute}.role-opt__icon{color:var(--steel-500)}.role-opt__name{font-family:var(--font-dispatch-display), sans-serif;color:var(--ink);font-size:.88rem;font-weight:700}.role-opt__desc{color:var(--steel-400);font-size:.78rem}.role-extra{opacity:0;max-height:0;transition:max-height var(--mid) var(--ease), opacity var(--mid) var(--ease);overflow:hidden}.role-extra.is-open{opacity:1;max-height:340px}.strength{grid-template-columns:repeat(4,1fr);gap:4px;margin-top:4px;display:grid}.strength i{background:var(--steel-100);border-radius:2px;height:4px;display:block}.strength[data-score="1"] i:nth-child(-n+1){background:var(--flare)}.strength[data-score="2"] i:nth-child(-n+2){background:var(--amber)}.strength[data-score="3"] i:nth-child(-n+3){background:var(--sky)}.strength[data-score="4"] i:nth-child(-n+4){background:var(--signal)}.perk-list{min-height:140px;margin:28px 0 0;padding:0;list-style:none}.perk-list li{color:var(--steel-300);align-items:flex-start;gap:10px;margin-top:12px;font-size:.92rem;display:flex}.perk-list svg{color:var(--hivis);flex-shrink:0}.auth-toasts{z-index:300;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:20px;right:20px}.auth-toast{border-radius:var(--r-md);background:var(--steel-900);min-width:270px;max-width:360px;color:var(--white);animation:auth-toast-in .42s var(--ease-out);padding:14px 16px 16px;position:relative;overflow:hidden;box-shadow:0 16px 40px #00000047}.auth-toast.is-leaving{animation:auth-toast-out .3s var(--ease) forwards}.auth-toast__row{align-items:flex-start;gap:10px;display:flex}.auth-toast__title{font-family:var(--font-dispatch-display), sans-serif;margin:0;font-size:.92rem;font-weight:700}.auth-toast__msg{color:var(--steel-300);margin:4px 0 0;font-size:.82rem}.auth-toast__bar{transform-origin:0;height:3px;animation:3.6s linear forwards auth-toast-bar;position:absolute;bottom:0;left:0;right:0}.auth-toast--success .auth-toast__bar{background:var(--signal)}.auth-toast--error .auth-toast__bar{background:var(--flare)}.auth-toast--success .auth-toast__icon{color:var(--signal)}.auth-toast--error .auth-toast__icon{color:var(--flare)}.auth-confetti{z-index:280;pointer-events:none;width:9px;height:15px;animation-name:auth-confetti-fall;animation-timing-function:linear;animation-fill-mode:forwards;position:fixed;top:-20px}@media (max-width:900px){.auth{grid-template-columns:1fr;height:auto;min-height:100vh;overflow:visible}.auth__aside{display:none}.auth__form{height:auto;min-height:100vh;overflow:visible}}@media (max-width:700px){.role-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.auth__form-inner.is-revealing,.auth__form-inner.is-visible{opacity:1;transition:none;transform:none}.field__error,.auth-toast,.auth-toast.is-leaving,.btn-auth__spin,.auth-confetti{animation:none}.demo-acc:hover,.role-opt:hover,.btn-auth:hover:not(:disabled){transform:none}}
