/* Shared styling for the legal / support documents (privacy, terms, support),
   in the app's violet brand palette so all pages read as one product. */
:root {
  --bg: #FAF5FF; --card: #FFFFFF; --text: #1F2937; --subtext: #6B7280; --muted: #9CA3AF;
  --border: #EDE9FE; --violet: #8B5CF6; --violet-dark: #7C3AED; --violet-light: #F5F3FF;
  color-scheme: light;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  background: var(--bg); color: var(--text); line-height: 1.65; margin: 0;
  -webkit-font-smoothing: antialiased;
}
.doc { max-width: 760px; margin: 0 auto; padding: 32px 22px 72px; }
.topbar { display: flex; align-items: center; gap: 10px; margin-bottom: 28px; }
.brand-mark { width: 28px; height: 28px; border-radius: 8px; background: var(--violet-dark); color: #fff;
  display: grid; place-items: center; font-family: 'Fraunces', Georgia, serif; font-size: 16px; }
.topbar a { font-size: 14px; font-weight: 600; color: var(--violet-dark); text-decoration: none; }
h1 { font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 2em; line-height: 1.15; margin: 0 0 6px; }
h2 { font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 1.3em; color: var(--violet-dark); margin: 2em 0 .4em; }
h3 { font-size: 1.05em; margin: 1.4em 0 .3em; }
.updated { color: var(--muted); font-size: .9em; margin: 0 0 1.6em; }
a { color: var(--violet-dark); }
ul { padding-left: 1.2em; }
li { margin: .25em 0; }
.todo { background: var(--violet-light); border: 1px dashed var(--violet); border-radius: 8px;
  padding: 1px 8px; font-weight: 600; color: var(--violet-dark); }
.note { background: var(--violet-light); border: 1px solid var(--border); border-radius: 12px;
  padding: 14px 18px; font-size: .95em; color: var(--subtext); margin: 18px 0; }
details { background: var(--card); border: 1px solid var(--border); border-radius: 12px; padding: 2px 18px; margin: 10px 0; }
summary { cursor: pointer; font-weight: 600; padding: 12px 0; list-style: none; }
summary::-webkit-details-marker { display: none; }
summary::before { content: '+ '; color: var(--violet-dark); font-weight: 800; }
details[open] summary::before { content: '– '; }
details[open] summary { color: var(--violet-dark); }
details p, details ul { margin-top: 0; padding-bottom: 12px; }
.foot { margin-top: 3em; padding-top: 1.2em; border-top: 1px solid var(--border);
  font-size: .9em; color: var(--subtext); display: flex; gap: 18px; flex-wrap: wrap; }
.foot a { color: var(--subtext); }
.foot a:hover { color: var(--violet-dark); }
