:root{color-scheme:light;--ink:#17332d;--muted:#5d6c66;--accent:#17695b;--line:#d9e3de;--paper:#fff;--bg:#f5f7f3;--tint:#e8f1eb}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:2rem}
body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-underline-offset:.22em;text-decoration-thickness:1px;overflow-wrap:anywhere}
a:hover{text-decoration-thickness:2px}
a:focus-visible{outline:3px solid #ac701a;outline-offset:5px;border-radius:2px}
.wrap{width:min(calc(100% - 48px),1000px);margin-inline:auto}
.skip{position:absolute;top:-100px;left:18px;background:var(--paper);padding:10px 15px;z-index:10}
.skip:focus{top:12px}
.masthead{background:var(--paper);border-bottom:1px solid var(--line)}
.masthead .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:19px}
.brand{font-size:1.05rem;font-weight:750;color:var(--ink);text-decoration:none;letter-spacing:-.025em;white-space:nowrap}
.brand::before{content:"";display:inline-block;width:9px;height:21px;margin-right:10px;background:var(--accent);vertical-align:-3px;border-radius:2px}
nav{display:flex;gap:20px;align-items:center;flex-wrap:wrap;font-size:.82rem;line-height:1.5}
nav a{text-decoration:none;color:var(--muted)}
nav a[aria-current="page"]{color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:7px}
.hero{padding-block:64px 42px;max-width:850px}
.eyebrow{margin:0 0 13px;color:var(--accent);font-size:.79rem;font-weight:750;letter-spacing:.1em}
h1{margin:0 0 20px;font-size:clamp(2rem,4.8vw,3.3rem);line-height:1.3;letter-spacing:-.045em;text-wrap:balance}
.lead{max-width:45em;font-size:1.08rem;line-height:1.9;margin:0;color:#39544a}
.note{margin-top:20px;font-size:.86rem;color:var(--muted)}
.content{max-width:850px;padding-bottom:48px}
.panel{padding:30px 34px;background:var(--paper);border:1px solid var(--line);border-radius:5px;margin-bottom:22px}
.section-label{font-size:.75rem;color:var(--accent);font-weight:750;letter-spacing:.08em;margin:0 0 7px}
h2{font-size:1.4rem;line-height:1.5;letter-spacing:-.025em;margin:0 0 17px}
h3{font-size:1.05rem;line-height:1.6;margin:27px 0 8px}
p{margin:0 0 15px}
p:last-child{margin-bottom:0}
ul,ol{padding-left:1.4em;margin:12px 0 18px}
li{padding-left:.15em;margin:6px 0}
.facts{margin:0}
.facts>div{display:grid;grid-template-columns:135px 1fr;gap:22px;padding:16px 0;border-bottom:1px solid var(--line)}
.facts>div:first-child{padding-top:0}
.facts>div:last-child{border-bottom:0;padding-bottom:0}
dt{font-weight:700}
dd{margin:0;color:#39544a}
.callout{border-left:3px solid var(--accent);padding:15px 19px;background:var(--tint);margin:20px 0;font-size:.94rem}
.page-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:22px;font-weight:650;font-size:.94rem}
.meta{color:var(--muted);font-size:.84rem}
.document .hero{padding-top:46px;padding-bottom:28px}
.document h1{font-size:clamp(1.8rem,4.4vw,2.65rem)}
.document .panel{padding:32px 38px}
.document section+section{border-top:1px solid var(--line);margin-top:27px;padding-top:27px}
.document section h2{font-size:1.17rem;margin-bottom:12px}
.permission-list{margin:16px 0 22px}
.permission-list dt{margin-top:13px}
.permission-list dd{margin-top:3px;font-size:.95rem}
.footer{border-top:1px solid var(--line);padding-block:23px 30px;font-size:.79rem;color:var(--muted)}
.footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.footer p{margin:0}
.footer-links{display:flex;gap:16px;flex-wrap:wrap}
@media(max-width:720px){.masthead .wrap{display:block;padding-block:17px}.masthead nav{margin-top:15px;gap:13px 19px}.hero{padding-block:39px 29px}.panel,.document .panel{padding:25px 23px}.wrap{width:calc(100% - 32px)}.facts>div{grid-template-columns:1fr;gap:5px}.content{padding-bottom:28px}.document .hero{padding-top:34px}.footer .wrap{display:block}.footer-links{margin-top:13px}body{font-size:15.5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body{background:white;color:black}.wrap{width:100%;max-width:none}.masthead,.skip{display:none}.hero,.document .hero{padding-top:0}.panel,.document .panel{padding:0;border:0}.footer{margin-top:20px}a{color:inherit}.content{max-width:none}}
