:root { --bg:#f5f7f6; --card:#fff; --ink:#18221f; --muted:#5a6a64; --line:#d8e1dd; --accent:#0d6a65; }
@media (prefers-color-scheme: dark) { :root { --bg:#0f1513; --card:#161e1b; --ink:#e3ebe7; --muted:#98a8a2; --line:#2a3632; --accent:#5cc5ba; } }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--ink); font:16px/1.6 "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
.wrap { max-width: 760px; margin: 0 auto; padding: 32px 20px 64px; }
header { display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:32px; }
header a.brand { font-weight:700; font-size:1.15rem; color:var(--ink); text-decoration:none; }
nav { display:flex; gap:16px; flex-wrap:wrap; }
nav a, a { color:var(--accent); }
h1 { font-size: clamp(1.8rem, 5vw, 2.6rem); line-height:1.15; margin:0 0 12px; }
h2 { margin-top: 32px; font-size:1.25rem; }
.lede { color:var(--muted); font-size:1.1rem; max-width: 60ch; }
.tools { display:grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap:12px; margin:24px 0; padding:0; list-style:none; }
.tools li { background:var(--card); border:1px solid var(--line); border-radius:8px; padding:14px 16px; }
.tools b { display:block; }
.tools span { color:var(--muted); font-size:.92rem; }
.price { background:var(--card); border:1px solid var(--line); border-radius:8px; padding:16px 18px; }
footer { margin-top:48px; padding-top:16px; border-top:1px solid var(--line); color:var(--muted); font-size:.9rem; }
