:root{color-scheme:dark;font-family:Arial,Helvetica,sans-serif;color:#f3f7fc;background:#091625}
*{box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100dvh;background:radial-gradient(ellipse at 18% 10%,#17364d 0,transparent 55%),radial-gradient(ellipse at 90% 80%,#172c43 0,transparent 55%),#091625}
[hidden]{display:none!important}main{width:min(100%,590px);margin:auto;padding:48px 24px 30px;padding-top:max(48px,env(safe-area-inset-top));padding-bottom:max(30px,env(safe-area-inset-bottom))}
.brand{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:32px;font-size:30px;font-weight:700;text-decoration:none;color:inherit}.brand img{object-fit:contain}
.card{padding:34px;background:linear-gradient(140deg,#24384bb3,#112235d9);border:1px solid #a1c2de38;border-radius:26px;box-shadow:0 18px 60px #0003;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.eyebrow{font-size:12px;letter-spacing:.18em;color:#b4d9f5;font-weight:700;margin:0 0 12px}h1{font-size:30px;line-height:1.18;margin:0 0 16px;overflow-wrap:anywhere}p{line-height:1.6;margin:14px 0;color:#b9c9d9}form{display:flex;flex-direction:column;gap:12px;margin-top:24px}label{font-size:15px;font-weight:700}
input{width:100%;min-width:0;padding:14px 16px;min-height:50px;border:1px solid #8297ae70;border-radius:13px;background:#081727a6;color:#fff;font:inherit;font-size:16px}
button,.back{min-height:48px;border:1px solid #8aa1bc66;border-radius:13px;padding:13px 16px;font:inherit;font-size:15px;font-weight:700;cursor:pointer;text-align:center;line-height:1.4;overflow-wrap:anywhere}button.primary{background:#d7eaf8;border-color:#d7eaf8;color:#122838;margin-top:6px}.subtle{color:#e8f2fa;background:#ffffff08}.back{display:block;margin-top:24px;text-decoration:none;color:#d7e7f5;background:transparent}
button:disabled{opacity:.6;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #a9d7ff;outline-offset:4px}button:hover:not(:disabled),.back:hover{filter:brightness(1.1)}
.hint{font-size:13px;line-height:1.6;margin:4px 0 0;color:#b5c5d7}.password-requirements{padding-left:18px;margin:0 0 6px}.password-requirements [data-met=true]{color:#d9f0e7}#reset-status{padding:15px 16px;border:1px solid #96c4e766;border-radius:13px;background:#c7e5ff0a;color:#e9f2fa}#reset-status[data-error=true]{border-color:#e1b47b88;color:#ffe0ba}#new-link,#retry-check{width:100%;margin-top:16px}.footer{text-align:center;font-size:13px;margin-top:25px}
@media(max-width:420px){main{padding:28px 16px}.brand{font-size:28px;margin-bottom:24px}.card{padding:25px 20px;border-radius:22px}h1{font-size:27px}}
