.login-screen{--bg:oklch(15.5% .022 262);--bg-right:oklch(11.5% .016 264);--surface:oklch(20.5% .028 260);--line:oklch(30.5% .03 258/.7);--fg:oklch(96.5% .008 240);--fg-2:oklch(82% .012 240);--fg-3:oklch(62% .018 245);--fg-4:oklch(50% .02 248);--brand:oklch(66% .21 252);--brand-2:oklch(74% .18 252);--brand-soft:oklch(66% .21 252/.16);--ok:oklch(78% .18 162);--warn:oklch(82% .16 78);--sans:"IBM Plex Sans", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;--serif:"IBM Plex Serif", Georgia, serif;font-family:var(--sans);background:var(--bg-right);color:var(--fg);-webkit-font-smoothing:antialiased;letter-spacing:-.005em;min-height:100vh;overflow:hidden}.login-screen *,.login-screen :before,.login-screen :after{box-sizing:border-box}.login-screen .shell{min-height:100vh;display:flex}.login-screen .stage{background:radial-gradient(70% 80% at 18% 42%,oklch(25% .09 252/.5) 0%,#0000 66%),linear-gradient(150deg,oklch(20% .075 252) 0%,oklch(12.5% .045 262) 56%,oklch(9.5% .028 266) 100%);flex:60%;position:relative;overflow:hidden}.login-screen .grid-layer,.login-screen .grid-fine{will-change:transform;animation:28s linear infinite lgi-drift;position:absolute;inset:-12%}.login-screen .grid-layer{background-image:linear-gradient(oklch(100% 0 0/.05) 1px,#0000 1px),linear-gradient(90deg,oklch(100% 0 0/.05) 1px,#0000 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(90% 90% at 60% 46%,#000 0%,#0000 82%);mask-image:radial-gradient(90% 90% at 60% 46%,#000 0%,#0000 82%)}.login-screen .grid-fine{background-image:linear-gradient(oklch(100% 0 0/.022) 1px,#0000 1px),linear-gradient(90deg,oklch(100% 0 0/.022) 1px,#0000 1px);background-size:12px 12px;-webkit-mask-image:radial-gradient(60% 60% at 62% 46%,#000 0%,#0000 74%);mask-image:radial-gradient(60% 60% at 62% 46%,#000 0%,#0000 74%)}@keyframes lgi-drift{to{transform:translate(48px,48px)}}.login-screen .glow{filter:blur(18px);pointer-events:none;background:radial-gradient(circle,oklch(60% .2 252/.22) 0%,#0000 60%);width:55vmax;height:55vmax;animation:20s ease-in-out infinite alternate lgi-float;position:absolute;top:6%;right:2%}@keyframes lgi-float{0%{transform:translate(4%,-2%)scale(1)}to{transform:translate(-6%,6%)scale(1.14)}}.login-screen .blueprint{pointer-events:none;width:54%;position:absolute;top:0;bottom:0;right:-1%;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 24% 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 24% 100%)}.login-screen .blueprint svg{width:100%;height:100%;display:block;overflow:visible}.login-screen .bp-stroke{fill:none;stroke:oklch(82% .12 250/.92);stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.login-screen .bp-faint{stroke:oklch(78% .1 250/.32);stroke-width:1px}.login-screen .bp-accent{stroke:var(--brand-2);stroke-width:1.6px}.login-screen .bp-warn{stroke:var(--warn);stroke-width:1.5px}.login-screen .bp-window{fill:oklch(60% .2 252/.05);stroke:oklch(78% .12 250/.5);stroke-width:1px;vector-effect:non-scaling-stroke}.login-screen .bp-fixture{fill:oklch(62% .2 252/.08);stroke:oklch(82% .14 250/.85);stroke-width:1.2px;vector-effect:non-scaling-stroke}.login-screen .bp-dim{stroke:oklch(82% .16 78/.5);stroke-width:1px}.login-screen .bp-label{font-family:var(--mono);letter-spacing:.05em;fill:oklch(85% .1 252/.72);font-size:9.5px}.login-screen .bp-label.dim{fill:oklch(82% .16 78/.78)}.login-screen .bp-label.sm{font-size:8px}.login-screen .draw{stroke-dasharray:var(--len,1200);stroke-dashoffset:var(--len,1200);animation:lgi-draw 2.2s cubic-bezier(.65, .02, .2, 1) forwards var(--d,0s)}@keyframes lgi-draw{to{stroke-dashoffset:0}}.login-screen .pop{opacity:0;transform-box:fill-box;transform-origin:50%;animation:lgi-pop .5s cubic-bezier(.34, 1.56, .64, 1) forwards var(--d,0s);transform:scale(.55)}@keyframes lgi-pop{to{opacity:1;transform:scale(1)}}.login-screen .fade{opacity:0;animation:lgi-fade .9s ease forwards var(--d,0s)}@keyframes lgi-fade{to{opacity:1}}.login-screen .reno-sweep{transform-box:view-box;animation:5.5s cubic-bezier(.45,0,.55,1) 2.4s infinite lgi-renoSweep}@keyframes lgi-renoSweep{0%{opacity:0;transform:translate(0)}8%{opacity:1}88%{opacity:1;transform:translate(238px)}96%{opacity:0}to{opacity:0;transform:translate(238px)}}.login-screen .reno-glow{animation:5.5s ease-in-out 2.4s infinite lgi-renoGlow}@keyframes lgi-renoGlow{0%,to{fill:oklch(62% .2 252/.07)}50%{fill:oklch(74% .18 95/.16)}}.login-screen .dust{pointer-events:none;position:absolute;inset:0;overflow:hidden}.login-screen .mote{width:2px;height:2px;animation:lgi-rise-mote var(--md,10s) linear infinite var(--mdl,0s);opacity:0;background:oklch(86% .02 250/.7);border-radius:50%;position:absolute;bottom:-8px;box-shadow:0 0 5px oklch(86% .04 250/.5)}@keyframes lgi-rise-mote{0%{opacity:0;transform:translate(0)}12%{opacity:.8}88%{opacity:.3}to{opacity:0;transform:translate(14px,-82vh)}}.login-screen .content{z-index:3;flex-direction:column;justify-content:space-between;max-width:52%;height:100%;min-height:100vh;padding:clamp(2.2rem,4vw,3.6rem);display:flex;position:relative}.login-screen .brand{align-items:center;gap:13px;display:flex}.login-screen .brand-mark{width:42px;height:42px;font-family:var(--serif);color:#fff;background:linear-gradient(140deg,oklch(58% .21 252) 0%,oklch(30% .12 260) 100%);border-radius:11px;place-items:center;font-size:17px;font-weight:500;display:grid;position:relative;box-shadow:inset 0 1px oklch(100% 0 0/.18),0 8px 22px oklch(50% .2 255/.35)}.login-screen .brand-mark:after{content:"";border-radius:11px;position:absolute;inset:0;box-shadow:inset 0 0 0 1px oklch(100% 0 0/.12)}.login-screen .brand-name{font-family:var(--serif);letter-spacing:-.01em;font-size:19px;font-weight:500}.login-screen .copy{max-width:none}.login-screen .headline span{white-space:nowrap;display:block}.login-screen .eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.26em;color:var(--brand-2);white-space:nowrap;align-items:center;gap:12px;margin-bottom:22px;font-size:11px;font-weight:500;display:flex}.login-screen .eyebrow:before{content:"";background:var(--brand-2);opacity:.7;width:28px;height:1px}.login-screen .headline{font-family:var(--serif);letter-spacing:-.022em;font-size:clamp(2.6rem,4.6vw,4.4rem);font-weight:500;line-height:1.02}.login-screen .headline .accent{color:#0000;background:linear-gradient(100deg, var(--brand-2), oklch(86% .1 230));-webkit-background-clip:text;background-clip:text}.login-screen .subhead{color:oklch(85% .02 250/.6);max-width:42ch;margin-top:24px;font-size:15px;line-height:1.65}.login-screen .phases{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--fg-4);white-space:nowrap;flex-flow:row;align-items:center;font-size:11px;display:flex}.login-screen .phase{align-items:center;gap:8px;padding-right:16px;display:flex}.login-screen .phase:not(:last-child):after{content:"";background:var(--line);width:20px;height:1px;margin-left:16px}.login-screen .phase .pd{background:var(--brand-2);border-radius:50%;width:6px;height:6px;box-shadow:0 0 8px oklch(70% .2 252/.7)}.login-screen .phase:nth-child(2) .pd{background:var(--ok);box-shadow:0 0 8px oklch(78% .18 162/.6)}.login-screen .phase:nth-child(3) .pd{background:var(--warn);box-shadow:0 0 8px oklch(82% .16 78/.6)}.login-screen .phase:nth-child(4) .pd{background:oklch(74% .18 305);box-shadow:0 0 8px oklch(74% .18 305/.6)}.login-screen .panel{background:radial-gradient(ellipse 120% 80% at 70% 0%, oklch(20% .04 258/.6) 0%, transparent 60%), var(--bg-right);border-left:1px solid oklch(40% .05 258/.25);flex:0 0 40%;justify-content:center;align-items:center;padding:clamp(1.5rem,4vw,3rem);display:flex;position:relative}.login-screen .panel:before{content:"";background:linear-gradient(#0000,oklch(60% .18 252/.5),#0000);width:1px;animation:5s ease-in-out infinite lgi-edgePulse;position:absolute;top:0;bottom:0;left:-1px}@keyframes lgi-edgePulse{0%,to{opacity:.3}50%{opacity:1}}.login-screen .card{width:100%;max-width:360px}.login-screen .card-eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.24em;color:var(--fg-3);font-size:10.5px;font-weight:500}.login-screen .card h2{letter-spacing:-.03em;margin-top:14px;font-size:34px;font-weight:600}.login-screen .card .desc{color:var(--fg-3);margin-top:10px;font-size:14.5px;line-height:1.55}.login-screen .signin{cursor:pointer;width:100%;height:54px;font-family:var(--sans);letter-spacing:.01em;color:#fff;background:linear-gradient(135deg, var(--brand) 0%, oklch(58% .2 256) 100%);border:none;border-radius:13px;justify-content:center;align-items:center;gap:11px;margin-top:34px;font-size:15px;font-weight:600;transition:transform .25s cubic-bezier(.34,1.4,.64,1),box-shadow .25s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px oklch(100% 0 0/.25),0 10px 26px oklch(50% .2 255/.35)}.login-screen .signin:hover{transform:translateY(-2px);box-shadow:inset 0 1px oklch(100% 0 0/.3),0 16px 34px oklch(55% .2 255/.45)}.login-screen .signin:active{transform:translateY(0)}.login-screen .signin:disabled{cursor:not-allowed;opacity:.7}.login-screen .signin .arrow{transition:transform .3s cubic-bezier(.34,1.4,.64,1)}.login-screen .signin:hover .arrow{transform:translate(5px)}.login-screen .signin:after{content:"";background:linear-gradient(100deg,#0000,oklch(100% 0 0/.28),#0000);width:80%;height:100%;transition:left .7s;position:absolute;top:0;left:-120%;transform:skew(-18deg)}.login-screen .signin:hover:after{left:130%}.login-screen .helper{color:var(--fg-4);align-items:center;gap:8px;margin-top:22px;font-size:12.5px;display:flex}.login-screen .helper a{color:var(--fg-2);border-bottom:1px solid oklch(50% .02 248/.4);padding-bottom:1px;text-decoration:none;transition:color .2s,border-color .2s}.login-screen .helper a:hover{color:var(--brand-2);border-color:var(--brand-2)}.login-screen .auth-error{color:oklch(86% .08 25);background:oklch(45% .18 25/.14);border:1px solid oklch(60% .2 25/.3);border-radius:11px;align-items:flex-start;gap:8px;margin-top:22px;padding:11px 13px;font-size:12.5px;line-height:1.45;display:flex}.login-screen .auth-error svg{flex-shrink:0;margin-top:1px}.login-screen .status{color:var(--fg-4);align-items:center;gap:8px;font-size:12px;display:flex;position:absolute;bottom:clamp(1.5rem,3vw,2.4rem);right:clamp(1.5rem,4vw,3rem)}.login-screen .status .live{background:var(--ok);border-radius:50%;width:7px;height:7px;position:relative}.login-screen .status .live:after{content:"";border:1px solid var(--ok);border-radius:50%;animation:2.4s ease-out infinite lgi-ping;position:absolute;inset:-4px}@keyframes lgi-ping{0%{opacity:.8;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}.login-screen .rise{opacity:0;animation:lgi-riseUp .85s cubic-bezier(.22, 1, .36, 1) forwards var(--d,0s);transform:translateY(16px)}@keyframes lgi-riseUp{to{opacity:1;transform:translateY(0)}}@media (width<=980px){.login-screen{overflow:hidden auto}.login-screen .shell{flex-direction:column}.login-screen .stage{flex:none;min-height:auto}.login-screen .content{justify-content:flex-start;gap:clamp(1.8rem,6vw,2.6rem);max-width:100%;min-height:auto}.login-screen .blueprint{opacity:.5;width:46%}.login-screen .phases{flex-wrap:wrap;gap:10px 20px}.login-screen .phase{padding-right:0}.login-screen .phase:not(:last-child):after{display:none}.login-screen .panel{border-top:1px solid oklch(40% .05 258/.25);border-left:none;flex-direction:column;flex:none;align-items:center}.login-screen .panel:before{display:none}.login-screen .status{margin-top:26px;position:static}}@media (width<=600px){.login-screen .blueprint{display:none}.login-screen .content{max-width:100%}.login-screen .headline{font-size:2.4rem}.login-screen .phases{font-size:10px}}@media (prefers-reduced-motion:reduce){.login-screen *,.login-screen :before,.login-screen :after{animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.login-screen .draw{stroke-dashoffset:0}}
