/* Privacy Policy and Terms pages: plain static pages in the app's "violet night" look. Kept apart from style.css
   so they load with nothing else (Google and Stripe fetch them without the app). No inline styles or scripts (CSP). */
html, body { margin: 0; background: #0c0a14; color: #efebff; font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; -webkit-text-size-adjust: 100%; }
body { padding: 0 16px calc(40px + env(safe-area-inset-bottom)); }
.wrap { max-width: 720px; margin: 0 auto; }
header.top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 0 8px; border-bottom: 1px solid #262036; }
.brand { display: inline-flex; align-items: center; gap: 8px; color: #a78bfa; text-decoration: none; font-weight: 700; font-size: 18px; }
.brand span { color: #efebff; }
.back { color: #a78bfa; text-decoration: none; font-size: 14px; font-weight: 600; white-space: nowrap; }
.back:hover, .brand:hover { filter: brightness(1.1); }
h1 { margin: 22px 0 4px; font-size: 26px; letter-spacing: -0.01em; }
.updated { margin: 0 0 18px; font-size: 13px; color: #a098bb; }
h2 { margin: 26px 0 8px; font-size: 17px; color: #efebff; }
p, li { font-size: 15px; line-height: 1.6; color: #dcd6ef; }
p { margin: 0 0 12px; }
ul { margin: 0 0 12px; padding-left: 20px; }
li { margin-bottom: 6px; }
a { color: #a78bfa; }
.note { margin: 14px 0; padding: 12px 14px; border-radius: 12px; background: #15111f; border: 1px solid #312947; font-size: 14px; color: #dcd6ef; }
.box { margin: 18px 0; padding: 14px; border-radius: 16px; background: linear-gradient(135deg, #1d1730 0%, #0f0b1a 48%, #1d1730 100%); border: 1px solid #262036; }
.box h2 { margin-top: 0; }
footer { margin-top: 32px; padding-top: 14px; border-top: 1px solid #262036; font-size: 12px; color: #817a9c; line-height: 1.5; }
footer a { color: #a098bb; }
@media (min-width: 600px) { body { padding-left: 24px; padding-right: 24px; } h1 { font-size: 30px; } }

/* /optout form */
.form { display: flex; flex-direction: column; gap: 12px; margin: 18px 0; }
.field { display: flex; flex-direction: column; gap: 6px; font-size: 14px; font-weight: 600; color: #beb5d8; }
.field input, .field textarea { width: 100%; box-sizing: border-box; padding: 0 14px; height: 46px; border-radius: 12px; border: 1px solid #312947; background: #15111f; color: #efebff; font: inherit; font-size: 16px; font-weight: 400; }
.field textarea { height: auto; padding: 10px 14px; line-height: 1.45; resize: vertical; }
.field input:focus, .field textarea:focus { outline: none; border-color: #a78bfa; }
.form-error { margin: 0; font-size: 14px; color: #f87171; }
.btn { height: 48px; padding: 0 18px; border: 0; border-radius: 12px; background: #a78bfa; color: #140b26; font: inherit; font-size: 16px; font-weight: 700; cursor: pointer; }
.btn:disabled { opacity: 0.6; }
.code { font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 20px; letter-spacing: 0.12em; color: #a78bfa; }
.form[hidden], .box[hidden] { display: none; }
