:root{--mono:"Source Code Pro", ui-monospace, SFMono-Regular, Menlo, monospace;--sans:"Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;--display:"Space Grotesk", "Inter", -apple-system, BlinkMacSystemFont, Helvetica, sans-serif;--radius-sm:8px;--radius:12px;--radius-lg:18px;--primary:#1a7f64;--primary-light:#25a882;--primary-dark:#085041;--primary-surface:#e8f5f1;--mint-accent:#46d9a2;--ink:#000;--ink-muted:#333;--card:#fff;--border:#e2e8f0;--line-2:var(--border);--paper:#faf8f3;--paper-2:var(--primary-surface);--ink-paper:var(--ink);--muted-paper:#5a6172}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--sans);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}.login-root{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);height:100%;min-height:100vh;display:grid;position:relative}@media (max-width:980px){.login-root{grid-template-columns:1fr}.brand{min-height:320px}}.brand{color:var(--ink);isolation:isolate;position:relative;overflow:hidden}.brand-bg{background:radial-gradient(120% 80% at 20% 10%, color-mix(in oklab, var(--accent) 18%, transparent), transparent 55%), radial-gradient(80% 60% at 80% 90%, color-mix(in oklab, var(--accent) 9%, transparent), transparent 60%), linear-gradient(160deg, var(--bg) 0%, var(--bg2) 100%);z-index:0;position:absolute;inset:0}.brand-grain{background-image:linear-gradient(to right, color-mix(in oklab, var(--ink) 6%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in oklab, var(--ink) 6%, transparent) 1px, transparent 1px);opacity:.35;z-index:1;background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 80%,#000,#0000 80%);mask-image:radial-gradient(120% 80%,#000,#0000 80%)}.brand-vignette{background:radial-gradient(60% 50% at 50% 50%, transparent, color-mix(in oklab, var(--bg) 60%, transparent) 80%, var(--bg) 100%);z-index:3;pointer-events:none;position:absolute;inset:0}.brand-content{z-index:4;flex-direction:column;gap:32px;height:100%;padding:44px 56px;display:flex;position:relative}@media (max-width:1200px){.brand-content{padding:36px 40px}}.brand-head{flex-wrap:nowrap;align-items:center;gap:14px;display:flex}.logo-mark{background:color-mix(in oklab, var(--accent) 14%, transparent);border:1px solid color-mix(in oklab, var(--accent) 30%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:11px;place-items:center;width:44px;height:44px;display:grid;overflow:hidden}.logo-text{flex-direction:column;flex-shrink:0;min-width:0;line-height:1;display:flex}.logo-name{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);font-size:22px;font-weight:600}.logo-tag{font-family:var(--mono);letter-spacing:.22em;color:var(--muted);white-space:nowrap;margin-top:5px;font-size:9.5px}.status-pill{font-family:var(--mono);letter-spacing:.04em;color:var(--muted);background:color-mix(in oklab, var(--card) 60%, transparent);border:1px solid color-mix(in oklab, var(--line) 60%, transparent);white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:7px;margin-left:auto;padding:5px 10px;font-size:10.5px;display:inline-flex}.status-dot{background:var(--mint-accent);width:6px;height:6px;box-shadow:0 0 0 3px color-mix(in oklab, var(--mint-accent) 30%, transparent);border-radius:50%;animation:2.4s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5}}.brand-spacer{flex:0 4vh}.hero{flex-direction:column;gap:18px;display:flex}.hero-title{white-space:nowrap}.hero-title br+br{display:none}.eyebrow{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#ffffffb8;font-size:11px}.hero-title{font-family:var(--display);letter-spacing:-.035em;color:var(--ink);text-wrap:balance;margin:0;font-size:clamp(40px,5.2vw,64px);font-weight:500;line-height:1.05}.hero-accent{color:var(--mint-accent);font-weight:500}.hero-sub{color:#ffffffd9;max-width:46ch;margin:0;font-size:15.5px;line-height:1.55}.brand-stats{border-top:1px solid color-mix(in oklab, var(--line) 60%, transparent);grid-template-columns:repeat(3,max-content);gap:36px;margin-top:auto;padding-top:24px;display:grid}.stat-n{font-family:var(--display);letter-spacing:-.03em;color:#fff;font-size:26px;font-weight:600;line-height:1}.stat-l{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#ffffffb3;white-space:nowrap;margin-top:8px;font-size:10.5px}.brand-foot{font-family:var(--mono);letter-spacing:.12em;color:#ffffffb3;align-items:center;gap:14px;font-size:10.5px;display:flex}.foot-item{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.foot-sep{background:color-mix(in oklab, var(--muted) 50%, transparent);border-radius:50%;width:4px;height:4px}.form-pane{background:var(--paper);height:100vh;color:var(--ink-right,#1a1a2e);flex-direction:column;padding:28px 56px 32px;display:flex;position:relative;overflow:hidden}.form-pane *{color:var(--ink-right,#1a1a2e)!important}.form-pane .muted-text,.form-pane .divider,.form-pane .form-sub,.form-pane .remember,.form-pane .form-foot{color:var(--ink-muted,#5a6172)!important}.form-pane .nav-link,.form-pane .field-hint,.form-pane .form-foot a{color:var(--primary,#1a7f64)!important}.form-pane .btn-primary{color:#fff!important;background:var(--primary,#1a7f64)!important;opacity:1!important}.form-pane .btn-sso{color:var(--ink-right,#1a1a2e)!important;background:var(--card)!important}@media (max-width:1200px){.form-pane{padding:28px 36px 32px}}.top-nav{justify-content:flex-end;align-items:center;gap:12px;font-size:13px;display:flex}.muted-text{color:var(--ink-muted)}.nav-link{color:var(--primary);border:1px solid var(--line-2);border-radius:999px;padding:7px 13px;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s}.nav-link:hover{background:var(--paper-2);border-color:#00000029}.form-wrap{flex-direction:column;flex:1;justify-content:center;align-self:center;width:100%;max-width:420px;padding:16px 0;display:flex}.form-head{margin-bottom:20px}.kicker{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#1a1a2e;margin-bottom:12px;font-size:11px}.form-title{font-family:var(--display);letter-spacing:-.03em;color:#1a1a2e;text-wrap:balance;margin:0 0 10px;font-size:36px;font-weight:500;line-height:1.1}.form-sub{color:var(--ink-muted);margin:0;font-size:14.5px;line-height:1.5}.auth-stack{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.btn-sso{border:1px solid var(--line-2);border-radius:var(--radius);width:100%;font-family:var(--sans);color:var(--ink);cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:10px;padding:12px 16px;font-size:14.5px;font-weight:500;transition:background .15s,border-color .15s,transform 50ms;display:flex}.btn-sso:hover{background:var(--paper-2);border-color:#00000029}.btn-sso:active{transform:translateY(1px)}.btn-sso.muted{color:var(--ink-muted);cursor:not-allowed;position:relative}.btn-sso.muted:hover{background:#fff}.btn-sso .soon{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;background:var(--paper-2);border:1px solid var(--line-2);border-radius:999px;margin-left:6px;padding:2px 6px;font-size:9.5px}.divider{color:var(--ink-muted);align-items:center;gap:12px;margin:6px 0 16px;font-size:12px;display:flex}.divider:before,.divider:after{content:"";background:var(--line-2);flex:1;height:1px}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-form *{color:#1a1a2e!important}.auth-form .field-hint{color:var(--primary)!important}.auth-form .divider,.auth-form .remember{color:var(--ink-muted)!important}.field{flex-direction:column;gap:7px;display:flex}.field-label{color:#1a1a2e;white-space:nowrap;justify-content:space-between;align-items:baseline;font-size:12.5px;font-weight:500;display:flex}.field-hint{color:var(--primary);font-size:12px;text-decoration:none}.field-hint:hover{color:var(--primary-dark)}.field-hint.err{color:#c4452a;font-size:11.5px;font-style:italic}.input-wrap{border:1px solid var(--line-2);border-radius:var(--radius);background:#fff;align-items:center;padding:0 12px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.field.focused .input-wrap{border-color:var(--ink-paper);box-shadow:0 0 0 3px #0a2a220f}.input-wrap svg{color:var(--muted-paper);flex-shrink:0}.input-wrap input{font-family:var(--sans);color:#1a1a2e;background:0 0;border:0;outline:0;flex:1;padding:13px 10px;font-size:14.5px}.input-wrap input::placeholder{color:color-mix(in oklab, var(--muted-paper) 70%, transparent)}.eye-btn{color:var(--muted-paper);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:6px;display:grid}.eye-btn:hover{color:var(--ink-paper);background:var(--paper-2)}.remember{cursor:pointer;color:var(--ink-muted);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;margin-top:2px;font-size:13px;display:flex}.remember input{display:none}.remember .check{border:1.5px solid var(--line-2);color:#0000;border-radius:5px;place-items:center;width:18px;height:18px;transition:all .15s;display:grid}.remember input:checked+.check{color:#fff;background:#1a1a2e;border-color:#1a1a2e}.btn-primary{border:1px solid var(--primary);background:var(--primary);color:#fff;border-radius:var(--radius);width:100%;font-family:var(--sans);letter-spacing:.01em;cursor:pointer;opacity:1;justify-content:center;align-items:center;gap:10px;margin-top:10px;padding:14px 18px;font-size:14.5px;font-weight:500;transition:transform 60ms,background .15s;display:inline-flex}.btn-primary:disabled{opacity:.5;cursor:not-allowed;background:var(--primary);border-color:var(--primary);color:#fff}.btn-primary:not(:disabled):hover{background:var(--primary-dark);border-color:var(--primary-dark)}.btn-primary:not(:disabled):active{transform:translateY(1px)}.btn-primary.ready{background:var(--primary);color:#fff;opacity:1}.spin{animation:.9s linear infinite spinrot}@keyframes spinrot{to{transform:rotate(360deg)}}.form-foot{border-top:1px solid var(--line-2);color:var(--ink-muted);justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:16px;font-size:12px;display:flex}.form-foot a{color:var(--primary);border-bottom:1px solid var(--line-2);text-decoration:none}.form-foot a:hover{border-color:var(--primary)}@media (max-width:600px){.form-foot{flex-direction:column;align-items:flex-start;gap:6px}.brand-stats{grid-template-columns:repeat(3,1fr);gap:24px}}
