/* The Terms and Privacy pages (static: /terms.html, /privacy.html). Same look as the game's menus. */
:root { --bg: #14110d; --card: #1d1a12; --ink: #f4f2ec; --muted: #b9b2a2; --accent: #e3c15f; --line: rgba(255,255,255,0.12); }
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: radial-gradient(ellipse at 50% 0%, #3a2a1c 0%, #1b1510 40%, #0e0b08 100%) fixed; color: var(--ink); font: 400 17px/1.65 Inter, system-ui, -apple-system, 'Segoe UI', sans-serif; padding: max(20px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(40px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left)); }
.wrap { width: min(780px, 100%); margin: 0 auto; }
.top { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 8px; }
.brand { font: 600 20px 'Barlow Condensed', sans-serif; letter-spacing: 0.4em; color: var(--accent); text-decoration: none; }
.top nav a { color: var(--muted); text-decoration: none; margin-left: 16px; font: 600 16px 'Barlow Condensed', sans-serif; letter-spacing: 0.06em; }
.top nav a:hover, .top nav a[aria-current] { color: var(--accent); }
article { background: rgba(14,12,9,0.78); border: 1px solid var(--line); border-radius: 14px; padding: clamp(20px, 5vw, 40px); }
h1 { margin: 0 0 4px; font: 400 clamp(42px, 8vw, 64px)/1 'Caveat Brush', 'Segoe Print', cursive; color: var(--ink); transform: rotate(-1.2deg); transform-origin: left; }
.updated { margin: 0 0 22px; color: var(--muted); font-size: 15px; }
h2 { margin: 30px 0 6px; font: 700 26px 'Barlow Condensed', sans-serif; letter-spacing: 0.03em; color: var(--accent); }
p, li { margin: 0 0 12px; }
ul { padding-left: 22px; margin: 0 0 12px; }
a { color: var(--accent); }
.note { border-left: 3px solid var(--accent); background: rgba(227,193,95,0.08); padding: 10px 14px; border-radius: 0 8px 8px 0; margin: 14px 0; }
table { width: 100%; border-collapse: collapse; margin: 8px 0 16px; font-size: 15px; }
th, td { text-align: left; vertical-align: top; padding: 8px 10px; border-bottom: 1px solid var(--line); }
th { color: var(--muted); font-weight: 600; font: 600 14px 'Barlow Condensed', sans-serif; letter-spacing: 0.08em; text-transform: uppercase; }
.foot { margin-top: 28px; padding-top: 14px; border-top: 1px solid var(--line); color: var(--muted); font-size: 15px; }
@media (max-width: 560px) { body { font-size: 16px; } table, thead, tbody, tr, th, td { display: block; } thead { display: none; } tr { border-bottom: 1px solid var(--line); padding: 6px 0; } td { border: 0; padding: 2px 0; } td:first-child { font-weight: 600; color: var(--ink); } }
