:root{--bg-0:#070809;--bg-1:#0d0f12;--bg-2:#13161b;--bg-3:#1a1e25;--line:#23272f;--line-soft:#1c2026;--text-0:#eef0f3;--text-1:#9aa3b2;--text-2:#757f94;--blue:#1652f0;--blue-text:#5d89ff;--blue-soft:#1652f024;--green:#00d395;--green-soft:#00d3951f;--red:#ff4d6a;--red-soft:#ff4d6a1f;--mono:var(--font-mono), monospace;--sans:var(--font-sans), sans-serif;--r-sm:8px;--r-md:12px;--r-lg:16px}.login-page-body *{box-sizing:border-box}.login-page-body,.login-page-body{background:var(--bg-0);color:var(--text-0);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;padding:0}.login-page-body{justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-page-body .login-page-body:before{content:"";z-index:1;pointer-events:none;background-image:linear-gradient(#23272f1f 1px,#0000 1px),linear-gradient(90deg,#23272f1f 1px,#0000 1px);background-position:50%;background-size:40px 40px;width:100%;height:100%;position:absolute;top:0;left:0}.login-page-body .glow-bg{pointer-events:none;z-index:2;background:radial-gradient(circle,#1652f017 0%,#1652f000 70%);width:520px;height:520px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.login-page-body .login-container{z-index:10;width:100%;max-width:610px;padding:24px;position:relative}.login-page-body .card{border-radius:var(--r-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0d0f12d9;border:1px solid #ffffff14;overflow:hidden;box-shadow:inset 0 1px #ffffff0d,0 4px 6px -1px #0003,0 20px 45px -1px #000000a6}.login-page-body .card-head{border-bottom:1px solid var(--line-soft);flex-direction:column;align-items:center;padding:44px 44px 28px;display:flex}.login-page-body .brand{text-align:left;flex-direction:row;align-items:center;gap:18px;display:flex}.login-page-body .brand-mark{border-radius:var(--r-md);background:linear-gradient(135deg, var(--blue), #5b8bff);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;font-size:20px;font-weight:800;display:flex;box-shadow:0 4px 12px #1652f04d}.login-page-body .brand-name{letter-spacing:.4px;font-size:21px;font-weight:800}.login-page-body .brand-sub{color:var(--text-2);font-size:11px;font-family:var(--mono);letter-spacing:.8px;text-transform:uppercase;margin-top:4px}.login-page-body .card-body{padding:44px}.login-page-body .form-group{margin-bottom:22px}.login-page-body .form-group label{text-transform:uppercase;letter-spacing:1px;color:var(--text-2);margin-bottom:10px;font-size:10.5px;font-weight:700;display:block}.login-page-body .input-text{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--text-0);font-size:14px;font-family:var(--sans);width:100%;padding:13px 16px;transition:border-color .15s,box-shadow .15s}.login-page-body .input-text:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #1652f026}.login-page-body .btn{background:var(--blue);color:#fff;border-radius:var(--r-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;width:100%;padding:13px 20px;font-size:14px;font-weight:600;transition:background .15s,transform .1s,box-shadow .15s;display:flex}.login-page-body .btn:hover{background:#2b62ff;box-shadow:0 4px 14px #1652f059}.login-page-body .btn:active{transform:scale(.98)}.login-page-body .form-footer{color:var(--text-1);justify-content:space-between;align-items:center;margin-top:24px;font-size:13px;display:flex}.login-page-body .checkbox-wrap{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:flex}.login-page-body .checkbox-wrap input{width:15px;height:15px;accent-color:var(--blue);cursor:pointer;margin:0}.login-page-body .link{color:var(--blue);transition:color .15s}.login-page-body .link:hover{color:#5b8bff}.login-page-body .validation-pipeline{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-sm);flex-direction:column;gap:14px;padding:20px;display:none}.login-page-body .val-step{color:var(--text-2);align-items:center;gap:14px;font-size:13px;display:flex}.login-page-body .val-step.pending{color:var(--text-1)}.login-page-body .val-step.passed{color:var(--green)}.login-page-body .val-step.failed{color:var(--red)}.login-page-body .val-step .indicator{border:1.5px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:10.5px;display:flex}.login-page-body .val-step.passed .indicator{background:var(--green-soft)}.login-page-body .val-step.failed .indicator{background:var(--red-soft)}.login-page-body .val-step.loading .indicator{border-top-color:var(--blue);animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-page-body .dev-shortcuts-inline{border-top:1px dashed var(--line);margin-top:32px;padding-top:24px}.login-page-body .dev-shortcuts-inline-title{color:var(--text-2);font-size:11px;font-family:var(--mono);text-transform:uppercase;text-align:center;letter-spacing:.5px;margin-bottom:14px;font-weight:700}.login-page-body .dev-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.login-page-body .dev-btn{background:var(--bg-2);border:1px solid var(--line);color:var(--text-1);border-radius:var(--r-sm);cursor:pointer;text-align:center;width:100%;padding:12px 16px;font-size:12px;font-weight:600;transition:background .15s,color .15s}.login-page-body .dev-btn:hover{background:var(--bg-3);color:var(--text-0)}
