:root{font-family:Inter,"Segoe UI",Arial,system-ui,sans-serif;color:#e6ecfb;background:#080e1a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{height:100%}body{margin:0;min-height:100vh;min-height:100dvh}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid #7ca6ff;outline-offset:3px}::selection{background:#3b65c6;color:#fff}.scene{position:fixed;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 52% -8%,#1c3150 0%,#0c162a 34%,#080e1a 70%)}.scene-grid{position:absolute;inset:0;opacity:.22;background-image:linear-gradient(to right,#6b8cb51c 1px,transparent 1px),linear-gradient(to bottom,#6b8cb51c 1px,transparent 1px);background-size:62px 62px;mask-image:linear-gradient(180deg,transparent 10%,#000 65%,transparent 100%)}.bloom{position:absolute;border-radius:50%;filter:blur(80px);opacity:.23}.bloom-a{width:470px;height:470px;left:calc(50% - 490px);top:27%;background:#2457c6}.bloom-b{width:450px;height:450px;left:calc(50% + 140px);top:8%;background:#156f8c}.grain{position:absolute;inset:0;background:radial-gradient(circle at 50% 30%,transparent 8%,#04081499 100%)}.page{position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:27px clamp(20px,4vw,64px) 20px}.topbar{width:100%;max-width:1320px;display:flex;justify-content:space-between;align-items:center;gap:12px}.wordmark{display:flex;align-items:center;gap:9px;letter-spacing:-.04em;font-weight:790;font-size:22px;color:#f5f8ff}.wordmark .mark{width:33px;height:33px;display:grid;place-items:center;color:#91b8ff}.mark svg{width:100%;height:100%}.wordmark-accent{color:#8db9ff}.top-caption{display:flex;gap:9px;align-items:center;color:#8599b7;font-size:10px;letter-spacing:.18em;font-weight:720}.status-dot{display:block;width:7px;height:7px;border-radius:100%;background:#62d6ad;box-shadow:0 0 12px #62d6ad66}.main{flex:1;width:100%;display:flex;justify-content:center;align-items:center;padding:32px 0 45px}.login-card{width:min(100%,446px);padding:36px 39px 34px;border:1px solid #849ab12e;border-radius:22px;background:linear-gradient(155deg,#172237f2 0%,#101a2df5 42%,#0c1526f7 100%);box-shadow:0 30px 90px #0007,0 0 1px 1px #a7c1ff09,inset 0 1px #c8d9ff13;backdrop-filter:blur(22px);position:relative;overflow:hidden}.login-card:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,#8ab1f06b,transparent)}.card-top{text-align:center}.symbol{width:67px;height:67px;margin:1px auto 18px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#284674,#132846);box-shadow:0 10px 28px #020b1b55,inset 0 1px #abc6fd35;color:#9ec5ff}.symbol svg{width:48px;height:48px}.eyebrow{font-size:10px;letter-spacing:.21em;color:#89a9d9;font-weight:750}.card-top h1{font-size:30px;line-height:1.18;margin:11px 0 7px;font-weight:760;letter-spacing:-.045em}.punct{color:#6ca7ff}.intro{font-size:13px;line-height:1.6;color:#8d9fb9;margin:0}.login-fields{margin-top:31px}.field{margin:0 0 18px}.field label{display:block;font-size:12px;font-weight:650;color:#cbd7eb;margin-bottom:9px}.label-line{display:flex;justify-content:space-between;align-items:center;gap:8px}.field-hint{font-size:10px;letter-spacing:.03em;color:#778eab}.input-wrap{position:relative}.input-wrap>svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);height:18px;width:18px;stroke:#7186a4;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.input-wrap input{display:block;width:100%;height:46px;padding:0 44px;border-radius:10px;background:#071121a8;border:1px solid #5a709045;color:#e7f1ff;font-size:13px;transition:border-color .17s,box-shadow .17s}.input-wrap input::placeholder{color:#7084a0}.input-wrap input:focus{outline:none;border-color:#6d9ce6;box-shadow:0 0 0 3px #467ad124}.input-wrap:focus-within>svg{stroke:#9abcf5}.reveal{position:absolute;right:8px;top:50%;transform:translateY(-50%);height:34px;width:34px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:#778da9}.reveal:hover{color:#bfd5f3;background:#ffffff0a}.reveal svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}.error-message{display:flex;align-items:flex-start;gap:9px;background:#71314030;border:1px solid #db658055;color:#ffc3c9;padding:11px 12px;border-radius:9px;font-size:12px;line-height:1.6;margin:1px 0 17px}.error-message[hidden]{display:none}.error-message svg{stroke:#ee7f90;fill:none;stroke-width:1.9;width:17px;height:17px;flex:0 0 17px;margin-top:1px;stroke-linecap:round}.submit{border:0;border-radius:10px;width:100%;height:47px;color:#07152d;font-size:13px;font-weight:770;display:flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(120deg,#90c2ff,#71a9ff);box-shadow:0 7px 20px #4a92f02d;transition:transform .16s,filter .16s}.submit:hover{filter:brightness(1.08);transform:translateY(-1px)}.submit:active{transform:translateY(0)}.submit:disabled{opacity:.7;cursor:progress}.submit svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.secure-note{display:flex;justify-content:center;align-items:center;gap:8px;color:#7286a0;font-size:10px;margin-top:21px;letter-spacing:.015em;text-align:center}.secure-note svg{height:14px;width:14px;stroke:currentColor;stroke-width:1.65;fill:none;stroke-linecap:round}.footer{color:#7085a0;font-size:11px;display:flex;align-items:center;justify-content:center;gap:14px;padding-bottom:8px}.footer-sep{width:3px;height:3px;border-radius:50%;background:#607696}@media(max-width:600px){.page{padding:20px 16px}.top-caption{font-size:9px}.main{padding:30px 0 36px}.login-card{padding:29px 23px 30px;border-radius:18px}.card-top h1{font-size:27px}.symbol{width:61px;height:61px;margin-bottom:17px}.footer{flex-wrap:wrap;gap:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:0s!important;animation-duration:0s!important}}
