*{box-sizing:border-box}body{margin:0;min-height:100dvh;background:#f3f6fb;color:#17263d;font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;display:grid;place-items:center;padding:24px 18px}.card{width:min(100%,420px);background:#fff;border:1px solid #e1e7ef;border-radius:24px;padding:36px;box-shadow:0 12px 45px #17263d08}.brand{font-weight:800;color:#2563eb;letter-spacing:.09em;font-size:1.5rem}h1{font-size:1.35rem;margin:24px 0}label{display:block;font-size:.9rem;font-weight:600;margin-bottom:8px}input:not([type=hidden]){width:100%;padding:13px 14px;border:1px solid #c8d1df;border-radius:11px;font:inherit;font-size:16px;margin-bottom:20px}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #93c5fd;outline-offset:3px}.submit{display:block;width:100%;border:0;border-radius:12px;background:#2563eb;color:white;padding:14px;font:inherit;font-weight:700;cursor:pointer;text-align:center}.link-button{text-decoration:none}.note{font-size:.78rem;color:#64748b;line-height:1.8;margin:18px 0}a{color:#2563eb;font-size:.88rem}.error,.success{font-size:.88rem;line-height:1.8;border-radius:10px;padding:12px 14px;margin-bottom:22px;overflow-wrap:anywhere}.error{background:#fff4f2;border:1px solid #f9d7ce;color:#943e30}.success{background:#eff6ff;border:1px solid #bfdbfe}form[hidden]{display:none}@media(max-width:480px){.card{padding:28px 24px;border-radius:20px}body{align-content:center}}
