.login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;position:relative;z-index:1}@media (max-width:900px){.login-page{grid-template-columns:1fr}.login-brandside{display:none}}.login-brandside{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:44px 52px}.lbs-grid{position:absolute;inset:0;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:56px 56px;background-attachment:fixed;-webkit-mask-image:radial-gradient(70% 62% at 50% 40%,#000 30%,transparent 100%);mask-image:radial-gradient(70% 62% at 50% 40%,#000 30%,transparent 100%);pointer-events:none}.lbs-wm{display:flex;align-items:center;gap:11px;position:absolute;top:14px;left:8px;font-family:var(--font-display),"Bricolage Grotesque",sans-serif;font-weight:700;font-size:19px;color:var(--ink)}.lbs-wm b{color:var(--accent-text)}.lbs-wm i{font-style:normal;color:var(--faint)}.lbs-hero{position:relative}.lbs-ring{margin-bottom:26px;overflow:visible;animation:lbs-drift 9s ease-in-out infinite}@keyframes lbs-drift{0%,to{transform:translate(0)}50%{transform:translateY(-10px)}}.lbs-ring-flow{animation:lbs-cur 2.6s linear infinite}@keyframes lbs-cur{to{stroke-dashoffset:-157}}.lbs-ring-pulse{animation:lbs-pulse 2.6s ease-out infinite}@keyframes lbs-pulse{0%{r:8;opacity:.9}75%,to{r:20;opacity:0}}@media (prefers-reduced-motion:reduce){.lbs-ring,.lbs-ring-flow,.lbs-ring-pulse{animation:none!important}}.lbs-hero h1{font-family:var(--font-display),"Bricolage Grotesque",sans-serif;color:var(--ink);font-size:clamp(28px,3.4vw,40px);font-weight:750;line-height:1.12;max-width:480px;letter-spacing:-.02em}.lbs-hero h1 em{font-style:normal;color:var(--accent-text)}.lbs-hero p{margin-top:14px;max-width:440px;color:var(--muted);font-size:14.5px}.login-authside{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;position:relative}.login-toggle{position:absolute;top:20px;right:24px}.login-toggle .tbtn{color:var(--muted);border:1px solid var(--line);border-radius:8px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--surface);box-shadow:var(--inner-hi)}.login-toggle .tbtn:hover{color:var(--accent-text);border-color:var(--accent-fill)}.login-card{width:430px;max-width:94vw;background:var(--hero-grad);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-lg),var(--inner-hi);padding:30px 30px 24px;animation:clx-fade .45s var(--ease)}@keyframes clx-fade{to{opacity:1}}.login-brand{gap:10px;margin-bottom:22px}.login-brand,.login-mark{display:flex;align-items:center}.login-mark{width:36px;height:24px;flex:none;justify-content:center}.login-wm{font-family:var(--font-display),"Bricolage Grotesque",sans-serif;font-weight:700;font-size:15px;color:var(--ink);letter-spacing:-.01em}.login-wm b{color:var(--accent-text)}.login-wm .ai{color:var(--faint);font-weight:700}.login-title{font-family:var(--font-display),sans-serif;font-size:22px;font-weight:700;color:var(--ink);letter-spacing:-.015em;margin:0 0 6px}.login-sub{font-size:13px;color:var(--muted);margin:0 0 20px}.lg-mark{display:flex;align-items:center;gap:11px;margin-bottom:20px}.lg-wordmark{font-family:var(--font-display),"Bricolage Grotesque",sans-serif;font-size:21px;font-weight:750;letter-spacing:-.02em;color:var(--ink)}.lg-wordmark b{color:var(--accent-text)}.lg-mark .sub{font-size:12px;color:var(--muted);margin-top:2px}.login-tabs{display:flex;background:var(--surface-2);border:1px solid var(--line);border-radius:11px;padding:3px;gap:3px;margin:18px 0 16px}.login-tabs button{flex:1;padding:7px 0;border-radius:8px;font-size:12.5px;font-weight:650;color:var(--muted)}.login-tabs button.on{background:var(--surface-hi);color:var(--ink);box-shadow:0 1px 4px rgba(10,11,34,.25),var(--inner-hi)}.login-hint{font-size:10.5px;color:var(--faint);margin-top:12px;line-height:1.6}.login-hint b{color:var(--muted)}.login-form{gap:11px}.login-form,.login-form .field{display:flex;flex-direction:column}.login-form .field{gap:5px}.login-form .field>span{font-family:var(--font-mono),monospace;font-size:9px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--faint)}.login-form .field input,.login-form .field select{width:100%;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:9px 12px;font:inherit;font-size:13px;color:var(--ink)}.login-form .field input:focus,.login-form .field select:focus{border-color:var(--accent-fill);outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.login-submit{width:100%;justify-content:center;margin-top:6px}.login-error{margin:12px 0 0;font-size:12px;color:var(--red-text)}