:root{color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#0b1420;color:#f2f0eb;--mint:#8bd9c5;--muted:#a6b4c3;--line:#304052}
*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.55;background:radial-gradient(ellipse at 50% 35%,#19363845,transparent 57%),#0b1420}[hidden]{display:none!important}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--mint);outline-offset:5px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}
.login-shell{max-width:1120px;margin:0 auto;padding:30px 40px 24px;min-height:100vh;min-height:100svh;display:flex;flex-direction:column}.topline{display:flex;align-items:center;justify-content:space-between;gap:18px}.wordmark{display:flex;align-items:center;gap:10px;color:#e6e6df;text-decoration:none;font-size:11px;font-weight:650;letter-spacing:.13em}.wordmark>span{display:grid;place-items:center;width:30px;height:32px;border:1px solid #52657a;border-radius:8px;font-size:18px;letter-spacing:0}.private-label{color:#93aabb;font-size:11px;letter-spacing:.02em}.private-label>span{color:var(--mint);font-size:8px;margin-right:7px}.login-main{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:48px 0 30px}.login-card{width:100%;max-width:460px;background:linear-gradient(145deg,#152735,#101d2b 70%);border:1px solid #344c5c;border-radius:24px;padding:38px 40px 26px;box-shadow:0 28px 90px #0003,inset 0 1px 0 #ffffff06}.room-mark{display:flex;align-items:center;gap:5px;height:40px;margin-bottom:25px}.room-mark span{width:5px;height:14px;border-radius:4px;background:var(--mint)}.room-mark span:nth-child(2),.room-mark span:nth-child(4){height:24px;opacity:.8}.room-mark span:nth-child(3){height:36px}.room-mark span:first-child,.room-mark span:last-child{opacity:.55}.eyebrow{font-size:10px;font-weight:650;letter-spacing:.15em;color:#9cb4c5;margin:0 0 12px}h1{font-size:clamp(30px,4vw,37px);font-weight:560;letter-spacing:-.045em;line-height:1.18;margin:0}h1>span{color:#a3e1d2}.intro{font-size:14px;line-height:1.75;margin:18px 0 30px;color:var(--muted)}label{display:block;color:#cedae2;font-size:12px;font-weight:550;margin-bottom:9px}.password-field{display:flex;align-items:center;background:#0c1824;border:1px solid #41596b;border-radius:11px;transition:border-color .15s,box-shadow .15s}.password-field:focus-within{border-color:var(--mint);box-shadow:0 0 0 3px #8bd9c515}.password-field:has(input[aria-invalid=true]){border-color:#d89284}input{width:100%;min-width:0;height:54px;padding:13px 15px;border:0;border-radius:11px;outline:0;background:transparent;color:#f2f0eb;font-size:16px}input::placeholder{font-size:14px;color:#6f899d;opacity:1}.reveal{width:46px;min-width:46px;height:46px;display:grid;place-items:center;margin-right:3px;padding:0;background:transparent;border:0;border-radius:8px;color:#9ab1c3}.reveal:hover{color:#dbede8;background:#ffffff06}.login-error{font-size:12px;line-height:1.5;color:#f1b4a7;min-height:18px;margin:8px 0 12px}.primary{width:100%;min-height:53px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 17px;border:1px solid var(--mint);border-radius:11px;background:var(--mint);color:#10292b;font-size:14px;font-weight:650;transition:background .15s,transform .15s}.primary:hover:not(:disabled){background:#a9e6d7}.primary:active:not(:disabled){transform:translateY(1px)}.primary>span:last-child{font-size:21px;font-weight:400;line-height:1}.card-foot{display:flex;align-items:center;justify-content:center;gap:7px;border-top:1px solid #2c4152;margin-top:26px;padding-top:20px;color:#89a2b6;font-size:11px}.below-card{margin:22px 0 0;font-size:11px;letter-spacing:.02em;color:#7e96a9}footer{text-align:center;font-size:10px;color:#617b90}
@media(max-width:560px){.login-shell{padding:22px 20px 18px}.private-label{font-size:10px}.login-main{padding:34px 0 25px}.login-card{padding:30px 26px 24px;border-radius:20px}h1{font-size:34px}.intro{margin-bottom:26px}.room-mark{margin-bottom:23px}.wordmark{font-size:10px;letter-spacing:.09em}footer{font-size:10px}}
@media(max-height:720px){.login-main{padding-top:28px}.login-card{padding-top:28px}.room-mark{margin-bottom:18px}.intro{margin-bottom:22px}.below-card{margin-top:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}
