*{box-sizing:border-box}html{color-scheme:dark;--bg:#0b1625;--card:#101e30;--text:#f4f7fc;--muted:#94accb;--line:#2b425f;--field:#16263b;--blue:#0868fa;--error:#ffb1b7;--shadow:rgba(0,0,0,.16)}html[data-theme=light]{color-scheme:light;--bg:#f3f7fc;--card:#fff;--text:#14233c;--muted:#526b8c;--line:#c6d4e6;--field:#f5f8fd;--blue:#065de4;--error:#b12439;--shadow:rgba(37,65,108,.07)}body{margin:0;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 66% 35%,rgba(27,72,125,.10),transparent 65%),var(--bg);color:var(--text);font-family:Inter,"Segoe UI",system-ui,sans-serif;-webkit-font-smoothing:antialiased}.page-header,main,footer{width:min(1440px,calc(100% - 112px));margin-inline:auto}.page-header{display:flex;align-items:center;justify-content:space-between;padding:26px 0}.brand{display:flex;align-items:center;gap:14px;color:var(--text);text-decoration:none;font-size:26px;font-weight:700;letter-spacing:-.7px}.brand-mark{display:grid;place-items:center;width:48px;height:52px;background:linear-gradient(145deg,#2288ff,#0061f4 70%,#0347c5);clip-path:polygon(50% 0,96% 25%,96% 75%,50% 100%,4% 75%,4% 25%)}.brand-mark svg{width:39px;height:39px;fill:rgba(127,220,255,.20);stroke:#b2e8ff;stroke-width:1.6;stroke-linejoin:round}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #51baff;outline-offset:5px}svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.theme-toggle{display:flex;padding:4px;border:1px solid var(--line);border-radius:32px;background:var(--card);gap:2px}.theme-toggle button{display:grid;place-items:center;width:46px;height:34px;border:0;border-radius:24px;background:transparent;color:var(--muted)}.theme-toggle button[aria-pressed=true]{color:#fff;background:var(--blue);box-shadow:0 2px 8px #0069ff35}.theme-toggle svg{width:21px;height:21px}main{flex:1;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:70px;padding:42px 0 38px}.intro h1{font-size:clamp(48px,5.2vw,78px);letter-spacing:-3.3px;line-height:1.08;margin:0 0 24px;font-weight:750}.intro-copy{font-size:clamp(17px,1.7vw,23px);line-height:1.55;margin:0;color:var(--muted);max-width:650px}.cluster-art{display:block;width:100%;height:auto;margin:20px auto 0}.intro-caption{text-align:center;color:var(--muted);font-size:16px;letter-spacing:.2px;margin:0}.intro-caption span{padding:0 5px}.login-area{width:100%;max-width:600px;justify-self:end}.login-card{border:1px solid var(--line);border-radius:17px;padding:44px 40px 28px;background:linear-gradient(145deg,rgba(46,85,137,.07),transparent 60%),var(--card);box-shadow:0 24px 64px var(--shadow)}.card-mark{width:76px;height:83px;margin:0 auto 26px}.card-mark svg{width:60px;height:60px}.login-card h2{text-align:center;font-size:clamp(26px,2.6vw,37px);letter-spacing:-1px;line-height:1.2;margin:0 0 12px}.card-subtitle{text-align:center;font-size:17px;color:var(--muted);margin:0 0 38px;line-height:1.5}form label{display:block;font-weight:600;font-size:15px;margin:0 0 9px}.input-wrap{display:flex;align-items:center;position:relative;border:1px solid var(--line);border-radius:9px;background:linear-gradient(115deg,rgba(255,255,255,.015),transparent),var(--field);margin-bottom:25px;transition:border-color .15s,box-shadow .15s}.input-wrap:focus-within{border-color:#479dff;box-shadow:0 0 0 3px #2489ff22}.input-wrap>svg{width:25px;height:25px;margin-left:19px;flex:none;color:var(--muted)}input{width:100%;min-width:0;height:61px;padding:0 17px;border:0;outline:none;background:transparent;color:var(--text);font-size:17px;border-radius:9px}input::placeholder{color:var(--muted);opacity:.9}input:autofill{box-shadow:0 0 0 100px var(--field) inset}#show-password{display:grid;place-items:center;flex:none;width:51px;height:53px;border:0;background:transparent;color:var(--muted);border-radius:8px;margin-right:5px}#show-password svg{width:25px;height:25px}.submit{width:100%;height:62px;display:flex;align-items:center;justify-content:center;gap:16px;border:1px solid #2679ff;border-radius:9px;background:var(--blue);color:#fff;font-weight:600;font-size:20px;margin-top:32px;box-shadow:0 6px 20px #0065ff12;transition:background .15s,transform .15s}.submit:hover{background:#217cff;transform:translateY(-1px)}.submit:disabled{cursor:wait;opacity:.7;transform:none}.submit svg{width:24px;height:24px}.help{text-align:center;color:var(--muted);font-size:13px;line-height:1.6;border-top:1px solid var(--line);padding-top:22px;margin:36px 0 0}.access-note{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:14px;margin:25px 0 0}.access-note svg{width:20px;height:20px}.error{font-size:14px;line-height:1.5;color:var(--error);border-left:3px solid currentColor;padding:9px 12px;margin:4px 0 12px;background:#d82d4210}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:20px 8px 25px;color:var(--muted);font-size:12px}footer span:last-child{letter-spacing:.6px}.skip{position:absolute;top:-100px;background:var(--card);color:var(--text);padding:12px;z-index:2}.skip:focus{top:12px;left:12px}[hidden]{display:none!important}@media(min-width:1600px){main{gap:100px}}@media(max-width:1100px){.page-header,main,footer{width:calc(100% - 64px)}main{gap:32px}.login-card{padding:34px 26px 24px}.intro h1{font-size:55px}.intro-copy{font-size:19px}.card-subtitle{font-size:15px}}@media(max-width:800px){.page-header,main,footer{width:calc(100% - 40px)}.page-header{padding:20px 0}.brand{font-size:22px}.brand-mark{width:39px;height:43px}.brand-mark svg{width:32px}.intro{display:none}main{grid-template-columns:1fr;padding:24px 0 38px}.login-area{justify-self:center;max-width:480px}.card-mark{width:64px;height:70px}.card-mark svg{width:51px;height:51px}.login-card h2{font-size:30px}.login-card{padding:35px 26px 26px}.card-subtitle{margin-bottom:30px}footer{font-size:11px}}@media(max-width:380px){.page-header,main,footer{width:calc(100% - 28px)}.login-card{padding:28px 18px}.login-card h2{font-size:26px}.access-note{font-size:12px}.theme-toggle button{width:35px}}
