/* Shared legal-page stylesheet. Colors come from /tokens.css (generated; do not edit). */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--color-bg);color:var(--color-text);font:17px/1.55 system-ui,-apple-system,"SF Pro Text","Nunito",sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;color-scheme:dark light}
.wrap{width:100%;max-width:720px;margin:0 auto;padding:16px max(20px,env(safe-area-inset-right,0px)) calc(48px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px))}
.wordmark{font:800 26px ui-rounded,"SF Pro Rounded","Nunito",system-ui,sans-serif;letter-spacing:-.02em;color:var(--color-text);text-decoration:none;display:inline-block;padding-block:8px}
.wordmark i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--color-accent);margin-left:-3px;vertical-align:-1px}
h1,h2{font-family:ui-rounded,"SF Pro Rounded","Nunito",system-ui,sans-serif;line-height:1.15;text-wrap:balance}
h1{font-size:clamp(28px,7vw,38px);margin:24px 0 8px}
h2{font-size:22px;margin:36px 0 8px}
p,li{overflow-wrap:anywhere}
p{margin:0 0 14px}
ul,ol{padding-left:22px;margin:0 0 14px}
li{margin-bottom:6px}
a{color:var(--color-accent)}
a:focus-visible{outline:3px solid var(--color-listening);outline-offset:3px;border-radius:4px}
.effective{color:var(--color-text-muted);font-size:15px}
.notice{background:var(--color-bg-elevated);border-left:3px solid var(--color-accent);border-radius:12px;padding:12px 16px;margin:18px 0}
.todo{background:var(--color-accent-soft);color:var(--color-text);border-radius:6px;padding:0 6px}
.toc{background:var(--color-bg-elevated);border-radius:16px;padding:12px 16px;margin:18px 0}
.toc ol{margin:0}
footer{border-top:1px solid var(--color-line);margin-top:40px;padding-top:20px;color:var(--color-text-muted);font-size:14px}
footer a{color:var(--color-text);font-weight:600;margin-right:16px;display:inline-block}
.sel{user-select:text;-webkit-user-select:text}
