*{box-sizing:border-box}body{margin:0;background:#fff;color:#111827;font:15px/1.6 -apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;word-break:keep-all}
main{max-width:440px;margin:0 auto;padding:48px 20px}h1{font-size:24px;margin:0 0 4px;color:#1F3A68;letter-spacing:-.02em}h2{font-size:15px;margin:28px 0 8px}
.muted{color:#6B7280;font-size:13px}.card{border:1px solid #E5E7EB;border-radius:12px;padding:16px;margin-top:16px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 16px;border-radius:10px;border:1px solid #D1D5DB;background:#fff;color:#111827;font:inherit;font-weight:600;text-decoration:none;cursor:pointer}
.btn.primary{background:#1F3A68;border-color:#1F3A68;color:#fff}.btn.danger{color:#B91C1C;border-color:#F2B8B5}.btn.sm{width:auto;padding:6px 10px;font-size:13px;font-weight:500}
label{display:block;font-size:13px;color:#374151;margin:12px 0 4px}input{width:100%;padding:10px 12px;border:1px solid #D1D5DB;border-radius:8px;font:inherit}
input:focus{outline:2px solid #1F3A68;outline-offset:1px}.row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #F3F4F6}
.row:first-child{border-top:0}.msg{margin-top:12px;font-size:13px}.msg.err{color:#B91C1C}.msg.ok{color:#047857}.stack>*+*{margin-top:8px}