:root { font-size:17px; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--text); background:var(--bg); }
* { box-sizing:border-box; } body { margin:0; } main { width:min(100%,680px); margin:auto; padding:28px 20px 48px; }
nav { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:28px; }
a { color:var(--link); text-decoration:none; } :focus-visible { outline:2px solid #9bccff; outline-offset:3px; }
h1 { font-size:26px; font-weight:600; line-height:1.25; margin:0 0 12px; }
h2 { font-size:20px; font-weight:600; line-height:1.3; margin:32px 0 8px; }
p { color:var(--text-2); font-size:var(--type-secondary); line-height:1.6; }
.lede { color:var(--text); } .note { font-size:var(--type-small); }
.switch { display:flex; flex-wrap:wrap; gap:8px 16px; margin:16px 0 28px; }
.switch .on { color:var(--text); font-size:var(--type-secondary); }
.docs { list-style:none; margin:24px 0; padding:0; }
.docs li { padding:16px; border:1px solid var(--line); border-radius:14px; margin-bottom:12px; font-size:var(--type-body); }
.docs .note { display:block; margin-top:4px; color:var(--text-2); }
.policy { white-space:pre-wrap; color:var(--text-2); font-size:var(--type-secondary); line-height:1.65; margin:24px 0; }
details { padding:16px; border:1px solid var(--line); border-radius:14px; margin:12px 0; }
summary { cursor:pointer; font-size:var(--type-body); } details p { margin:12px 0 0; }
.mail { font-size:var(--type-body); } footer { margin-top:40px; font-size:var(--type-caption); }
