/* Public privacy page. Tables stack on phones so nothing scrolls sideways. */
.pv { max-width: 980px; margin: 0 auto; padding: 4px 0 24px; }
.pv h1 { font-size: 22px; margin-bottom: 8px; }
.pv h2 { font-size: 17px; margin: 0 0 8px; padding-bottom: 4px; border-bottom: 1px solid var(--border-soft); }
.pv h3 { font-size: 13px; margin: 14px 0 6px; color: var(--text-dim); text-transform: uppercase; letter-spacing: .4px; }
.pv-lead { font-size: 15px; line-height: 1.5; color: #eee; }
.pv-jump { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 0 0 18px; font-size: 13px; }
.pv-sec { margin: 0 0 26px; scroll-margin-top: calc(var(--topbar-h) + 8px); }
.pv-list { margin: 0 0 8px; padding-left: 18px; display: grid; gap: 6px; }
.pv-more { margin-top: 10px; }
.pv-more summary { cursor: pointer; color: var(--link); padding: 6px 0; }
.pv-table td { vertical-align: top; }
.pv-table td code { color: var(--text-faint); white-space: nowrap; }
.pv-foot { margin-top: 10px; }
@media (max-width: 720px) {
  .pv h1 { font-size: 19px; }
  .pv .table-wrap { overflow: visible; border: 0; }
  .pv-table thead { position: absolute; left: -9999px; }
  .pv-table, .pv-table tbody, .pv-table tr, .pv-table td { display: block; width: 100%; }
  .pv-table tr { margin: 0 0 8px; border: 1px solid var(--border-soft); border-radius: var(--radius); background: var(--bg-2); }
  .pv-table td { border: 0; padding: 5px 10px; overflow-wrap: anywhere; }
  .pv-table td::before { content: attr(data-label); display: block; font-size: 10px; text-transform: uppercase; letter-spacing: .4px; color: var(--text-faint); }
  .pv-table td:first-child { background: var(--panel-2); border-radius: var(--radius) var(--radius) 0 0; }
}
