/* Shop pages (/shop/): product cards, gallery, buy panel, FAQ */
.shop-lede{font-size:1.15rem;max-width:820px}
.shop-trust{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;padding:0;margin:20px 0}
.shop-trust li{background:#fff;border:1.5px solid #c9e0ee;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.shop-trust span{font-size:.92rem;color:#3b4f66}
.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px;margin:16px 0 28px}
.shop-grid.small{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.shop-card{position:relative;display:flex;flex-direction:column;gap:6px;background:#fff;border:1.5px solid #c9e0ee;border-radius:14px;padding:12px;text-decoration:none;color:var(--navy);transition:transform .15s,box-shadow .15s}
.shop-card:hover,.shop-card:focus-visible{transform:translateY(-3px);box-shadow:0 10px 24px rgba(18,52,82,.15)}
.shop-card img{width:100%;height:auto;border-radius:8px;aspect-ratio:4/3;object-fit:cover;background:#eef3f8}
.shop-card strong{font-size:1.08rem;line-height:1.3}
.shop-tag{font-size:.9rem;color:#3b4f66;line-height:1.45}
.shop-badge{position:absolute;top:20px;left:20px;background:var(--navy);color:#fff;font-size:.75rem;font-weight:800;border-radius:999px;padding:3px 11px}
.shop-badge.live{background:#1e8449}
.shop-chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0}
.shop-chips i{font-style:normal;font-size:.78rem;font-weight:700;background:#eaf2f8;border-radius:999px;padding:2px 10px;color:#1f3a5f}
.shop-price{margin-top:auto;font-weight:900;font-size:1.2rem}.shop-price small{font-weight:700;font-size:.85rem;color:var(--coral);margin-left:8px}
.shop-soon{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.shop-soon li{background:#fff;border:1.5px dashed #9fc3da;border-radius:12px;padding:12px 16px;display:flex;flex-direction:column;gap:4px}
.shop-soon span{font-size:.92rem;color:#3b4f66}
.shop-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;align-items:start;margin:12px 0 24px}
@media(max-width:900px){.shop-top{grid-template-columns:1fr}}
.shop-gallery img#shop-main{width:100%;height:auto;border-radius:12px;border:1.5px solid #c9e0ee;background:#fff}
.shop-thumbs{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.shop-thumbs img{width:96px;height:auto;border-radius:6px;border:1.5px solid #c9e0ee}
.shop-buy{background:#fff;border:1.5px solid #c9e0ee;border-radius:14px;padding:20px 22px;position:sticky;top:12px}
.shop-buy h1{font-size:clamp(1.5rem,3vw,2rem);line-height:1.2;margin:.1em 0 .4em}
.shop-priceline strong{font-size:2rem}.shop-priceline small{color:#5b7186}
.buy-btn{display:block;text-align:center;background:var(--coral);color:#fff;font-weight:900;font-size:1.15rem;border-radius:12px;padding:14px 18px;text-decoration:none;box-shadow:0 3px 0 #c9473e;margin:14px 0 8px}
.buy-btn:hover,.buy-btn:focus-visible{background:var(--navy);box-shadow:0 3px 0 #0a2238}
.buy-btn.soon{background:#dbe8f1;color:var(--navy);box-shadow:none;cursor:default}
.shop-small{font-size:.88rem;color:#3b4f66;margin:6px 0}
.shop-spec{border-collapse:collapse;width:100%;margin:10px 0}
.shop-spec th,.shop-spec td{border:1px solid #c9e0ee;padding:8px 12px;text-align:left;vertical-align:top}.shop-spec th{background:#eaf2f8;width:30%}
.shop-faq{background:#fff;border:1.5px solid #c9e0ee;border-radius:10px;margin:8px 0;padding:2px 16px}
.shop-faq summary{cursor:pointer;font-weight:800;padding:10px 0}.shop-faq p{margin:0 0 12px}
.shop-steps li{margin:8px 0}
@media print{.shop-buy .buy-btn{display:none}}

.shop-stage{position:relative}.shop-stage #shop-main{cursor:pointer}
.shop-prev,.shop-next{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(18,52,82,.82);color:#fff;font-size:1.8rem;line-height:1;padding:0 0 4px;display:flex;align-items:center;justify-content:center}
.shop-prev{left:10px}.shop-next{right:10px}.shop-prev:hover,.shop-next:hover,.shop-prev:focus-visible,.shop-next:focus-visible{background:var(--coral)}
.shop-thumbs a{display:block;border-radius:6px;opacity:.7}.shop-thumbs a.on{opacity:1;outline:3px solid var(--coral)}.shop-thumbs a:hover{opacity:1}
.shop-gallery:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:12px}
