:root { --bg:#ffffff; --fg:#14152b; --muted:#5b5d78; --card:#f3f2fa; --line:#e4e2f0; --accent:#5a35a6; --hero1:#1a1c4d; --hero2:#5433a0; }
@media (prefers-color-scheme: dark) { :root { --bg:#0f1024; --fg:#ecebf7; --muted:#a6a5c2; --card:#1a1b38; --line:#2b2c4d; --accent:#b59cff; } }
* { box-sizing:border-box; }
body { margin:0; font:17px/1.6 -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, sans-serif; background:var(--bg); color:var(--fg); }
a { color:var(--accent); }
.wrap { max-width:980px; margin:0 auto; padding:0 20px; }
header.top { display:flex; align-items:center; justify-content:space-between; padding:18px 0; }
header.top .brand { display:flex; align-items:center; gap:10px; font-weight:700; color:var(--fg); text-decoration:none; }
header.top .brand img { width:32px; height:32px; }
header.top nav a { margin-left:18px; color:var(--muted); text-decoration:none; font-size:15px; }
.hero { background:linear-gradient(135deg,var(--hero1),var(--hero2)); color:#fff; padding:64px 0 56px; text-align:center; }
.hero img.icon { width:128px; height:128px; }
.hero h1 { font-size:44px; line-height:1.15; margin:18px 0 10px; }
.hero p.lead { font-size:20px; opacity:.88; max-width:640px; margin:0 auto 26px; }
.badge { display:inline-block; background:#fff; color:#1a1c4d; padding:12px 22px; border-radius:12px; font-weight:600; text-decoration:none; }
.hero small { display:block; margin-top:12px; opacity:.75; font-size:14px; }
section { padding:48px 0; }
h2 { font-size:28px; margin:0 0 18px; }
.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:16px; }
.card { background:var(--card); border:1px solid var(--line); border-radius:14px; padding:18px 20px; }
.card h3 { margin:0 0 6px; font-size:18px; }
.card p { margin:0; color:var(--muted); font-size:16px; }
.shots img { width:100%; border-radius:12px; border:1px solid var(--line); margin-bottom:16px; display:block; }
.doc h1 { font-size:34px; margin:32px 0 6px; }
.doc .meta { color:var(--muted); margin-bottom:28px; }
.doc h2 { font-size:22px; margin:30px 0 8px; }
.doc hr { border:0; border-top:1px solid var(--line); margin:44px 0; }
footer { border-top:1px solid var(--line); padding:26px 0 40px; color:var(--muted); font-size:14px; }
footer a { color:var(--muted); margin-right:16px; }
@media (max-width:600px) { .hero h1 { font-size:32px; } .hero p.lead { font-size:18px; } header.top nav a { margin-left:12px; } }
