:root{--ink:#202428;--muted:#626970;--brand:#f16f5c;--brand-dark:#a83d2d;--soft:#fff4ef;--line:#e6e1de;--green:#287a57}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#fff8f5 0,#fff 520px);color:var(--ink);font:16px/1.75 system-ui,-apple-system,"Noto Sans KR",sans-serif}a{color:var(--brand-dark)}header,main,footer{width:min(1040px,calc(100% - 40px));margin:auto}header{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:800;text-decoration:none}.brand img{width:32px;height:32px}.app-link,.primary{display:inline-block;border-radius:13px;background:var(--brand);color:#17191b;text-decoration:none;font-weight:800;padding:10px 17px;box-shadow:0 7px 18px rgba(202,79,61,.16)}.hero{max-width:780px;padding:76px 0 46px;margin:auto}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--brand-dark);font-weight:800;margin:0 0 13px}.eyebrow:before{content:"";width:9px;height:9px;border-radius:3px;background:var(--brand);transform:rotate(12deg)}h1{font-size:clamp(2.45rem,6vw,4.5rem);line-height:1.1;letter-spacing:-.06em;margin:0 0 24px;word-break:keep-all}h2{font-size:1.55rem;line-height:1.4;letter-spacing:-.028em;margin:52px 0 14px}p{margin:0 0 17px}.lead{font-size:1.18rem;color:var(--muted);max-width:680px}article>h2,article>p,article>.panel,article>.table-wrap,article>.checklist{max-width:760px;margin-left:auto;margin-right:auto}.panel{border:1px solid var(--line);border-radius:24px;background:#fff;padding:28px;margin:32px 0;box-shadow:0 18px 50px rgba(45,34,29,.08)}.soft{background:linear-gradient(135deg,#fff4ef,#fffaf8)}.record-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:0;padding:0;list-style:none}.record-list li{padding:16px;border-radius:14px;background:#fff}.record-list strong,.record-list span{display:block}.record-list span{margin-top:3px;color:var(--muted);font-size:.94rem}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:#fff}.table-wrap:focus-visible{outline:3px solid rgba(241,111,92,.45);outline-offset:3px}table{width:100%;min-width:620px;border-collapse:collapse}th,td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:var(--soft);font-size:.92rem}tbody tr:last-child td{border-bottom:0}.checklist{padding:0;list-style:none}.checklist li{position:relative;margin:10px 0;padding:13px 16px 13px 48px;border:1px solid var(--line);border-radius:13px;background:#fff}.checklist li:before{position:absolute;left:16px;top:14px;width:20px;height:20px;border:2px solid #d4aaa2;border-radius:6px;content:""}label{display:block;font-weight:750;margin:0 0 6px}input{width:100%;min-height:48px;border:1px solid #ccc3be;border-radius:11px;padding:10px 13px;font:inherit;color:var(--ink);background:white}.person{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin:12px 0}.icon-button,.secondary{min-height:48px;border:1px solid var(--line);border-radius:11px;background:white;color:var(--ink);font:inherit;font-weight:750;padding:8px 14px;cursor:pointer}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.primary{border:0;cursor:pointer;font:inherit}.result{margin-top:22px;padding:20px;border-radius:14px;background:#eef8f3;border:1px solid #bfddcf}.result[hidden]{display:none}.result strong{color:var(--green)}.result ul{padding-left:22px}.steps{padding-left:22px}.steps li{margin:12px 0}.note{color:var(--muted);font-size:.94rem}.links{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.link-card{display:block;border:1px solid var(--line);border-radius:18px;padding:20px;color:var(--ink);background:#fff;text-decoration:none;box-shadow:0 10px 30px rgba(45,34,29,.05)}.link-card strong{display:block}.link-card span{color:var(--muted);font-size:.94rem}main>h2,main>.steps,main>.panel,main>.links{max-width:760px;margin-left:auto;margin-right:auto}footer{margin-top:78px;padding:28px 0 52px;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem}@media(max-width:560px){header{padding:16px 0}.hero{padding:46px 0 30px}.person{grid-template-columns:1fr 1fr}.person .icon-button{grid-column:1/-1}.panel{padding:20px}.record-list{grid-template-columns:1fr}.links{grid-template-columns:1fr}}
