:root { color-scheme: dark; }
* { box-sizing: border-box; }
body { margin: 0; background: #050507; color: #e8e2d0; font: 18px/1.6 Georgia, serif; }
main { max-width: 680px; margin: 0 auto; padding: 48px 16px; }
h1 { font: 700 34px/1.2 ui-monospace, Menlo, monospace; letter-spacing: 1px; margin: 0 0 8px; }
h2 { font: 700 18px/1.3 ui-monospace, Menlo, monospace; color: #e0b552; margin: 32px 0 6px; }
p { margin: 0 0 12px; } a { color: #e0b552; }
.play { display: inline-block; margin: 20px 0; padding: 14px 28px; background: #8a1f1f; color: #fff; font: 700 16px ui-monospace, Menlo, monospace; text-decoration: none; }
.dim { color: #8b8578; }
nav.site { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0 0 28px; font: 14px ui-monospace, Menlo, monospace; }
nav.site a { color: #8b8578; text-decoration: none; } nav.site a:hover, nav.site a[aria-current] { color: #e0b552; }
footer { max-width: 680px; margin: 0 auto; padding: 24px 16px 48px; border-top: 1px solid #1d1b19; font: 14px ui-monospace, Menlo, monospace; color: #8b8578; }
footer a { color: #8b8578; margin-right: 14px; }
ul, ol { padding-left: 22px; } li { margin-bottom: 6px; }
table { border-collapse: collapse; width: 100%; margin: 8px 0 16px; font-size: 16px; } td, th { text-align: left; vertical-align: top; padding: 6px 8px; border-bottom: 1px solid #1d1b19; } th { color: #e0b552; font: 700 14px ui-monospace, Menlo, monospace; }
form label { display: block; margin: 14px 0 4px; font: 14px ui-monospace, Menlo, monospace; color: #8b8578; }
input, textarea { width: 100%; padding: 10px; background: #0e0d0c; color: #e8e2d0; border: 1px solid #2c2925; font: 17px Georgia, serif; }
textarea { min-height: 160px; resize: vertical; }
button { margin-top: 16px; padding: 12px 24px; background: #8a1f1f; color: #fff; border: 0; font: 700 15px ui-monospace, Menlo, monospace; cursor: pointer; }
.hp { position: absolute; left: -9999px; } .note { margin-top: 14px; }
