:root { --c1: #E53935; --c2: #EF5350; }
* { box-sizing: border-box; margin: 0; }
body { font-family: -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; color: #1a1a2e; background: #fafafa; line-height: 1.6; }
header.hero { background: linear-gradient(135deg, var(--c1), var(--c2)); color: #fff; padding: 64px 24px 56px; text-align: center; }
header.hero img.icon { width: 112px; height: 112px; border-radius: 26px; box-shadow: 0 8px 30px rgba(0,0,0,.25); }
header.hero h1 { font-size: 2.2rem; margin: 18px 0 6px; }
header.hero p.tag { font-size: 1.1rem; opacity: .95; max-width: 560px; margin: 0 auto; }
a.store { display: inline-block; margin-top: 22px; background: #111; color: #fff; padding: 12px 28px; border-radius: 10px; text-decoration: none; font-weight: 600; }
main { max-width: 760px; margin: 0 auto; padding: 40px 24px 64px; }
main h2 { margin: 28px 0 10px; font-size: 1.35rem; }
.feat { background: #fff; border: 1px solid #eee; border-radius: 12px; padding: 16px 20px; margin: 12px 0; }
.feat b { color: var(--c1); }
footer { text-align: center; padding: 28px 16px 48px; color: #666; font-size: .9rem; }
footer a { color: var(--c1); margin: 0 10px; text-decoration: none; }
.prose h1 { font-size: 1.8rem; margin-bottom: 6px; }
.prose .updated { color: #888; font-size: .9rem; margin-bottom: 20px; }
.prose h2 { font-size: 1.2rem; margin: 24px 0 8px; }
.prose p, .prose li { margin-bottom: 10px; }
.prose ul { padding-left: 22px; }
nav.top { background: #111; padding: 10px 16px; text-align: center; }
nav.top a { color: #fff; margin: 0 12px; text-decoration: none; font-size: .95rem; }
