
:root{--bg:#fafaf9;--fg:#1c1917;--muted:#57534e;--line:#e7e5e4;--card:#fff;--accent:#1d4ed8}
@media (prefers-color-scheme:dark){:root{--bg:#141414;--fg:#f5f5f4;--muted:#a8a29e;--line:#2e2e2e;--card:#1e1e1e;--accent:#93b4ff}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--accent)}
.wrap{max-width:1100px;margin:0 auto;padding:32px 16px 64px}
h1{font-size:clamp(1.5rem,3.5vw,2.25rem);line-height:1.2;margin:0 0 10px;text-wrap:balance}
.contact{color:var(--muted);margin:0 0 28px}
.count{color:var(--muted);font-size:.9rem;margin:0 0 12px}
.grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px}
.grid a{display:block;text-decoration:none;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;height:100%;transition:transform .12s,box-shadow .12s}
.grid a:hover,.grid a:focus-visible{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.12)}
.grid img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;background:var(--line)}
.grid span{display:block;padding:10px 12px 12px;font-weight:550;font-size:.95rem}
.top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;font-size:.95rem}
.top .pos{color:var(--muted)}
.viewer{display:grid;grid-template-columns:56px 1fr 56px;align-items:center;gap:8px}
.viewer figure{margin:0;display:flex;justify-content:center}
.viewer #main{max-width:100%;max-height:72vh;border-radius:10px;display:block;background:var(--line)}
.arrow{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--fg);text-decoration:none;font-size:26px;line-height:1}
.arrow:hover,.arrow:focus-visible{border-color:var(--fg)}
.thumbs{display:flex;justify-content:center;gap:8px;margin:12px 0 0;flex-wrap:wrap}
.thumbs button{padding:0;border:2px solid transparent;border-radius:6px;background:none;cursor:pointer}
.thumbs button[aria-current=true]{border-color:var(--accent)}
.thumbs img{width:64px;height:64px;object-fit:cover;border-radius:4px;display:block}
.info{max-width:720px;margin:24px auto 0}
.info h1{font-size:clamp(1.35rem,3vw,1.9rem)}
.info p{margin:0 0 16px}
.info .contact{margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}
@media (max-width:600px){.viewer{grid-template-columns:1fr}.viewer .arrow{display:none}.mnav{display:flex!important}}
.mnav{display:none;justify-content:space-between;margin-top:12px}
.mnav a{text-decoration:none;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--fg)}
.contact a{white-space:nowrap}
.grid .price{display:block;margin-top:4px;font-weight:700;font-size:1.05rem}
.info .price.big{font-size:1.5rem;font-weight:700;margin:-4px 0 12px}
.pending{font-style:normal;font-size:.75em;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:#fde68a;color:#78350f;padding:2px 7px;border-radius:999px;vertical-align:middle}
.grid li.is-pending img{opacity:.55}
