.auth{grid-template-columns:minmax(0,1fr) minmax(440px,40%);min-height:100dvh;display:grid}.auth-art{gap:var(--space-6);height:100dvh;padding:var(--space-10) var(--space-12);background:radial-gradient(120% 90% at 50% 42%, var(--art-bg-1) 0%, var(--art-bg-2) 100%);border-right:1px solid var(--line);grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:sticky;top:0;overflow:hidden}.auth-art__eyebrow{align-items:center;gap:var(--space-2);display:inline-flex}.auth-art__pulse{background:var(--accent);width:6px;height:6px;box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 50%, transparent);animation:live 2.4s var(--ease-out) infinite;border-radius:50%}@keyframes live{70%,to{box-shadow:0 0 0 7px #0000}}.auth-art__svg{place-self:center;width:100%;height:100%;min-height:0;overflow:visible}.auth-art__copy{gap:var(--space-3);max-width:44rem;display:grid}.auth-display{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:clamp(2.25rem,.9rem + 2.5vw,3.75rem);font-weight:400;line-height:1}.auth-display em{color:var(--accent)}.auth-art__sub{max-width:42ch;color:var(--ink-2);font-size:var(--text-md)}.auth-panel{align-items:center;gap:var(--space-10);padding:var(--space-10) clamp(var(--space-6), 5vw, var(--space-16));background:var(--surface);flex-direction:column;display:flex}.brand,.auth-card,.auth-legal{width:min(100%,400px)}.brand{color:var(--ink);font-size:var(--text-md);letter-spacing:-.01em;align-items:center;gap:10px;font-weight:650;display:inline-flex}.brand:hover{text-decoration:none}.brand__mark{width:26px;height:26px}.auth-card{transition:height var(--dur-3) var(--ease-out);margin-block:auto;margin-inline:-4px;overflow:hidden}.auth-screen{gap:var(--space-5);animation:screen-in var(--dur-3) var(--ease-out);padding:4px;display:grid}@keyframes screen-in{0%{opacity:0;transform:translateY(8px)}}.auth-head{gap:var(--space-2);justify-items:start;display:grid}.auth-head>.icon-tile,.auth-head>.org-tile{margin-bottom:var(--space-3)}.auth-title{font-family:var(--font-display);letter-spacing:-.015em;font-size:2.375rem;font-weight:400;line-height:1.05}.auth-lede{color:var(--ink-2)}.auth-email{color:var(--ink);overflow-wrap:anywhere;font-weight:600}.auth-form{gap:var(--space-4);display:grid}.auth-form>.btn--primary{margin-top:var(--space-1)}.auth-small{font-size:var(--text-xs)}.auth-foot{color:var(--ink-3);font-size:var(--text-sm)}.auth-steps{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);counter-reset:step;font-size:var(--text-sm);color:var(--ink-2);list-style:none;display:grid}.auth-steps li{gap:var(--space-3);counter-increment:step;grid-template-columns:auto 1fr;display:grid}.auth-steps li:before{content:counter(step);border:1px solid var(--line-strong);width:20px;height:20px;font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--ink);border-radius:50%;place-items:center;display:grid}.org-tile{border-radius:var(--radius-md);background:var(--ink);width:48px;height:48px;color:var(--paper);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.04em;place-items:center;font-weight:600;display:grid}.auth-loading{justify-content:center;align-items:center;gap:var(--space-3);min-height:12rem;color:var(--ink-2);font-size:var(--text-sm);display:flex}.auth-spinner{border:2px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.auth-legal{gap:var(--space-2);color:var(--ink-3);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.auth-legal a{color:inherit}.demo{right:calc(var(--space-4) + env(safe-area-inset-right));bottom:calc(var(--space-4) + env(safe-area-inset-bottom));z-index:10;font-size:var(--text-xs);position:fixed}.demo__toggle{align-items:center;gap:var(--space-2);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--surface) 88%, transparent);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(12px);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none;padding:8px 14px;list-style:none;display:inline-flex}.demo__toggle::-webkit-details-marker{display:none}.demo__dot{background:var(--debit);border-radius:50%;width:6px;height:6px}.demo__menu{right:0;bottom:calc(100% + var(--space-2));width:200px;padding:var(--space-2);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card);gap:2px;display:grid;position:absolute}.demo__menu .eyebrow{padding:var(--space-2) var(--space-2) var(--space-1)}.demo__row{grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.demo__btn{border-radius:var(--radius-sm);color:var(--ink-2);font-size:var(--text-xs);text-align:left;background:0 0;border:0;padding:7px 10px;font-weight:600}.demo__row .demo__btn{text-align:center}.demo__btn:hover{color:var(--ink);background:var(--surface-sunken)}.demo__btn[aria-current],.demo__btn[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.op-grid line{stroke:var(--art-grid);stroke-width:1px;vector-effect:non-scaling-stroke}.op-face{stroke:var(--art-edge);stroke-width:1px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.op-face--top{fill:var(--art-face-top)}.op-face--left{fill:var(--art-face-left)}.op-face--right{fill:var(--art-face-right)}.op-slab__lid{fill:var(--art-face-top);stroke:var(--art-edge);stroke-width:1px;vector-effect:non-scaling-stroke}.op-floor line{stroke:var(--art-edge);stroke-width:1px;opacity:.35;vector-effect:non-scaling-stroke}.op-block--hub .op-face--top{fill:var(--art-hub-top)}.op-hub-core{fill:var(--accent);opacity:.22;animation:hub-breathe 4.5s var(--ease-in-out) infinite}@keyframes hub-breathe{50%{opacity:.42}}.op-rail{fill:none;stroke:var(--art-track);stroke-width:1.25px;stroke-dasharray:2 4;vector-effect:non-scaling-stroke}.op-comet{fill:none;stroke:var(--accent);stroke-width:2.6px;stroke-linecap:round;stroke-dasharray:.24 2;stroke-dashoffset:.24px;animation:comet var(--cycle) var(--delay) infinite linear}.op-comet--halo{stroke-width:9px;opacity:.5}.op-route--out .op-comet{stroke:var(--debit)}@keyframes comet{0%{stroke-dashoffset:.24px;animation-timing-function:cubic-bezier(.45,0,.25,1)}42%,to{stroke-dashoffset:-1px}}.op-roof-flash{fill:var(--accent);opacity:0;pointer-events:none;animation:roof var(--cycle) var(--delay) infinite}.op-roof-flash--out{fill:var(--debit)}@keyframes roof{0%,39%{opacity:0}44%{opacity:.38}72%,to{opacity:0}}.op-label{font-family:var(--font-mono);letter-spacing:.08em;fill:var(--art-label);paint-order:stroke;stroke:var(--art-bg-1);stroke-width:3px;stroke-linejoin:round;font-size:6.5px}.op-label--hub{fill:var(--ink);font-weight:600}.op-caption__inner{opacity:0;transform-box:fill-box;transform-origin:50%;animation:caption var(--cycle) var(--delay) infinite}.op-caption rect{fill:var(--surface);stroke:var(--line-strong);stroke-width:1px;vector-effect:non-scaling-stroke}.op-caption text{font-family:var(--font-mono);fill:var(--ink);font-size:7px}.op-caption__tick{fill:none;stroke:var(--accent);stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.op-caption--out .op-caption__tick{stroke:var(--debit)}@keyframes caption{0%,40%{opacity:0;transform:translateY(4px)}45%,66%{opacity:1;transform:none}72%,to{opacity:0;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.op-comet,.op-roof-flash,.op-hub-core,.op-caption__inner,.auth-art__pulse{animation:none}.op-caption--still .op-caption__inner{opacity:1;transform:none}}@media (width<=1180px){.auth-art{padding:var(--space-8)}}@media (width<=900px){.auth{grid-template-columns:1fr}.auth-art{gap:var(--space-4);height:auto;padding:calc(var(--space-6) + env(safe-area-inset-top)) calc(var(--space-4) + env(safe-area-inset-right)) var(--space-8) calc(var(--space-4) + env(safe-area-inset-left));border-right:0;border-bottom:1px solid var(--line);grid-template-rows:auto auto auto;position:relative}.auth-art__svg{max-height:240px}.auth-display{font-size:2rem}.auth-art__sub{display:none}.auth-panel{gap:var(--space-8);padding:var(--space-8) calc(var(--space-4) + env(safe-area-inset-right)) calc(var(--space-16) + var(--space-4) + env(safe-area-inset-bottom)) calc(var(--space-4) + env(safe-area-inset-left))}.auth-panel .brand{display:none}}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/instrument-sans-latin-wght-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/instrument-sans-latin-ext-wght-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-latin-400-italic.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin-wght-normal.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f6f5f1;--surface:#fdfcfa;--surface-sunken:#efede7;--ink:#0e1014;--ink-2:#4a4f57;--ink-3:#7c818a;--line:#e3e1da;--line-strong:#cfccc3;--accent:#0b6e55;--accent-hover:#095c47;--accent-ink:#fff;--accent-soft:#e2f0eb;--debit:#c2462b;--danger:#b42318;--danger-soft:#fdecea;--info:#1f4fbf;--info-soft:#e9eefb;--art-bg-1:#f6f5f1;--art-bg-2:#ecebe5;--art-grid:#0e101412;--art-edge:#0e101438;--art-face-top:#fdfcfa;--art-face-left:#e9e7e0;--art-face-right:#dcd9d0;--art-hub-top:#e2f0eb;--art-label:#4a4f57;--art-track:#0e10141f;--shadow-sm:0 1px 2px #0e10140d;--shadow-card:0 1px 2px #0e10140a, 0 16px 40px -16px #0e101424;--focus-ring:0 0 0 3px #0b6e5547;--font-sans:"Instrument Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:"Instrument Serif", ui-serif, Georgia, "Times New Roman", serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;--text-2xs:.6875rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:.9375rem;--text-md:1.0625rem;--text-lg:1.375rem;--text-xl:1.75rem;--text-display:clamp(2.5rem, 1.2rem + 3.2vw, 4.25rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--control-h:2.75rem;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-1:.12s;--dur-2:.2s;--dur-3:.36s}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0a0c10;--surface:#101319;--surface-sunken:#0c0e13;--ink:#eceef1;--ink-2:#a4a9b2;--ink-3:#6c727c;--line:#1f232b;--line-strong:#2d323c;--accent:#34c296;--accent-hover:#4fd3aa;--accent-ink:#04130e;--accent-soft:#34c2961f;--debit:#f07a5a;--danger:#f97066;--danger-soft:#f970661f;--info:#7aa2ff;--info-soft:#7aa2ff1f;--art-bg-1:#0d1016;--art-bg-2:#07090c;--art-grid:#8cc8ff12;--art-edge:#aad2ff47;--art-face-top:#141922;--art-face-left:#0f131a;--art-face-right:#0b0e14;--art-hub-top:#34c29629;--art-label:#8c929c;--art-track:#aad2ff1a;--shadow-sm:0 1px 2px #0006;--shadow-card:0 1px 2px #0006, 0 24px 48px -20px #0009;--focus-ring:0 0 0 3px #34c29659}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0a0c10;--surface:#101319;--surface-sunken:#0c0e13;--ink:#eceef1;--ink-2:#a4a9b2;--ink-3:#6c727c;--line:#1f232b;--line-strong:#2d323c;--accent:#34c296;--accent-hover:#4fd3aa;--accent-ink:#04130e;--accent-soft:#34c2961f;--debit:#f07a5a;--danger:#f97066;--danger-soft:#f970661f;--info:#7aa2ff;--info-soft:#7aa2ff1f;--art-bg-1:#0d1016;--art-bg-2:#07090c;--art-grid:#8cc8ff12;--art-edge:#aad2ff47;--art-face-top:#141922;--art-face-left:#0f131a;--art-face-right:#0b0e14;--art-hub-top:#34c29629;--art-label:#8c929c;--art-track:#aad2ff1a;--shadow-sm:0 1px 2px #0006;--shadow-card:0 1px 2px #0006, 0 24px 48px -20px #0009;--focus-ring:0 0 0 3px #34c29659}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--paper);min-height:100dvh;color:var(--ink);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01", "cv11";line-height:1.5}img,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3{letter-spacing:-.01em;text-wrap:balance;font-weight:600;line-height:1.2}p{text-wrap:pretty}a{color:var(--accent);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[tabindex="-1"]:focus:not(:focus-visible){outline:none}::selection{background:var(--accent-soft);color:var(--ink)}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.btn{--btn-bg:transparent;--btn-fg:var(--ink);--btn-border:transparent;justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--space-5);border:1px solid var(--btn-border);border-radius:var(--radius-md);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--text-base);white-space:nowrap;transition:background-color var(--dur-1) var(--ease-out), border-color var(--dur-1) var(--ease-out), box-shadow var(--dur-1) var(--ease-out), transform var(--dur-1) var(--ease-out);font-weight:600;line-height:1;display:inline-flex;position:relative}.btn:active:not(:disabled){transform:translateY(1px)}.btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn:disabled{cursor:not-allowed;opacity:.55}.btn--primary{--btn-bg:var(--accent);--btn-fg:var(--accent-ink);box-shadow:var(--shadow-sm), inset 0 1px 0 #ffffff1f}.btn--primary:hover:not(:disabled){--btn-bg:var(--accent-hover)}.btn--secondary{--btn-bg:var(--surface);--btn-border:var(--line-strong);box-shadow:var(--shadow-sm)}.btn--secondary:hover:not(:disabled){--btn-border:var(--ink-3);--btn-bg:var(--paper)}.btn--ghost{--btn-fg:var(--ink-2);padding-inline:var(--space-3)}.btn--ghost:hover:not(:disabled){--btn-fg:var(--ink);--btn-bg:var(--surface-sunken)}.btn--block{width:100%}.btn__icon{flex:none;width:18px;height:18px}.btn[data-loading=true]{color:#0000;pointer-events:none}.btn[data-loading=true]:after{content:"";border:2px solid var(--btn-fg);border-right-color:#0000;border-radius:50%;width:18px;height:18px;margin:auto;animation:.7s linear infinite spin;position:absolute;inset:0}.btn[data-loading=true]>*{visibility:hidden}@keyframes spin{to{transform:rotate(360deg)}}.link{color:var(--accent);font-weight:600;font-size:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0;text-decoration:none}.link:hover{text-underline-offset:3px;text-decoration:underline}.link--muted{color:var(--ink-2);font-weight:500}.field{gap:var(--space-2);display:grid}.field__top{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.field__label{font-size:var(--text-sm);color:var(--ink);font-weight:600}.field__hint{font-size:var(--text-xs);color:var(--ink-3)}.field__error{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--danger);font-weight:500;display:flex}.control{align-items:center;display:flex;position:relative}.input{width:100%;min-height:var(--control-h);padding:0 var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);transition:border-color var(--dur-1) var(--ease-out), box-shadow var(--dur-1) var(--ease-out);font-size:1rem}.input::placeholder{color:var(--ink-3)}.input:hover:not(:disabled,[readonly]){border-color:var(--ink-3)}.input:focus{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}.input[aria-invalid=true]{border-color:var(--danger)}.input[aria-invalid=true]:focus{box-shadow:0 0 0 3px var(--danger-soft)}.input[readonly]{background:var(--surface-sunken);color:var(--ink-2)}.input--with-lead{padding-left:calc(var(--space-4) + 22px)}.control__lead{left:var(--space-4);width:16px;height:16px;color:var(--ink-3);pointer-events:none;position:absolute}.divider{align-items:center;gap:var(--space-3);color:var(--ink-3);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.alert{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);border:1px solid #0000;grid-template-columns:auto 1fr;align-items:start;line-height:1.45;display:grid}.alert svg{width:18px;height:18px;margin-top:1px}.alert--info{background:var(--info-soft);color:var(--ink);border-color:color-mix(in srgb, var(--info) 22%, transparent)}.alert--info svg{color:var(--info)}.alert--success{background:var(--accent-soft);color:var(--ink);border-color:color-mix(in srgb, var(--accent) 24%, transparent)}.alert--success svg{color:var(--accent)}.alert--error{background:var(--danger-soft);color:var(--ink);border-color:color-mix(in srgb, var(--danger) 24%, transparent)}.alert--error svg{color:var(--danger)}.eyebrow{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-weight:500}.icon-tile{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);width:48px;height:48px;box-shadow:var(--shadow-sm);color:var(--accent);place-items:center;display:grid}.icon-tile svg{width:22px;height:22px}.icon-tile--danger{color:var(--danger)}
