/* The published Terms of Service, Privacy Policy and content-reporting pages
   (terms.html, privacy.html, report.html), which scripts/build-legal-pages.mjs
   writes from legal/*.md. Reading pages: one column at a comfortable measure on
   the cozy paper, the shared nav and footer from cozy-home.css, and nothing
   decorative inside the text itself. */
.legal{ padding:var(--cz-s5) var(--cz-s4) var(--cz-s6); }
.legal-doc{
  max-width:760px; margin:0 auto;
  background:var(--cz-panel); border:1px solid var(--cz-line); border-radius:var(--cz-r);
  padding:var(--cz-s5);
  color:var(--cz-ink); font-size:var(--cz-t-md); line-height:var(--cz-lh);
  overflow-wrap:anywhere;
}
.legal-doc h1{
  font-size:var(--cz-t-2xl); font-weight:800; letter-spacing:-.02em; line-height:var(--cz-lh-tight);
  margin:0 0 var(--cz-s3); padding-bottom:var(--cz-s1); border-bottom:3px solid var(--cz-teal);
}
.legal-doc h2{
  font-size:var(--cz-t-lg); font-weight:800; line-height:var(--cz-lh-tight);
  margin:var(--cz-s5) 0 var(--cz-s2);
}
.legal-doc p, .legal-doc ul, .legal-doc ol{ margin:0 0 var(--cz-s2); }
.legal-doc ul, .legal-doc ol{ padding-left:1.4em; }
.legal-doc li{ margin:0 0 var(--cz-s1); }
.legal-doc strong{ font-weight:800; }
.legal-doc blockquote{
  margin:0 0 var(--cz-s3); padding:var(--cz-s2) var(--cz-s3);
  background:var(--cz-panel-2); border-left:3px solid var(--cz-teal); border-radius:var(--cz-r-sm);
}
.legal-doc blockquote p{ margin:0; }
.legal-doc hr{ border:none; border-top:1px solid var(--cz-line); margin:var(--cz-s4) 0; }
/* Wide tables (the sub-processor and retention tables) scroll inside their own
   box on a phone instead of pushing the whole page sideways. */
.legal-table{ overflow-x:auto; margin:0 0 var(--cz-s3); }
.legal-doc table{ border-collapse:collapse; width:100%; font-size:var(--cz-t-sm); }
.legal-doc th, .legal-doc td{
  border:1px solid var(--cz-line); padding:var(--cz-s1) var(--cz-s2);
  text-align:left; vertical-align:top; overflow-wrap:normal;
}
.legal-doc th{ background:var(--cz-panel-2); font-weight:800; }
@media (max-width:560px){
  .legal{ padding:var(--cz-s4) var(--cz-s2) var(--cz-s5); }
  .legal-doc{ padding:var(--cz-s4) var(--cz-s3); }
  .legal-doc table{ min-width:520px; }
}
