/* Shared styles for privacy.html and terms.html — matches index.html design system */
:root{
  --cream:#FFF6EE; --surface:#FFFFFF; --surface-2:#FBF4EC;
  --ink:#221D2C; --ink-2:#4A4358; --ink-3:#736B80;
  --purple-cta:#7150F0; --purple-text:#6C4AEE; --purple-deep:#4C3196;
  --tint-lilac:#EDE7FB;
  --line:rgba(34,29,44,.10); --line-strong:rgba(34,29,44,.17);
  --sh-xs:0 1px 2px rgba(34,29,44,.05);
  --r-sm:12px; --r:16px;
}
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--cream); color:var(--ink);
  font-family:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
  font-size:17px; line-height:1.65; letter-spacing:-.005em;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
.wrap{ max-width:740px; margin-inline:auto; padding:0 24px; }

.nav{
  background:rgba(255,246,238,.88); border-bottom:1px solid var(--line);
  position:sticky; top:0; z-index:10;
  backdrop-filter:saturate(150%) blur(12px); -webkit-backdrop-filter:saturate(150%) blur(12px);
}
.nav__in{ display:flex; align-items:center; justify-content:space-between; height:66px; }
.brand{ display:flex; align-items:center; gap:10px; text-decoration:none; font-weight:700; letter-spacing:-.03em; font-size:16.5px; color:inherit; }
.brand img{ width:30px; height:30px; border-radius:8px; }
.back{
  text-decoration:none; font-weight:500; font-size:15px; color:var(--ink-2);
  border:1px solid var(--line-strong); border-radius:10px; padding:9px 15px;
  background:var(--surface); box-shadow:var(--sh-xs); transition:border-color .15s, color .15s;
}
.back:hover{ border-color:var(--ink-3); color:var(--ink); }

main{ padding:clamp(46px,6vw,76px) 0 clamp(58px,7vw,92px); }
h1{ font-size:clamp(32px,5vw,46px); letter-spacing:-.034em; line-height:1.1; margin:0 0 12px; font-weight:700; }
.updated{ color:var(--ink-3); font-size:15px; margin:0 0 36px; }
h2{ font-size:clamp(21px,2.4vw,26px); letter-spacing:-.028em; margin:44px 0 14px; font-weight:700; }
h3{ font-size:18px; letter-spacing:-.02em; margin:28px 0 8px; font-weight:650; }
p,li{ color:var(--ink-2); }
p{ margin:0 0 15px; }
ul{ margin:0 0 15px; padding-left:22px; }
li{ margin-bottom:9px; }
li::marker{ color:var(--ink-3); }
strong{ color:var(--ink); font-weight:650; }
a{ color:var(--purple-deep); text-underline-offset:2px; }

.note{
  background:var(--surface); border:1px solid var(--line); border-left:3px solid var(--purple-cta);
  border-radius:var(--r-sm); padding:20px 22px; margin:24px 0; box-shadow:var(--sh-xs);
}
.note p:last-child{ margin-bottom:0; }

.toc{ background:var(--surface); border:1px solid var(--line); border-radius:var(--r); padding:24px 26px; box-shadow:var(--sh-xs); margin-bottom:44px; }
.toc h2{ margin:0 0 14px; font-size:12.5px; letter-spacing:.11em; text-transform:uppercase; color:var(--ink-3); font-weight:700; }
.toc ul{ margin:0; padding:0; list-style:none; display:grid; gap:9px; }
.toc a{ text-decoration:none; font-weight:500; font-size:15.5px; color:var(--ink-2); }
.toc a:hover{ color:var(--purple-deep); text-decoration:underline; }

.foot{ border-top:1px solid var(--line); padding:26px 0 48px; font-size:14px; color:var(--ink-3); }
.foot a{ color:var(--ink-3); }
.foot a:hover{ color:var(--ink); }
