/* snpr.app shared chrome: tokens, nav, footer, policy prose. Every page links this one file. */
:root {
  --bg: #FBFAF7; --card: #FFFFFF; --ink: #15161A; --muted: #62656E; --line: #E7E4DE;
  --accent: #F2542D; --accent-soft: #FDE6DF; --accent-ink: #FFFFFF;
  --navy: #1B2A4A; --navy-soft: #E8ECF4;
  color-scheme: light;
}
* { box-sizing: border-box; }
html, body { margin: 0; }
body { font: 17px/1.55 Inter, system-ui, sans-serif; color: var(--ink); background: var(--bg); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
svg.i { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.wrap { max-width: 1200px; margin: 0 auto; padding: 0 28px; }
nav.top { display: flex; align-items: center; gap: 32px; height: 76px; }
.logo { display: flex; align-items: center; gap: 10px; }
.logo .word { font: 800 27px/1 "Inter Tight", Inter, sans-serif; letter-spacing: -0.045em; }
.links { display: flex; gap: 28px; margin-left: 12px; color: var(--muted); font-weight: 500; font-size: 15.5px; }
.links a:hover { color: var(--ink); }
.nav-r { margin-left: auto; display: flex; align-items: center; gap: 18px; font-weight: 600; font-size: 15.5px; }
.btn { display: inline-flex; align-items: center; gap: 8px; border-radius: 12px; font-weight: 600; padding: 11px 18px; }
.btn.primary { background: var(--accent); color: var(--accent-ink); }
.btn.ghost { border: 1.5px solid var(--line); background: var(--card); }
.btn.big { padding: 16px 24px; font-size: 17px; border-radius: 14px; }
footer.site { border-top: 1px solid var(--line); margin-top: 40px; padding: 28px 0 40px; color: var(--muted); font-size: 14.5px; }
footer.site .wrap { display: flex; flex-wrap: wrap; gap: 14px 28px; align-items: center; }
footer.site .made { margin-right: auto; }
footer.site a:hover { color: var(--ink); }
/* policy pages */
.prose { max-width: 720px; margin: 0 auto; padding: 24px 28px 20px; }
.prose h1 { font: 800 44px/1.08 "Inter Tight", Inter, sans-serif; letter-spacing: -0.03em; margin: 20px 0 8px; }
.prose .updated { color: var(--muted); margin: 0 0 28px; }
.prose h2 { font: 700 22px/1.25 "Inter Tight", Inter, sans-serif; margin: 34px 0 8px; letter-spacing: -0.01em; }
.prose p, .prose li { color: #2B2D33; }
.prose ul { padding-left: 22px; }
.prose li { margin: 6px 0; }
.prose a { color: var(--accent); font-weight: 600; }
.prose .box { background: var(--navy-soft); color: var(--navy); border-radius: 14px; padding: 16px 18px; margin: 18px 0; }
.prose .box b { color: var(--navy); }
@media (max-width: 960px) { .links { display: none; } }
@media (max-width: 560px) {
  .wrap { padding: 0 16px; } nav.top { height: 64px; } .nav-r .signin { display: none; }
  .prose { padding: 16px 16px 10px; } .prose h1 { font-size: 34px; }
}
