:root{--bg:#F6F7F8;--ink:#121619;--muted:#4A545C;--line:#D9DDE1;--accent:#2F6BFF}
*{box-sizing:border-box}
html:lang(ko) body,html:lang(ja) body{word-break:keep-all}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.7 -apple-system,"Segoe UI","Hiragino Sans","Apple SD Gothic Neo","Noto Sans KR","Noto Sans JP",sans-serif;min-height:100vh;display:flex;flex-direction:column}
a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:2px}
.wrap{width:100%;max-width:1040px;margin:0 auto;padding:0 24px}
header.top{padding:24px 0}
.wm{font-weight:800;letter-spacing:-.02em;font-size:22px;color:#121619;text-decoration:none;display:inline-flex;align-items:baseline}
.wm .dot{display:inline-block;width:.28em;height:.28em;border-radius:50%;background:#2F6BFF;margin-left:.08em}
main{flex:1}
.hero{padding:72px 0 56px;border-top:2px solid var(--ink);margin-top:24px}
.status{margin:0 0 16px;color:var(--muted);font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
h1{font-size:clamp(36px,7vw,72px);line-height:1.12;letter-spacing:-.03em;font-weight:800;margin:0}
.lead{font-size:clamp(17px,2vw,20px);color:var(--muted);max-width:56ch;margin:24px 0 0}
.go{margin:32px 0 0}
form{max-width:360px;margin:32px 0 0;display:grid;gap:12px}
label{font-weight:700}
input[type=password]{font:inherit;padding:12px;border:2px solid var(--ink);border-radius:8px;background:#fff;color:var(--ink)}
button{font:inherit;font-weight:700;padding:12px 24px;border:2px solid var(--ink);border-radius:8px;background:var(--ink);color:#fff;cursor:pointer}
.err{color:#B42318;margin:16px 0 0;font-weight:700}
footer.foot{border-top:1px solid var(--line);padding:24px 0 32px;font-size:14px;color:var(--muted)}
footer.foot a{color:var(--muted)}
