:root{--ink:#16202a;--muted:#5b6773;--line:#e3e7ec;--bg:#fff;--soft:#f5f7f9;--brand:#0b5fff;--warn:#a15c00}@media (prefers-color-scheme:dark){:root{--ink:#e8edf2;--muted:#9aa6b2;--line:#2a3440;--bg:#10161c;--soft:#18212a;--brand:#6ea0ff;--warn:#e0a44a}}*{box-sizing:border-box}body{margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg)}a{color:var(--brand)}.wrap{max-width:1120px;margin:0 auto;padding:0 16px}header.site{border-bottom:1px solid var(--line)}header.site .wrap{display:flex;gap:16px;align-items:center;height:56px}header.site a.brand{font-weight:700;color:var(--ink);text-decoration:none}footer.site{border-top:1px solid var(--line);margin-top:48px;padding:24px 0;color:var(--muted);font-size:14px}.grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));padding:0;list-style:none}.card{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--bg)}.card a{color:inherit;text-decoration:none;display:block}.card img{width:100%;height:180px;object-fit:cover;display:block;background:var(--soft)}.card .body{padding:12px}.card h3{margin:0 0 4px;font-size:16px}.price{font-weight:700}.muted{color:var(--muted);font-size:14px}.badge{display:inline-block;font-size:12px;border:1px solid var(--line);border-radius:999px;padding:1px 8px;margin-right:4px}form.filters{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}button,input,select,textarea{font:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink)}button.primary{background:var(--brand);color:#fff;border-color:var(--brand);cursor:pointer}button:disabled{opacity:.6}.layout{display:grid;grid-gap:24px;gap:24px;grid-template-columns:minmax(0,1fr)}@media (min-width:900px){.layout{grid-template-columns:minmax(0,1fr) 340px}}.panel{border:1px solid var(--line);border-radius:8px;padding:16px;background:var(--soft)}.gallery{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.gallery img{width:100%;height:auto;border-radius:6px}dl.facts{display:grid;grid-template-columns:max-content 1fr;grid-gap:4px 16px;gap:4px 16px}dl.facts dt{color:var(--muted)}dl.facts dd{margin:0}nav.pages{display:flex;gap:12px;margin:24px 0}.error{color:#c0392b}.notice{color:var(--warn)}.sr{position:absolute;left:-9999px}