/* Digital Town info pages (/about, /privacy, /terms, /contact, /sponsor, 404).
   Same visual language as the town: dusk sky, VT323, cream pixel borders.
   No canvas, no scripts. */
/* VT323 by Peter Hull, SIL Open Font License 1.1 (/licenses/VT323-OFL.txt),
   self-hosted: the same three subsets Google Fonts served. */
@font-face { font-family:'VT323'; font-style:normal; font-weight:400; font-display:swap;
  src:url(/assets/vt323-vietnamese.0ee3d783a8.woff2) format('woff2');
  unicode-range:U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family:'VT323'; font-style:normal; font-weight:400; font-display:swap;
  src:url(/assets/vt323-latin-ext.dcbaf698a4.woff2) format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family:'VT323'; font-style:normal; font-weight:400; font-display:swap;
  src:url(/assets/vt323-latin.043a60145a.woff2) format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
* { box-sizing:border-box; margin:0; padding:0; }
html { min-height:100%; background:#1f1c37 linear-gradient(180deg,#1f1c37 0%,#26203d 28%,#302645 52%,#392b4d 74%,#543b56 100%) no-repeat; }
body { color:#efe6d8; font-family:'VT323', ui-monospace, Menlo, Consolas, monospace;
  font-size:21px; line-height:1.35; letter-spacing:0.5px;
  padding:calc(18px + env(safe-area-inset-top)) 16px calc(28px + env(safe-area-inset-bottom)); }
a { color:#9fe3d6; text-underline-offset:3px; }
a:hover, a:focus-visible { color:#efe6d8; }
.top, .draft, main.card, footer { max-width:720px; margin-left:auto; margin-right:auto; }
.top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:18px; }
.home { display:flex; align-items:center; gap:10px; color:#efe6d8; text-decoration:none;
  font-size:24px; letter-spacing:4px; text-shadow:0 2px 0 #000a; }
.home svg { width:32px; height:32px; display:block; box-shadow:0 3px 0 #000a; }
.pxbtn { font-family:inherit; font-size:17px; letter-spacing:2px; color:#efe6d8; background:#26202e;
  border:2px solid #efe6d8; padding:3px 10px 4px; box-shadow:0 3px 0 #000a; text-decoration:none;
  white-space:nowrap; }
.pxbtn:active { transform:translateY(2px); box-shadow:0 1px 0 #000a; }
.draft { border:2px dashed #f2c46d; color:#f2c46d; background:rgba(20,16,34,0.7); padding:8px 12px;
  margin-bottom:14px; font-size:18px; }
main.card { background:rgba(24,18,48,0.93); border:2px solid #efe6d8; box-shadow:0 6px 0 #000c;
  padding:22px 22px 26px; }
h1 { font-size:34px; font-weight:normal; letter-spacing:3px; line-height:1.1; margin-bottom:10px; }
h2 { font-size:24px; font-weight:normal; letter-spacing:2px; margin:24px 0 6px; }
h2::before { content:""; display:inline-block; width:8px; height:8px; background:#6ad0c0;
  margin-right:10px; vertical-align:middle; box-shadow:2px 2px 0 #000a; }
p { margin:8px 0; }
ul, ol { margin:8px 0 8px 24px; }
li { margin:4px 0; }
b { font-weight:normal; color:#f8d5ae; }
.lede { font-size:23px; color:#f3ead9; }
.meta { color:#a99cb8; font-size:18px; }
.note { color:#a99cb8; font-size:18px; border-left:4px solid #4a3a6e; padding-left:10px; margin:12px 0; }
.todo { color:#f2c46d; border-bottom:2px dashed #f2c46d; }
.plans { width:100%; border-collapse:collapse; margin:10px 0; }
.plans th, .plans td { border:2px solid #4a3a6e; padding:6px 10px; text-align:left; font-weight:normal;
  vertical-align:top; }
.plans th { color:#f8d5ae; white-space:nowrap; }
footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 16px; margin-top:18px;
  color:#8d81a0; font-size:17px; }
footer nav { display:flex; flex-wrap:wrap; gap:4px 14px; }
footer a { color:#a99cb8; text-decoration:none; }
footer a:hover, footer a:focus-visible, footer a[aria-current="page"] { color:#efe6d8; text-decoration:underline; }
@media (max-width:480px) {
  body { font-size:19px; padding-left:12px; padding-right:12px; }
  h1 { font-size:28px; }
  h2 { font-size:22px; }
  main.card { padding:16px 14px 20px; }
  .home { font-size:20px; letter-spacing:3px; }
  .home svg { width:26px; height:26px; }
  .pxbtn { font-size:15px; letter-spacing:1px; padding:2px 7px 3px; }
}
