*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#0d0d0d;color:white;font-family:Inter,system-ui,sans-serif}body{min-height:100vh}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}main{min-height:100vh;width:100%;max-width:480px;margin:auto;padding:28px 20px 25px;display:flex;flex-direction:column;background:#111;border-inline:1px solid #222}header{display:flex;align-items:center;justify-content:space-between}.logo{width:78px;height:auto}.badge{font-size:11px;color:#9a9a9a;border:1px solid #333;border-radius:99px;padding:6px 10px}.content{width:100%;margin:auto 0;padding:50px 0}.icon{width:52px;height:52px;display:grid;place-items:center;color:#0099ff;background:#1a2a3a;border:1px solid #26445d;border-radius:16px;margin-bottom:24px}.icon svg{width:24px;height:24px}h1{font-size:26px;line-height:1.2;margin:0 0 10px;letter-spacing:-.6px}.intro{color:#9a9a9a;font-size:14px;line-height:1.55;margin:0 0 25px}label{display:block;font-size:12px;font-weight:700;margin:19px 0 8px;color:#eee}input{width:100%;height:50px;border:1px solid #2a2a2a;border-radius:11px;background:#252525;color:#fff;padding:0 14px;outline:none;font-size:16px}input:focus{border-color:#0099ff;box-shadow:0 0 0 3px #0099ff25}input::placeholder{color:#737373}.password{position:relative}.password input{padding-right:82px}.reveal{position:absolute;right:10px;top:5px;height:40px;padding:0 8px;color:#aaa;background:none;border:0;font-size:12px;cursor:pointer}.hint{font-size:12px;color:#888;line-height:1.5;margin:8px 0 0}.action{width:100%;border:0;border-radius:11px;background:#0099ff;color:white;font-weight:750;height:50px;margin-top:24px;cursor:pointer}.action:disabled{opacity:.65;cursor:wait}.action:focus-visible,.text-button:focus-visible,.reveal:focus-visible{outline:2px solid white;outline-offset:3px}.secondary{margin:20px 0 0;text-align:center;color:#9a9a9a;font-size:13px;line-height:1.6}.text-button{color:#0099ff;background:none;border:0;font-size:inherit;font-weight:700;padding:4px;cursor:pointer}.back{margin:0 0 24px -4px;color:#aaa}.note{margin-top:22px;padding:13px 14px;background:#1d1d1d;border:1px solid #2a2a2a;border-radius:11px;color:#aaa;font-size:12px;line-height:1.5}.error,.notice{margin:12px 0 0;font-size:13px;line-height:1.4}.error{color:#ff8181}.notice{color:#a5d6ff}footer{color:#737373;font-size:11px;text-align:center}[hidden]{display:none!important}@media(max-width:380px){main{padding-inline:16px}.content{padding:34px 0}h1{font-size:24px}}
