*{box-sizing:border-box}
:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#211a31;background:#f7f5fc;font-size:16px;line-height:1.7}
body{margin:0}.shell{max-width:880px;margin:auto;padding:24px clamp(18px,5vw,48px) 40px}
a{color:#5b21b6;text-underline-offset:.22em;text-decoration-thickness:.08em;overflow-wrap:anywhere}
a:hover{text-decoration-thickness:.16em}
a:focus-visible{outline:3px solid #5b21b6;outline-offset:4px;border-radius:4px}
.skip{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:2}
.skip:focus{top:12px}
.masthead{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.masthead>a{padding:10px 4px;min-height:44px;font-weight:600}
.brand{display:flex;gap:10px;align-items:center;font-size:1.5rem;font-weight:780;letter-spacing:-.035em}
.mark{display:grid;place-items:center;width:1.85em;height:1.85em;min-width:38px;min-height:38px;flex-shrink:0;line-height:1;color:white;background:#5b21b6;border-radius:12px;font-size:1.3rem;letter-spacing:-.06em}
.topics{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;padding-bottom:24px;border-bottom:1px solid #d9d2e6}
.topics a{padding:9px 13px;min-height:44px;border-radius:10px;font-size:.92rem;font-weight:620}
.topics a[aria-current=page]{background:#ede6f8;color:#4c1d95;text-decoration:none}
.hero{padding:30px 0 8px}.badge{display:inline-block;color:#4c1d95;background:#ede6f8;border:1px solid #c9b9e2;padding:5px 12px;border-radius:999px;font-size:.9rem;font-weight:700}
h1{font-size:clamp(1.7rem,4.8vw,2.45rem);line-height:1.2;letter-spacing:-.025em;margin:12px 0 20px;overflow-wrap:anywhere}
h2{font-size:1.22rem;line-height:1.4;margin:0 0 14px;scroll-margin-top:20px}
p{margin:0 0 16px;overflow-wrap:anywhere}.lead{font-size:1.13rem;color:#51465e}.date{font-size:.9rem;color:#51465e}
.notice{padding:20px 22px;border-left:4px solid #5b21b6;background:white;border-radius:0 14px 14px 0;margin:14px 0 20px}
.notice p{margin:0}
.fields{background:#fff8e8;border:1px solid #d9bd83;border-radius:16px;padding:24px;margin:20px 0}
.fields p{font-size:.95rem}.fields p:last-child{margin-bottom:0}
dl{margin:0 0 18px}dt{color:#51465e;font-size:.94rem}dd{margin:2px 0 16px;font-size:1.15rem;font-weight:750;overflow-wrap:anywhere}
.contents{margin:26px 0;padding:14px 20px;background:white;border:1px solid #e0d9eb;border-radius:14px}
.contents ol{margin:0;padding-left:24px}.contents a{display:block;padding:6px 0}
article section{padding:24px 0;border-bottom:1px solid #d9d2e6}article section:last-child{border-bottom:0}
ol{padding-left:24px}li{margin-bottom:8px}footer{margin-top:26px;padding-top:24px;border-top:1px solid #d9d2e6;color:#51465e;font-size:.88rem}
footer span{font-weight:650}
@media(max-width:420px){.shell{padding-top:18px}.topics a{padding:9px 10px}.fields,.notice{padding:18px}.hero{padding-top:22px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
@media print{.skip,.topics,.contents{display:none}.shell{max-width:none;padding:0}:root{background:white}a{color:inherit}.notice,.fields{break-inside:avoid}}
