/* Shared styling for the standalone document pages (privacy, support,
   acknowledgements). These are NOT part of the PWA shell: they are plain
   scrolling documents, so they deliberately re-declare the few body rules
   app/index.html sets for the app (overflow:hidden, fixed height).

   Self-contained on purpose. A reviewer must be able to open these with the
   app broken, the service worker stale, or fonts blocked, so the palette is
   inlined here rather than imported, and every font has a system fallback. */
:root{
  --bg:#0b0b12; --panel:#15151f; --panel-2:#1d1d2b; --text:#f2f2f7; --muted:#9a9ab0;
  --accent:#ff2d78; --accent-2:#7a5cff; --accent-3:#36e0e0; --r:16px;
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;
  background:var(--bg);
  background-image:radial-gradient(120% 40% at 50% 0%, #1a1330 0%, var(--bg) 60%);
  background-repeat:no-repeat;
  color:var(--text);
  font:16px/1.65 'Outfit', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  -webkit-font-smoothing:antialiased;
}
.wrap{
  max-width:680px; margin:0 auto;
  padding:calc(env(safe-area-inset-top) + 28px) 20px calc(env(safe-area-inset-bottom) + 64px);
}
header{margin-bottom:34px;}
.brand{
  display:inline-block; text-decoration:none;
  font-family:'Unbounded', 'Outfit', sans-serif; font-weight:800; font-size:22px;
  letter-spacing:-.01em; color:var(--text);
  text-shadow:0 0 16px rgba(255,45,120,.45);
}
h1{font-family:'Unbounded', 'Outfit', sans-serif; font-weight:700; font-size:27px; line-height:1.25; letter-spacing:-.01em; margin:18px 0 6px;}
h2{font-size:19px; font-weight:600; margin:38px 0 10px; color:var(--text);}
h3{font-size:16px; font-weight:600; margin:24px 0 6px; color:var(--accent-3);}
p, li{color:#d8d8e4;}
p{margin:0 0 14px;}
ul{margin:0 0 14px; padding-left:22px;}
li{margin-bottom:7px;}
a{color:var(--accent-3);}
a:hover{color:var(--accent);}
.updated{color:var(--muted); font-size:14px; margin:0;}
.lede{font-size:17px; color:var(--text);}
strong{color:var(--text); font-weight:600;}
.card{background:var(--panel); border:1px solid #ffffff10; border-radius:var(--r); padding:18px 20px; margin:0 0 18px;}
.card h2{margin-top:0;}
.card :last-child{margin-bottom:0;}
.tag{
  display:inline-block; background:#ff2d7815; border:1px solid #ff2d7844; color:#ff9bbd;
  border-radius:99px; padding:3px 12px; font-size:13px; font-weight:600; margin-bottom:10px;
}
.tag.web{background:#7a5cff15; border-color:#7a5cff44; color:#bdaeff;}
pre{
  background:var(--panel-2); border:1px solid #ffffff10; border-radius:12px;
  padding:14px 16px; overflow-x:auto;
  font:12px/1.6 ui-monospace, SFMono-Regular, Menlo, monospace; color:var(--muted);
  white-space:pre-wrap;
}
hr{border:0; border-top:1px solid #ffffff14; margin:38px 0;}
footer{margin-top:44px; color:var(--muted); font-size:14px;}
footer a{margin-right:16px;}
