:root { --ink:#1d1b19; --muted:#6b645d; --line:#e4ded6; --bg:#faf7f2; --accent:#2f5d50; }
* { box-sizing:border-box; }
body { margin:0; font:16px/1.55 system-ui,-apple-system,"Apple SD Gothic Neo",sans-serif; color:var(--ink); background:var(--bg); word-break:keep-all; }
header { display:flex; justify-content:space-between; align-items:center; padding:20px 24px; border-bottom:1px solid var(--line); }
header a { color:var(--muted); }
.brand { margin:0; font-weight:600; letter-spacing:.02em; }
main { max-width:560px; margin:0 auto; padding:48px 24px 80px; }
h1 { font-size:2.4rem; line-height:1.1; margin:0 0 12px; font-weight:600; }
.lead { color:var(--muted); margin:0 0 32px; }
form { display:grid; gap:16px; }
label { display:grid; gap:6px; font-size:.9rem; color:var(--muted); }
input, select, textarea { font:inherit; color:var(--ink); padding:10px 12px; border:1px solid var(--line); border-radius:6px; background:#fff; }
button { font:inherit; padding:12px; border:0; border-radius:6px; background:var(--accent); color:#fff; cursor:pointer; }
.fine { font-size:.8rem; color:var(--muted); }
.notice { max-width:720px; }
.notice table { width:100%; border-collapse:collapse; font-size:.9rem; }
.notice th, .notice td { text-align:left; padding:8px 6px; border-bottom:1px solid var(--line); vertical-align:top; }
