/* The policy pages (#/terms, #/privacy, #/refunds).
   Audit finding B-200, 9 October 2026. store.js draws them (renderPolicy) with the words of the documents in Legal/.
   The look is the help page's: the shop's page heading, then plain text under serif headings. Nothing else is designed. */
.policy-page .page-heading{margin-bottom:8px}
.policy-body{max-width:760px;font-size:17px;line-height:1.65;color:var(--ink);overflow-wrap:break-word}
.policy-body h2{font-size:28px;line-height:1.2;margin:40px 0 14px;scroll-margin-top:calc(var(--header) + 20px)}
.policy-body h3{font:600 20px/1.3 var(--sans);margin:28px 0 10px;scroll-margin-top:calc(var(--header) + 20px)}
.policy-body p{margin:0 0 16px}
.policy-body ul,.policy-body ol{margin:0 0 16px;padding-left:22px}
.policy-body li{margin:0 0 8px}
.policy-body a{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.policy-body a:hover{color:var(--green-hover)}
.policy-body code{font:500 .9em/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere}
.policy-table{margin:0 0 20px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.policy-body table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.5}
.policy-body th,.policy-body td{padding:12px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.policy-body th{font-weight:600;background:var(--soft)}
.policy-body tr:last-child td{border-bottom:0}
.policy-body td:first-child{font-weight:600}
/* On a phone a table's columns have no room side by side: each row becomes a small block, every cell under its column's name. */
@media(max-width:600px){
 .policy-body{font-size:16px}
 .policy-body h2{font-size:24px;margin-top:32px}
 .policy-body thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .policy-body table,.policy-body tbody,.policy-body tr,.policy-body td{display:block}
 .policy-body tr{padding:12px 16px;border-bottom:1px solid var(--line)}
 .policy-body tr:last-child{border-bottom:0}
 .policy-body td{padding:0;border:0}
 .policy-body td+td{margin-top:8px;font-weight:400}
 .policy-body td+td::before{content:attr(data-label);display:block;font-size:13.5px;font-weight:600;color:var(--muted)}
}
