:root{--bg:#07111f;--bg-2:#0b1628;--panel:rgba(11,22,40,.72);--panel-2:rgba(15,28,49,.82);--panel-solid:#0f1c31;--text:#eef4ff;--muted:#9eb0c9;--muted-2:#7f92ad;--line:hsla(0,0%,100%,.08);--line-strong:hsla(0,0%,100%,.14);--input:hsla(0,0%,100%,.04);--input-hover:hsla(0,0%,100%,.06);--input-focus:hsla(0,0%,100%,.08);--brand:#7c5cff;--brand-2:#5be7ff;--brand-3:#8ef7c8;--danger:#ff6f91;--shadow-xl:0 30px 80px rgba(0,0,0,.45),0 8px 24px rgba(0,0,0,.25);--shadow-lg:0 20px 50px rgba(0,0,0,.34),0 6px 18px rgba(0,0,0,.18);--shadow-sm:0 8px 20px rgba(0,0,0,.16);--radius-xl:28px;--radius-lg:20px;--radius-md:16px;--radius-sm:12px;--ring:0 0 0 1px rgba(124,92,255,.45),0 0 0 5px rgba(124,92,255,.14);--maxw:1180px}*,:after,:before{box-sizing:border-box}body,html{min-height:100%}body{margin:0;color:var(--text);background:radial-gradient(1000px 600px at 10% 0,rgba(124,92,255,.22),transparent 60%),radial-gradient(900px 580px at 100% 8%,rgba(91,231,255,.14),transparent 58%),radial-gradient(900px 600px at 50% 100%,rgba(142,247,200,.08),transparent 60%),linear-gradient(180deg,var(--bg-2) 0,var(--bg) 100%);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.loginPage{position:relative;min-height:100vh;overflow:hidden;isolation:isolate}.loginPage:after,.loginPage:before{content:"";position:absolute;inset:auto;pointer-events:none;filter:blur(10px);z-index:0}.loginPage:before{top:-140px;left:-120px;background:radial-gradient(circle,rgba(124,92,255,.28),transparent 65%)}.loginPage:after,.loginPage:before{width:420px;height:420px;border-radius:999px}.loginPage:after{right:-120px;bottom:-120px;background:radial-gradient(circle,rgba(91,231,255,.18),transparent 65%)}.loginShell{position:relative;z-index:1;min-height:100vh;max-width:var(--maxw);margin:0 auto;padding:32px 20px;display:grid;grid-template-columns:1.08fr .92fr;grid-gap:28px;gap:28px;align-items:center}.loginHero{position:relative;padding:40px 24px 40px 8px}.loginBadge{display:inline-flex;align-items:center;gap:10px;min-height:38px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:hsla(0,0%,100%,.04);color:#d8e6ff;font-size:13px;font-weight:700;letter-spacing:.02em;box-shadow:var(--shadow-sm);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.loginBadge__dot{width:8px;height:8px;border-radius:999px;background:linear-gradient(180deg,var(--brand-2),var(--brand-3));box-shadow:0 0 18px rgba(91,231,255,.65)}.loginHero__title{margin:22px 0 0;max-width:10ch;font-size:clamp(2.8rem,6vw,5.6rem);line-height:.96;letter-spacing:-.05em;font-weight:900;color:#f6f9ff}.loginHero__titleAccent{display:block;background:linear-gradient(135deg,#fff,#a9bcff 34%,#8be8ff 72%,#a3ffd3);-webkit-background-clip:text;background-clip:text;color:transparent}.loginHero__copy{margin:20px 0 0;max-width:560px;color:var(--muted);font-size:17px;line-height:1.7}.loginHero__points{margin:30px 0 0;padding:0;list-style:none;display:grid;grid-gap:14px;gap:14px}.loginHero__point{display:grid;grid-template-columns:42px 1fr;grid-gap:14px;gap:14px;align-items:start;max-width:520px}.loginHero__pointIcon{width:42px;height:42px;border-radius:14px;border:1px solid var(--line);background:linear-gradient(180deg,hsla(0,0%,100%,.08),hsla(0,0%,100%,.02)),hsla(0,0%,100%,.03);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06),var(--shadow-sm);display:grid;place-items:center;color:#dce7ff;font-size:16px;font-weight:800}.loginHero__pointTitle{color:var(--text);font-size:15px;font-weight:800;letter-spacing:-.01em}.loginHero__pointText{margin-top:4px;color:var(--muted);font-size:14px;line-height:1.6}.loginCardWrap{display:flex;justify-content:center}.loginCard{position:relative;width:min(100%,460px);border-radius:var(--radius-xl);border:1px solid var(--line);background:linear-gradient(180deg,hsla(0,0%,100%,.07),hsla(0,0%,100%,.03)),var(--panel);box-shadow:var(--shadow-xl);backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px);overflow:hidden}.loginCard:before{content:"";position:absolute;inset:0 0 auto 0;height:1px;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.32) 20%,hsla(0,0%,100%,.1) 50%,hsla(0,0%,100%,.32) 80%,transparent);pointer-events:none}.loginCard__inner{padding:34px}.loginCard__top{margin-bottom:22px}.loginCard__eyebrow{margin:0;color:var(--brand-2);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.16em}.loginCard__title{margin:10px 0 0;color:#f8fbff;font-size:2rem;line-height:1.05;letter-spacing:-.04em;font-weight:850}.loginCard__subtitle{margin:12px 0 0;color:var(--muted);font-size:14px;line-height:1.7}.loginForm{display:grid;grid-gap:16px;gap:16px}.loginField{display:grid;grid-gap:9px;gap:9px}.loginField__labelRow{display:flex;align-items:center;justify-content:space-between;gap:12px}.loginField__label{color:#dce7f8;font-size:13px;font-weight:800;letter-spacing:.01em}.loginField__hintLink{color:var(--muted-2);font-size:12px;font-weight:700;text-decoration:none;transition:color .16s ease}.loginField__hintLink:hover{color:#dfe9ff}.loginInputWrap{position:relative}.loginInput{width:100%;min-height:56px;border:1px solid var(--line);border-radius:16px;background:var(--input);color:var(--text);padding:0 16px;font-size:15px;font-weight:500;outline:none;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.03),0 1px 0 hsla(0,0%,100%,.02);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.loginInput::placeholder{color:#7184a0}.loginInput:hover{background:var(--input-hover);border-color:hsla(0,0%,100%,.11)}.loginInput:focus{background:var(--input-focus);border-color:rgba(124,92,255,.45);box-shadow:var(--ring)}.loginInput[aria-invalid=true]{border-color:rgba(255,111,145,.55);box-shadow:0 0 0 1px rgba(255,111,145,.38),0 0 0 5px rgba(255,111,145,.12)}.loginMetaRow{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:2px}.loginCheck{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.loginCheck input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;margin:0;border-radius:6px;border:1px solid hsla(0,0%,100%,.16);background:hsla(0,0%,100%,.04);display:inline-grid;place-items:center;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.loginCheck input:before{content:"";width:10px;height:10px;border-radius:3px;transform:scale(0);transition:transform .14s ease;background:linear-gradient(180deg,var(--brand-2),var(--brand))}.loginCheck input:checked{border-color:rgba(124,92,255,.55);background:rgba(124,92,255,.1);box-shadow:0 0 0 4px rgba(124,92,255,.1)}.loginCheck input:checked:before{transform:scale(1)}.loginLink{color:#dce7ff;text-decoration:none;font-size:13px;font-weight:750;transition:color .16s ease,opacity .16s ease}.loginLink:hover{color:#fff}.loginError{border:1px solid rgba(255,111,145,.24);background:rgba(255,111,145,.08);color:#ffd7e3;border-radius:14px;padding:12px 14px;font-size:13px;line-height:1.5;font-weight:700}.loginSubmit{position:relative;isolation:isolate;min-height:56px;border:0;border-radius:16px;padding:0 18px;background:linear-gradient(135deg,var(--brand) 0,#6f7bff 35%,var(--brand-2) 100%);color:#fff;font-size:15px;font-weight:850;letter-spacing:.01em;cursor:pointer;box-shadow:0 16px 36px rgba(68,87,255,.34),inset 0 1px 0 hsla(0,0%,100%,.22);transition:transform .16s ease,filter .16s ease,box-shadow .16s ease,opacity .16s ease}.loginSubmit:before{content:"";position:absolute;inset:1px;z-index:-1;border-radius:15px;background:linear-gradient(180deg,hsla(0,0%,100%,.15),hsla(0,0%,100%,.02));opacity:.7}.loginSubmit:hover{transform:translateY(-1px);filter:saturate(1.06);box-shadow:0 22px 42px rgba(68,87,255,.42),inset 0 1px 0 hsla(0,0%,100%,.24)}.loginSubmit:active{transform:translateY(0)}.loginSubmit:disabled{cursor:not-allowed;opacity:.7;transform:none;filter:grayscale(.1)}.loginDivider{position:relative;margin:6px 0 2px;text-align:center}.loginDivider:before{content:"";position:absolute;inset:50% 0 auto;height:1px;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.08) 12%,hsla(0,0%,100%,.08) 88%,transparent)}.loginDivider span{position:relative;display:inline-block;padding:0 12px;background:linear-gradient(180deg,rgba(12,21,36,.88),rgba(12,21,36,.88));color:var(--muted-2);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.loginSecondary{display:grid;grid-gap:12px;gap:12px}.loginGhostBtn{min-height:54px;border-radius:16px;border:1px solid var(--line);background:linear-gradient(180deg,hsla(0,0%,100%,.06),hsla(0,0%,100%,.02)),hsla(0,0%,100%,.03);color:#e8f1ff;font-size:14px;font-weight:800;cursor:pointer;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04);transition:transform .16s ease,border-color .16s ease,background .16s ease}.loginGhostBtn:hover{transform:translateY(-1px);border-color:var(--line-strong);background:linear-gradient(180deg,hsla(0,0%,100%,.08),hsla(0,0%,100%,.03)),hsla(0,0%,100%,.04)}.loginFooter{margin-top:20px;text-align:center;color:var(--muted);font-size:13px;line-height:1.6}.loginFooter a{color:#ecf4ff;font-weight:800;text-decoration:none}.loginFooter a:hover{color:#fff}.loginCard__legal{margin-top:20px;color:var(--muted-2);font-size:12px;line-height:1.6;text-align:center}.loginCard__legal a{color:#dfe9ff;text-decoration:none}.loginCard__legal a:hover{color:#fff}@media (max-width:980px){.loginShell{grid-template-columns:1fr;gap:22px;padding-top:22px;padding-bottom:28px}.loginHero{padding:8px 0 0}.loginHero__title{max-width:none;font-size:clamp(2.4rem,10vw,4.2rem)}.loginHero__copy{max-width:100%}.loginCardWrap{justify-content:stretch}.loginCard{width:100%}}@media (max-width:640px){.loginShell{padding-inline:14px}.loginCard__inner{padding:22px}.loginHero__points{gap:12px}.loginHero__point{grid-template-columns:36px 1fr;gap:12px}.loginHero__pointIcon{width:36px;height:36px;border-radius:12px;font-size:14px}.loginCard__title{font-size:1.7rem}.loginGhostBtn,.loginInput,.loginSubmit{min-height:52px}.loginMetaRow{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}