/* ============================================================
   PPC Watchdog — legal pages
   Tokens mirror the funnel exactly, including its dark mode.
   ============================================================ */
:root{
  --ground:#F7F9FC; --surface:#FFFFFF; --surface-2:#FBFCFE;
  --ink:#0E1116; --ink-2:#414B5A; --ink-3:#6B7686;
  --line:#E3E8F0; --line-2:#EFF2F7;
  --accent:#2F6BFF; --accent-ink:#1E4FD0; --accent-soft:#EDF2FF; --accent-line:#CFDDFF;
  --good:#0B7250; --good-soft:#E8F6F1; --good-line:#C2E5D8;
  --shadow:0 1px 2px rgba(14,17,22,.05), 0 6px 20px rgba(14,17,22,.05);
  --r:12px;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ground:#0C1015; --surface:#141A22; --surface-2:#181F28;
    --ink:#EAEEF5; --ink-2:#AEB9C9; --ink-3:#8391A4;
    --line:#242C37; --line-2:#1D242D;
    --accent:#5F8FFF; --accent-ink:#93B4FF; --accent-soft:#16203A; --accent-line:#28395F;
    --good:#4FC79E; --good-soft:#0E2721; --good-line:#20493B;
    --shadow:0 1px 2px rgba(0,0,0,.4), 0 6px 20px rgba(0,0,0,.3);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --ground:#0C1015; --surface:#141A22; --surface-2:#181F28;
  --ink:#EAEEF5; --ink-2:#AEB9C9; --ink-3:#8391A4;
  --line:#242C37; --line-2:#1D242D;
  --accent:#5F8FFF; --accent-ink:#93B4FF; --accent-soft:#16203A; --accent-line:#28395F;
  --good:#4FC79E; --good-soft:#0E2721; --good-line:#20493B;
  color-scheme:dark;
}

*{box-sizing:border-box;}

body{
  margin:0; background:var(--ground); color:var(--ink-2);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:16.5px; line-height:1.68; -webkit-font-smoothing:antialiased;
}

h1,h2,h3{
  font-family:"Inter Tight",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  color:var(--ink); margin:0; letter-spacing:-.022em; line-height:1.16;
}
h1{font-size:clamp(30px,4.2vw,42px); font-weight:700; margin-bottom:10px;}
h2{font-size:22px; font-weight:600; margin:48px 0 12px;}
h3{font-size:17px; font-weight:600; margin:30px 0 8px;}
p{margin:0 0 14px;}
a{color:var(--accent); text-decoration:none; border-bottom:1px solid var(--accent-line);}
a:hover{color:var(--accent-ink); border-bottom-color:var(--accent-ink);}

/* ---- top bar, matched to the funnel nav ---- */
.pw-nav{
  background:var(--surface); border-bottom:1px solid var(--line);
  position:sticky; top:0; z-index:10;
}
.pw-nav .in{
  max-width:860px; margin:0 auto; padding:14px 24px;
  display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap;
}
.pw-brand{display:flex; align-items:center; gap:10px; text-decoration:none; border:0;}
.pw-brand b{
  font-family:"Inter Tight",Inter,sans-serif; font-size:16px; font-weight:700;
  color:var(--ink); letter-spacing:-.02em; display:block; line-height:1.2;
}
.pw-brand span{font-size:10.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-3);}
.pw-navlinks a{
  font-size:14px; color:var(--ink-3); margin-left:20px; border:0; font-weight:500;
}
.pw-navlinks a:hover{color:var(--accent);}

/* ---- content ---- */
.pw-legal{max-width:860px; margin:0 auto; padding:44px 24px 88px;}

.pw-eyebrow{
  font-family:"Inter Tight",Inter,sans-serif; font-size:12px; font-weight:700;
  letter-spacing:.13em; text-transform:uppercase; color:var(--accent); margin-bottom:14px;
}
.pw-meta{
  color:var(--ink-3); font-size:14.5px; margin:0 0 40px;
  padding-bottom:26px; border-bottom:1px solid var(--line);
}
ul,ol{padding-left:20px; margin:14px 0;}
li{margin:7px 0;}
li::marker{color:var(--ink-3);}

.pw-callout{
  background:var(--accent-soft); border:1px solid var(--accent-line);
  border-radius:var(--r); padding:18px 20px; margin:26px 0; font-size:15.5px;
}
.pw-callout p{margin:0;}
.pw-callout p+p{margin-top:11px;}
.pw-callout strong{color:var(--ink);}

.pw-scroll{
  overflow-x:auto; -webkit-overflow-scrolling:touch; margin:22px 0;
  border:1px solid var(--line); border-radius:var(--r); background:var(--surface);
}
table{width:100%; border-collapse:collapse; font-size:15px; min-width:460px;}
th,td{text-align:left; padding:12px 16px; border-bottom:1px solid var(--line-2); vertical-align:top;}
tr:last-child td{border-bottom:0;}
th{
  background:var(--surface-2); color:var(--ink); font-weight:600;
  font-size:12.5px; letter-spacing:.05em; text-transform:uppercase;
}

.pw-foot{
  max-width:860px; margin:0 auto; padding:26px 24px 60px;
  border-top:1px solid var(--line); font-size:14.5px; color:var(--ink-3);
  display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap;
}
.pw-foot a{color:var(--ink-3); border-bottom-color:var(--line);}
.pw-foot a:hover{color:var(--accent);}

@media (max-width:640px){
  body{font-size:16px;}
  h2{font-size:20px; margin-top:38px;}
  .pw-legal{padding:32px 20px 60px;}
  .pw-nav .in{padding:12px 20px;}
}
