
    :root{
      --bg:#060707;
      --panel:#0d100e;
      --panel-2:#101410;
      --border:rgba(255,255,255,.075);
      --border-2:rgba(255,255,255,.13);
      --text:#f3f5ef;
      --muted:#8c9388;
      --muted-2:#5b6259;
      --lime:#bdf63f;
      --lime-2:#ddff89;
      --lime-soft:rgba(189,246,63,.10);
      --purple:#8f7cff;
      --purple-soft:rgba(143,124,255,.12);
      --blue:#5cc8ff;
      --danger:#ff747d;
      --display:"Space Grotesk",sans-serif;
      --mono:"IBM Plex Mono",monospace;
    }

    *{box-sizing:border-box;margin:0;padding:0}
    html,body{min-height:100%;background:var(--bg)}
    body{
      min-height:100vh;min-height:100dvh;
      overflow-x:hidden;
      color:var(--text);
      font-family:var(--display);
      -webkit-font-smoothing:antialiased;
      background:
        radial-gradient(760px 460px at 17% 50%,rgba(143,124,255,.075),transparent 68%),
        radial-gradient(700px 430px at 82% 45%,rgba(189,246,63,.055),transparent 70%),
        var(--bg);
    }

    button,input{font:inherit}
    button,a{-webkit-tap-highlight-color:transparent}

    .noise{
      position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.15;
      background-image:radial-gradient(rgba(255,255,255,.15) .55px,transparent .65px);
      background-size:15px 15px;
      mask-image:radial-gradient(circle at 50% 50%,#000,transparent 84%);
      -webkit-mask-image:radial-gradient(circle at 50% 50%,#000,transparent 84%);
    }

    .brand{
      position:fixed;top:27px;left:31px;z-index:20;
      display:flex;align-items:center;gap:10px;
      color:var(--text);text-decoration:none;
    }
    .brand svg{width:31px;height:31px;filter:drop-shadow(0 0 10px rgba(189,246,63,.42))}
    .brand span{font-size:18px;font-weight:600;letter-spacing:-.04em}
    .brand b{color:var(--lime)}

    .page{
      min-height:100vh;min-height:100dvh;
      display:grid;
      grid-template-columns:minmax(0,1.16fr) minmax(430px,.84fr);
      overflow:hidden;
    }

    .visual{
      position:relative;
      min-height:100vh;min-height:100dvh;
      display:flex;align-items:center;
      padding:95px 48px 50px;
      border-right:1px solid var(--border);
      overflow:hidden;
    }
    .visual::before{
      content:"";position:absolute;inset:0;pointer-events:none;
      background:
        linear-gradient(rgba(255,255,255,.016) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.016) 1px,transparent 1px);
      background-size:54px 54px;
      mask-image:radial-gradient(circle at 48% 55%,#000,transparent 76%);
      -webkit-mask-image:radial-gradient(circle at 48% 55%,#000,transparent 76%);
    }

    .visual-inner{position:relative;z-index:2;width:min(760px,100%);margin:auto}
    .eyebrow{
      display:inline-flex;align-items:center;gap:8px;
      color:var(--lime-2);
      font:500 10px var(--mono);
      letter-spacing:.08em;text-transform:uppercase;
    }
    .eyebrow i{
      width:6px;height:6px;border-radius:50%;
      background:var(--lime);box-shadow:0 0 10px var(--lime);
      animation:blink 1.9s ease-in-out infinite;
    }

    .headline{
      max-width:560px;margin-top:18px;
      font-size:clamp(31px,3.25vw,48px);
      line-height:1.03;letter-spacing:-.055em;font-weight:600;
    }
    .headline span{color:var(--muted);font-weight:500}
    .sub{
      max-width:525px;margin-top:14px;
      color:var(--muted);font-size:14px;line-height:1.65;
    }

    .network{
      position:relative;height:390px;margin-top:47px;
      border:1px solid var(--border);border-radius:22px;overflow:hidden;
      background:
        radial-gradient(350px 230px at 53% 54%,rgba(189,246,63,.075),transparent 69%),
        radial-gradient(290px 200px at 42% 43%,rgba(143,124,255,.07),transparent 70%),
        rgba(255,255,255,.012);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 28px 60px rgba(0,0,0,.26);
    }
    .network::before{
      content:"";position:absolute;inset:0;opacity:.27;
      background-image:radial-gradient(rgba(255,255,255,.14) .55px,transparent .65px);
      background-size:14px 14px;
      mask-image:radial-gradient(circle at 52% 52%,#000,transparent 80%);
      -webkit-mask-image:radial-gradient(circle at 52% 52%,#000,transparent 80%);
    }

    .net-label{
      position:absolute;top:17px;left:19px;z-index:3;
      color:var(--muted-2);font:400 9px var(--mono);
      letter-spacing:.08em;text-transform:uppercase;
    }
    .net-status{
      position:absolute;top:15px;right:17px;z-index:3;
      display:flex;align-items:center;gap:6px;
      color:var(--muted);font:400 9px var(--mono);
    }
    .net-status::before{
      content:"";width:5px;height:5px;border-radius:50%;
      background:var(--lime);box-shadow:0 0 8px var(--lime);
    }

    .lines{position:absolute;inset:0;width:100%;height:100%}
    .flow{stroke-dasharray:7 10;animation:flow 4s linear infinite}

    .source{
      position:absolute;left:32px;width:177px;min-height:58px;
      padding:10px 12px;
      display:flex;align-items:center;gap:10px;
      border:1px solid var(--border);border-radius:13px;
      background:rgba(10,12,11,.87);
      box-shadow:0 14px 28px rgba(0,0,0,.22);
      backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
    }
    .s1{top:61px}.s2{top:132px}.s3{top:203px}.s4{top:274px}
    .source-ic{
      width:33px;height:33px;flex:0 0 33px;
      display:grid;place-items:center;border-radius:9px;
      border:1px solid rgba(255,255,255,.08);
      background:rgba(255,255,255,.03);color:var(--text);
    }
    .source-ic svg{width:16px;height:16px}
    .s2 .source-ic{color:var(--purple);background:var(--purple-soft);border-color:rgba(143,124,255,.2)}
    .s3 .source-ic{color:var(--blue);background:rgba(92,200,255,.1);border-color:rgba(92,200,255,.18)}
    .s4 .source-ic{color:var(--lime);background:var(--lime-soft);border-color:rgba(189,246,63,.18)}
    .source strong{display:block;font-size:11.5px;font-weight:500}
    .source span{display:block;margin-top:2px;color:var(--muted-2);font-size:9.5px}

    .core{
      position:absolute;left:54%;top:53%;
      width:122px;height:122px;transform:translate(-50%,-50%);
      display:grid;place-items:center;
      border-radius:34px;border:1px solid rgba(189,246,63,.31);
      background:
        radial-gradient(circle at 34% 23%,rgba(221,255,137,.16),transparent 34%),
        linear-gradient(145deg,#171c14,#090b09);
      box-shadow:
        0 0 0 14px rgba(189,246,63,.022),
        0 0 65px rgba(189,246,63,.14),
        inset 0 0 24px rgba(189,246,63,.05);
    }
    .core::before,.core::after{
      content:"";position:absolute;inset:-16px;
      border:1px solid rgba(189,246,63,.12);border-radius:42px;
      animation:pulse 3.8s ease-in-out infinite;
    }
    .core::after{inset:-31px;opacity:.35;animation-delay:.7s}
    .core svg{width:55px;height:55px;filter:drop-shadow(0 0 12px rgba(189,246,63,.42))}

    .output{
      position:absolute;right:28px;top:50%;
      width:174px;min-height:142px;transform:translateY(-50%);
      padding:16px;border:1px solid rgba(189,246,63,.18);border-radius:17px;
      background:linear-gradient(180deg,rgba(189,246,63,.05),transparent),rgba(10,12,11,.9);
      box-shadow:0 20px 45px rgba(0,0,0,.25);
    }
    .output small{
      color:var(--lime);font:500 8.5px var(--mono);
      letter-spacing:.07em;text-transform:uppercase;
    }
    .output strong{display:block;margin-top:9px;font-size:14px;line-height:1.25;font-weight:600}
    .output p{margin-top:7px;color:var(--muted);font-size:10.5px;line-height:1.5}
    .meter{height:5px;margin-top:16px;border-radius:999px;background:rgba(255,255,255,.05);overflow:hidden}
    .meter i{display:block;width:78%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--lime),var(--lime-2));box-shadow:0 0 10px rgba(189,246,63,.45)}

    .auth-zone{
      position:relative;
      min-height:100vh;min-height:100dvh;
      display:flex;align-items:center;justify-content:center;
      padding:78px 42px 42px;
    }
    .auth-zone::before{
      content:"";position:absolute;left:0;top:50%;
      width:125px;height:1px;transform:translateY(-50%);
      background:linear-gradient(90deg,rgba(189,246,63,.4),transparent);
      box-shadow:0 0 18px rgba(189,246,63,.16);
    }
    .auth-zone::after{
      content:"";position:absolute;left:17px;top:50%;
      width:7px;height:7px;transform:translateY(-50%);
      border-radius:50%;background:var(--lime);box-shadow:0 0 13px var(--lime);
    }

    .auth-card{
      position:relative;width:min(410px,100%);
      padding:29px 28px 25px;
      border:1px solid var(--border);border-radius:20px;
      background:
        radial-gradient(260px 130px at 50% 0%,rgba(189,246,63,.052),transparent 72%),
        rgba(13,16,14,.82);
      box-shadow:0 35px 90px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.025);
      backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
    }
    .auth-card::before{
      content:"";position:absolute;top:-1px;left:50%;
      width:118px;height:1px;transform:translateX(-50%);
      background:linear-gradient(90deg,transparent,var(--lime),transparent);
      box-shadow:0 0 18px rgba(189,246,63,.55);
    }

    .auth-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
    .protocol{color:var(--muted-2);font:400 9px var(--mono);letter-spacing:.08em}
    .secure{
      display:inline-flex;align-items:center;gap:6px;
      padding:5px 8px;border:1px solid rgba(189,246,63,.15);
      border-radius:999px;color:var(--lime);background:rgba(189,246,63,.045);
      font:500 8px var(--mono);text-transform:uppercase;letter-spacing:.07em;
    }
    .secure::before{
      content:"";width:4px;height:4px;border-radius:50%;
      background:var(--lime);box-shadow:0 0 7px var(--lime);
    }

    .auth-title{
      margin-top:24px;
      font-size:24px;line-height:1.08;letter-spacing:-.045em;font-weight:600;
    }
    .auth-desc{margin-top:8px;color:var(--muted);font-size:12.5px;line-height:1.55}

    .tabs{
      display:grid;grid-template-columns:1fr 1fr;gap:3px;
      margin-top:23px;padding:3px;
      border:1px solid var(--border);border-radius:11px;
      background:rgba(0,0,0,.24);
    }
    .tab{
      min-height:38px;border:0;border-radius:8px;
      background:transparent;color:var(--muted);
      font-size:11.5px;font-weight:500;cursor:pointer;transition:.18s;
    }
    .tab:hover{color:var(--text)}
    .tab.active{
      color:var(--text);background:rgba(255,255,255,.055);
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);
    }

    .form-view{display:none;margin-top:21px;animation:formIn .24s ease}
    .form-view.active{display:block}
    .form-grid{display:grid;gap:13px}
    .field{display:grid;gap:7px}
    .field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
    .field label{
      color:var(--muted);font:500 8.5px var(--mono);
      letter-spacing:.055em;text-transform:uppercase;
    }
    .input-wrap{position:relative}
    .input-wrap>svg{
      position:absolute;left:13px;top:50%;
      width:15px;height:15px;transform:translateY(-50%);
      color:var(--muted-2);pointer-events:none;transition:.18s;
    }
    .input{
      width:100%;height:46px;padding:0 43px 0 39px;
      border:1px solid var(--border);border-radius:10px;outline:none;
      color:var(--text);background:rgba(255,255,255,.022);
      font-size:12.5px;transition:.18s;
    }
    .input::placeholder{color:#515650}
    .input:hover{border-color:var(--border-2)}
    .input:focus{
      border-color:rgba(189,246,63,.37);
      background:rgba(189,246,63,.025);
      box-shadow:0 0 0 3px rgba(189,246,63,.045);
    }
    .input-wrap:focus-within>svg{color:var(--lime)}
    .password-toggle{
      position:absolute;right:7px;top:50%;
      width:32px;height:32px;transform:translateY(-50%);
      display:grid;place-items:center;border:0;border-radius:8px;
      color:var(--muted-2);background:transparent;cursor:pointer;transition:.18s;
    }
    .password-toggle:hover{color:var(--text);background:rgba(255,255,255,.04)}
    .password-toggle svg{width:15px;height:15px}

    .tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:1px}
    .check{
      display:inline-flex;align-items:center;gap:7px;
      color:var(--muted);font-size:10.5px;cursor:pointer;user-select:none;
    }
    .check input{
      appearance:none;width:15px;height:15px;
      display:grid;place-items:center;border:1px solid var(--border-2);
      border-radius:4px;background:rgba(255,255,255,.02);cursor:pointer;
    }
    .check input::after{
      content:"";width:7px;height:4px;
      border-left:2px solid #071005;border-bottom:2px solid #071005;
      transform:rotate(-45deg) scale(0);transition:.14s;
    }
    .check input:checked{border-color:var(--lime);background:var(--lime)}
    .check input:checked::after{transform:rotate(-45deg) scale(1)}
    .forgot{color:var(--lime);font-size:10.5px;font-weight:500;text-decoration:none}
    .forgot:hover{color:var(--lime-2)}

    .message{min-height:16px;color:var(--danger);font-size:10.5px}
    .submit{
      position:relative;width:100%;height:47px;overflow:hidden;
      border:1px solid rgba(189,246,63,.4);border-radius:10px;
      color:#0a1006;background:linear-gradient(90deg,#91c42c,var(--lime) 54%,var(--lime-2));
      box-shadow:0 12px 28px rgba(189,246,63,.11),inset 0 1px 0 rgba(255,255,255,.35);
      font-size:11.5px;font-weight:700;cursor:pointer;transition:.16s;
    }
    .submit::before{
      content:"";position:absolute;inset:0;
      background:linear-gradient(110deg,transparent 28%,rgba(255,255,255,.35) 48%,transparent 67%);
      transform:translateX(-125%);transition:.55s;
    }
    .submit:hover{
      transform:translateY(-1px);filter:brightness(1.04);
      box-shadow:0 16px 34px rgba(189,246,63,.16),inset 0 1px 0 rgba(255,255,255,.4);
    }
    .submit:hover::before{transform:translateX(125%)}
    .submit:active{transform:none}
    .submit[disabled]{opacity:.78;cursor:wait}
    .submit-inner{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:8px}
    .submit-inner svg{width:14px;height:14px}
    .spinner{
      display:none;width:14px;height:14px;
      border:2px solid rgba(7,16,5,.27);border-top-color:#071005;border-radius:50%;
      animation:spin .7s linear infinite;
    }
    .submit.loading .spinner{display:block}
    .submit.loading .arrow{display:none}

    .auth-footer{
      margin-top:17px;padding-top:15px;border-top:1px solid var(--border);
      display:flex;align-items:center;justify-content:space-between;gap:14px;
      color:var(--muted-2);font:400 8px var(--mono);
      text-transform:uppercase;letter-spacing:.055em;
    }
    .auth-footer span{display:inline-flex;align-items:center;gap:6px}
    .auth-footer i{width:5px;height:5px;border-radius:50%;background:var(--lime);box-shadow:0 0 7px var(--lime)}


    .access-flow{
      position:relative;
      margin-top:22px;
      padding-bottom:16px;
    }
    .access-flow-line{
      position:relative;
      height:1px;
      background:linear-gradient(
        90deg,
        rgba(189,246,63,.20),
        rgba(189,246,63,.52) 50%,
        rgba(255,255,255,.08)
      );
      box-shadow:0 0 12px rgba(189,246,63,.08);
    }
    .access-point{
      position:absolute;
      top:50%;
      width:7px;
      height:7px;
      transform:translate(-50%,-50%);
      border-radius:50%;
      border:1px solid rgba(189,246,63,.40);
      background:#0d100e;
      box-shadow:0 0 0 3px rgba(189,246,63,.025);
    }
    .access-point.p1{
      left:0;
      border-color:var(--lime);
      background:var(--lime);
      box-shadow:0 0 10px rgba(189,246,63,.68);
    }
    .access-point.p2{left:50%}
    .access-point.p3{left:100%}
    .access-flow small{
      position:absolute;
      left:0;
      bottom:0;
      color:var(--muted-2);
      font:400 7.5px var(--mono);
      letter-spacing:.065em;
      text-transform:uppercase;
    }
    .auth-title{margin-top:31px}

    .auth-card{
      transition:
        transform .42s cubic-bezier(.2,.8,.2,1),
        opacity .32s ease,
        filter .32s ease;
    }
    body.is-transitioning .auth-card{
      transform:translateY(-7px) scale(.987);
      opacity:.24;
      filter:blur(3px);
      pointer-events:none;
    }

    .system-transition{
      position:fixed;
      inset:0;
      z-index:999;
      display:grid;
      place-items:center;
      padding:24px;
      opacity:0;
      visibility:hidden;
      pointer-events:none;
      overflow:hidden;
      background:
        radial-gradient(520px 330px at 50% 48%,rgba(189,246,63,.085),transparent 72%),
        radial-gradient(760px 500px at 50% 50%,rgba(143,124,255,.045),transparent 76%),
        #050606;
      transition:opacity .32s ease,visibility .32s ease;
    }
    .system-transition.active{
      opacity:1;
      visibility:visible;
      pointer-events:auto;
    }

    .transition-grid{
      position:absolute;
      inset:0;
      opacity:.14;
      background:
        linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
      background-size:54px 54px;
      mask-image:radial-gradient(circle at 50% 50%,#000,transparent 74%);
      -webkit-mask-image:radial-gradient(circle at 50% 50%,#000,transparent 74%);
      transform:scale(1.045);
      transition:transform 2.1s cubic-bezier(.2,.8,.2,1),opacity .4s ease;
    }
    .system-transition.active .transition-grid{
      transform:scale(1);
    }

    .transition-scene{
      position:relative;
      z-index:2;
      width:min(480px,100%);
      text-align:center;
    }

    .transition-network{
      position:relative;
      width:300px;
      height:172px;
      margin:0 auto 18px;
    }
    .transition-network svg{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      overflow:visible;
    }
    .transition-path-base{
      stroke:rgba(255,255,255,.07);
      stroke-width:1;
      fill:none;
    }
    .transition-path-live{
      stroke:url(#transitionGlow);
      stroke-width:1.35;
      fill:none;
      stroke-dasharray:5 10;
      stroke-dashoffset:72;
      opacity:0;
    }
    .system-transition.active .transition-path-live{
      animation:pathConnect 1.6s cubic-bezier(.2,.75,.2,1) forwards;
    }
    .transition-path-live.delay-1{animation-delay:.08s!important}
    .transition-path-live.delay-2{animation-delay:.16s!important}
    .transition-path-live.delay-3{animation-delay:.24s!important}

    .transition-source-dot{
      fill:#0b0d0c;
      stroke:rgba(255,255,255,.14);
      stroke-width:1;
      opacity:.35;
    }
    .system-transition.active .transition-source-dot{
      animation:sourceWake .45s ease forwards;
    }

    .transition-logo{
      position:absolute;
      left:50%;
      top:50%;
      width:88px;
      height:88px;
      transform:translate(-50%,-50%) scale(.82);
      display:grid;
      place-items:center;
      border:1px solid rgba(189,246,63,.27);
      border-radius:27px;
      opacity:0;
      background:
        radial-gradient(circle at 34% 22%,rgba(221,255,137,.14),transparent 34%),
        linear-gradient(145deg,#171c14,#090b09);
      box-shadow:
        0 0 0 10px rgba(189,246,63,.018),
        0 0 44px rgba(189,246,63,.12),
        inset 0 0 22px rgba(189,246,63,.045);
    }
    .system-transition.active .transition-logo{
      animation:cleanLogoEnter .52s cubic-bezier(.18,.86,.22,1) .12s forwards;
    }
    .transition-logo svg{
      width:43px;
      height:43px;
      filter:drop-shadow(0 0 10px rgba(189,246,63,.40));
    }
    .transition-logo::after{
      content:"";
      position:absolute;
      inset:-1px;
      border-radius:inherit;
      border:1px solid rgba(189,246,63,.22);
      opacity:0;
    }
    .system-transition.ready .transition-logo::after{
      animation:readyFlash .58s ease forwards;
    }

    .transition-kicker{
      color:var(--lime);
      font:500 8.5px var(--mono);
      letter-spacing:.10em;
      text-transform:uppercase;
    }
    .transition-title{
      margin-top:10px;
      font-size:23px;
      line-height:1.08;
      letter-spacing:-.045em;
      font-weight:600;
      transition:opacity .18s ease,transform .18s ease;
    }
    .transition-copy{
      max-width:340px;
      min-height:38px;
      margin:8px auto 0;
      color:var(--muted);
      font-size:11.5px;
      line-height:1.55;
      transition:opacity .18s ease,transform .18s ease;
    }
    .transition-title.changing,
    .transition-copy.changing{
      opacity:0;
      transform:translateY(4px);
    }

    .transition-progress-wrap{
      margin:24px auto 0;
    }
    .transition-progress-meta{
      display:flex;
      align-items:center;
      justify-content:space-between;
      margin-bottom:8px;
      color:var(--muted-2);
      font:400 8px var(--mono);
      letter-spacing:.065em;
      text-transform:uppercase;
    }
    .transition-progress{
      position:relative;
      height:3px;
      overflow:hidden;
      border-radius:999px;
      background:rgba(255,255,255,.055);
    }
    .transition-progress i{
      position:relative;
      display:block;
      width:0;
      height:100%;
      border-radius:inherit;
      background:linear-gradient(90deg,#84b627,var(--lime),var(--lime-2));
      box-shadow:0 0 14px rgba(189,246,63,.50);
      transition:width .58s cubic-bezier(.2,.8,.2,1);
    }
    .transition-progress i::after{
      content:"";
      position:absolute;
      right:-1px;
      top:50%;
      width:7px;
      height:7px;
      transform:translate(50%,-50%);
      border-radius:50%;
      background:var(--lime-2);
      box-shadow:0 0 12px rgba(221,255,137,.9);
    }

    .transition-foot{
      margin-top:13px;
      color:var(--muted-2);
      font:400 8px var(--mono);
      letter-spacing:.055em;
      text-transform:uppercase;
    }

    .system-transition.finishing .transition-scene{
      animation:sceneFinish .48s cubic-bezier(.4,0,.2,1) forwards;
    }
    .system-transition.finishing .transition-grid{
      opacity:.04;
      transform:scale(1.06);
    }

    @keyframes cleanLogoEnter{
      to{
        opacity:1;
        transform:translate(-50%,-50%) scale(1);
      }
    }
    @keyframes pathConnect{
      0%{
        opacity:0;
        stroke-dashoffset:72;
      }
      18%{opacity:1}
      100%{
        opacity:.82;
        stroke-dashoffset:0;
      }
    }
    @keyframes sourceWake{
      to{
        opacity:1;
        stroke:rgba(189,246,63,.38);
      }
    }
    @keyframes readyFlash{
      0%{
        opacity:0;
        transform:scale(.96);
      }
      45%{
        opacity:1;
        box-shadow:0 0 26px rgba(189,246,63,.38);
      }
      100%{
        opacity:0;
        transform:scale(1.13);
      }
    }
    @keyframes sceneFinish{
      to{
        opacity:0;
        transform:scale(.96);
        filter:blur(5px);
      }
    }

    :focus-visible{outline:2px solid var(--lime);outline-offset:3px}

    @keyframes flow{to{stroke-dashoffset:-92}}
    @keyframes blink{0%,100%{opacity:1}50%{opacity:.24}}
    @keyframes pulse{0%,100%{transform:scale(.98);opacity:.28}50%{transform:scale(1.03);opacity:.7}}
    @keyframes formIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
    @keyframes spin{to{transform:rotate(360deg)}}

    @media(max-width:1180px){
      .page{grid-template-columns:minmax(0,1fr) minmax(405px,.86fr)}
      .visual{padding-left:34px;padding-right:34px}
      .source{width:154px}
      .output{width:154px;right:20px}
    }

    @media(max-width:1020px){
      .page{display:block}
      .visual{display:none}
      .brand{position:absolute;top:19px;left:21px}
      .auth-zone{min-height:100vh;min-height:100dvh;padding:77px 18px 28px}
      .auth-zone::before,.auth-zone::after{display:none}
      .auth-card{width:min(420px,100%)}
    }

    @media(max-width:520px){
      .brand{top:15px;left:14px}
      .brand svg{width:29px;height:29px}
      .brand span{font-size:17px}
      .auth-zone{align-items:flex-start;padding:68px 8px 14px}
      .auth-card{padding:24px 18px 21px;border-radius:17px}
      .auth-title{font-size:22px}
      .field-row{grid-template-columns:1fr}
      .tools{align-items:flex-start}
      .auth-footer{align-items:flex-start;flex-direction:column;gap:7px}
      .system-transition{padding:18px}
      .transition-network{width:270px;height:156px}
      .transition-logo{width:80px;height:80px;border-radius:24px}
      .transition-title{font-size:21px}
    }

    @media(max-height:780px) and (min-width:1021px){
      .visual,.auth-zone{align-items:flex-start;padding-top:82px}
      .headline{font-size:36px}
      .sub{margin-top:10px}
      .network{height:325px;margin-top:28px}
      .s1{top:49px}.s2{top:108px}.s3{top:167px}.s4{top:226px}
      .source{min-height:49px;padding:7px 10px}
      .source-ic{width:29px;height:29px;flex-basis:29px}
      .auth-card{padding-top:24px;padding-bottom:22px}
    }

    @media(prefers-reduced-motion:reduce){
      *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
    }
  
.forgot-button{
  border:0;
  padding:0;
  background:transparent;
  cursor:pointer;
}
