:root{color-scheme:light;--ink:#17243b;--muted:#526076;--blue:#1e3a8a;--line:#d5dce6}*{box-sizing:border-box}body{margin:0;background:#f4f6fa;color:var(--ink);font:16px/1.55 "Segoe UI",Arial,sans-serif}main{width:100%;max-width:480px;margin:0 auto;padding:64px 20px 32px}.brand{display:flex;justify-content:center;align-items:center;gap:12px;color:var(--blue);font-size:13px;font-weight:700;letter-spacing:2px;text-decoration:none;margin-bottom:30px}.brand svg{width:30px;height:30px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:36px;box-shadow:0 8px 28px #17243b06}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.4px;color:var(--blue)}h1{font-size:28px;letter-spacing:-.6px;line-height:1.25;margin:12px 0}.intro{font-size:15px;color:var(--muted);margin:0 0 28px}label{display:block;font-size:14px;font-weight:600;margin:18px 0 8px}input{width:100%;min-height:48px;border:1px solid #9ba9bd;border-radius:7px;padding:11px 13px;background:white;color:var(--ink);font:inherit}input::placeholder{color:#68758a}.password-field{position:relative}.password-field input{padding-right:100px}button,a{cursor:pointer}button{font:600 14px "Segoe UI",Arial,sans-serif;min-height:44px;border-radius:7px;transition:background .15s}.reveal{position:absolute;right:3px;top:2px;border:0;background:white;color:var(--blue);padding:0 12px}.reveal:hover{background:#eef2ff}.submit{width:100%;margin-top:26px;border:1px solid var(--blue);background:var(--blue);color:white;min-height:48px}.submit:hover{background:#172e71}:focus-visible{outline:3px solid #b45309;outline-offset:3px}.note,footer{font-size:12px;color:var(--muted);text-align:center}.note{margin:20px 0 0}footer{margin-top:24px}.error{font-size:14px;background:#fff0ed;color:#8b241c;border:1px solid #edc0b9;border-radius:7px;padding:12px;margin:18px 0}@media(max-width:480px){main{padding:32px 16px}.card{padding:26px 22px}h1{font-size:26px}.desktop{display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
