:root { --bg: #fffdf7; --fg: #1f1c14; --muted: #6b6455; --link: #8a5a00; --code: #f2ecdc; }
@media (prefers-color-scheme: dark) { :root { --bg: #17150f; --fg: #ece6d6; --muted: #a59d8a; --link: #f2b84b; --code: #2a261c; } }
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--fg); font: 17px/1.6 "Segoe UI", system-ui, sans-serif; }
main { max-width: 720px; margin: 0 auto; padding: 32px 16px 64px; }
header { display: flex; align-items: center; gap: 14px; }
header img { border-radius: 12px; }
h1 { font-size: 1.8rem; margin: 0; }
h2 { font-size: 1.15rem; margin-top: 2rem; }
.lead { font-size: 1.2rem; }
.muted { color: var(--muted); }
a { color: var(--link); }
code { background: var(--code); padding: 1px 5px; border-radius: 4px; word-break: break-all; }

/* Home page */
main.home { max-width: 1040px; }
.hero { margin-top: 1.5rem; }
.tagline { font-size: clamp(1.6rem, 4vw, 2.4rem); font-weight: 600; line-height: 1.2; margin: 0 0 .6rem; }
.store { margin: 1.2rem 0; }
.store img { display: block; height: auto; }
.demo { display: block; width: 100%; height: auto; border-radius: 12px; background: #111; box-shadow: 0 8px 30px rgba(0,0,0,.25); }
.points { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 8px 28px; margin-top: 1.5rem; }
.points h2 { margin-bottom: .3rem; }
.points p { margin-top: 0; }
.shots { display: grid; gap: 28px; margin-top: 2rem; }
.shots figure { margin: 0; }
.shots img { display: block; width: 100%; height: auto; border-radius: 10px; box-shadow: 0 4px 18px rgba(0,0,0,.2); }
.shots figcaption { color: var(--muted); margin-top: .4rem; }
footer { margin-top: 2rem; color: var(--muted); }
