:root { --paper:#fffaf2; --ink:#292827; --muted:#746453; --red:#e8415a; --line:#d9cbb8; }
* { box-sizing: border-box; }
body { margin:0; background:#faeedc; color:var(--ink); font-family:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height:1.75; word-break:keep-all; }
.wrap { width:min(820px,calc(100% - 32px)); margin:40px auto; padding:clamp(28px,6vw,64px); border:2px solid var(--ink); border-radius:18px; background:var(--paper); box-shadow:7px 8px 0 rgba(47,46,44,.1); }
header { padding-bottom:24px; border-bottom:3px solid var(--ink); }
header a { color:var(--red); font-weight:800; text-decoration:none; }
h1 { margin:14px 0 6px; font-size:clamp(2rem,6vw,3.6rem); line-height:1.1; letter-spacing:-.055em; }
h2 { margin:40px 0 10px; font-size:1.25rem; letter-spacing:-.025em; }
p, li, td, th { font-size:.95rem; }
.eff { margin:0; color:var(--muted); font-size:.86rem; }
a { color:#b62940; text-underline-offset:3px; }
ul, ol { padding-left:1.3rem; }
table { width:100%; border-collapse:collapse; margin:12px 0; }
th, td { padding:12px; border:1px solid var(--line); vertical-align:top; text-align:left; }
th { width:24%; background:#f5e7d4; }
footer { margin-top:48px; padding-top:20px; border-top:1px solid var(--line); color:var(--muted); font-size:.82rem; }
.link-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:28px; }
.link-grid a { padding:16px; border:2px solid var(--ink); border-radius:12px; background:white; color:var(--ink); font-weight:850; text-decoration:none; }
.notice { padding:16px 18px; border-left:5px solid var(--red); background:#fce7e9; }
@media (max-width:600px) { .wrap { margin:16px auto; } .link-grid { grid-template-columns:1fr; } table { display:block; overflow-x:auto; } th { min-width:120px; } }

