/* AQUAGIFT Product Gallery v3.1 */

/* === ギャラリー === */
.agpg-gallery{margin:0 auto 2rem;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
.agpg-main-wrap{position:relative;width:100%;aspect-ratio:1/1;background:#f8f8f8;border:1px solid #e5e5e5;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.agpg-main-img{max-width:100%;max-height:100%;object-fit:contain;transition:opacity .2s ease;cursor:default!important}
div.agpg-gallery .agpg-main-wrap picture{max-width:100%!important;max-height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important}
div.agpg-gallery .agpg-main-wrap picture img{max-width:100%!important;max-height:100%!important;object-fit:contain!important;width:auto!important;height:auto!important}
.agpg-thumbs{display:grid;grid-template-columns:repeat(var(--agpg-cols,5),1fr);gap:8px;margin-top:10px}
div.agpg-gallery .agpg-thumbs .agpg-th{aspect-ratio:1/1;border:2px solid #e5e5e5;border-radius:4px;overflow:hidden;cursor:pointer!important;transition:border-color .2s;background-color:#f8f8f8;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
div.agpg-gallery .agpg-thumbs .agpg-th:hover{border-color:#999}
div.agpg-gallery .agpg-thumbs .agpg-th.agpg-active{border-color:#0073aa;box-shadow:0 0 0 1px #0073aa}
.agpg-info{margin-top:16px;padding-top:16px;border-top:1px solid #eee}
.agpg-name{font-size:1.3rem;font-weight:700;margin:0 0 8px;line-height:1.4;color:#222}
.agpg-price{font-size:1.2rem;margin:0 0 8px;color:#c00;font-weight:700}
.agpg-price .agpg-tax{font-size:.85rem;font-weight:400;color:#666}
.agpg-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.agpg-tag{display:inline-block;padding:2px 10px;background:#f0f0f0;border-radius:20px;font-size:.8rem;color:#555;text-decoration:none;transition:background .2s}
a.agpg-tag:hover{background:#ddd;color:#333}
.agpg-desc{font-size:.95rem;color:#555;line-height:1.7;margin-top:8px}
.agpg-no-gallery{padding:40px;text-align:center;color:#999;background:#f8f8f8;border:1px dashed #ddd;border-radius:6px}

/* === 商品一覧（ショートコード） === */
.agpg-product-list{display:grid;grid-template-columns:repeat(var(--agpg-list-cols,3),1fr);gap:20px;margin:0 auto}
.agpg-list-item{display:block;text-decoration:none;color:inherit;border:1px solid #e5e5e5;border-radius:8px;overflow:hidden;transition:box-shadow .2s,transform .2s;background:#fff}
.agpg-list-item:hover{box-shadow:0 4px 12px rgba(0,0,0,.1);transform:translateY(-2px)}
.agpg-list-thumb{aspect-ratio:1/1;background:#f8f8f8;overflow:hidden;display:flex;align-items:center;justify-content:center}
.agpg-list-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.agpg-list-item:hover .agpg-list-thumb img{transform:scale(1.05)}
.agpg-list-no-img{color:#ccc;font-size:.9rem}
.agpg-list-info{padding:12px 14px}
.agpg-list-name{font-size:1rem;font-weight:600;margin:0 0 6px;line-height:1.4;color:#222}
.agpg-list-price{font-size:1.05rem;color:#c00;font-weight:700;margin-bottom:6px}
.agpg-list-price .tax{font-size:.8rem;font-weight:400;color:#666}
.agpg-list-tags{display:flex;flex-wrap:wrap;gap:4px}
.agpg-no-products{text-align:center;color:#999;padding:40px}

/* === レスポンシブ === */
@media(max-width:768px){
    .agpg-gallery{max-width:100%!important}
    .agpg-thumbs{gap:6px}
    .agpg-name{font-size:1.1rem}
    .agpg-product-list{--agpg-list-cols:2!important;gap:12px}
    .agpg-shop-links{flex-direction:column}
}
@media(max-width:480px){
    .agpg-thumbs{--agpg-cols:4!important;gap:4px}
    .agpg-name{font-size:1rem}
    .agpg-product-list{--agpg-list-cols:1!important}
}

/* === 購入リンクボタン（パターンA: 横並び） === */
.agpg-shop-links{display:flex;gap:8px;margin-top:16px}
.agpg-shop-btn{flex:0 1 33.33%;max-width:33.33%;display:flex;align-items:center;justify-content:center;padding:14px 8px;border-radius:6px;color:#fff!important;text-decoration:none!important;font-weight:700;font-size:.85rem;transition:transform .2s,box-shadow .2s;text-align:center}
.agpg-shop-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15);color:#fff!important;opacity:1!important}
.agpg-shop-btn-text{display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.3}
.agpg-shop-btn-icon{font-size:1rem;font-weight:700;font-style:normal;display:block;margin-bottom:2px}
.agpg-btn-rakuten{background:#bf0000}
.agpg-btn-rakuten:hover{background:#a00000}
.agpg-btn-yahoo{background:#ff0033}
.agpg-btn-yahoo:hover{background:#e0002d}
.agpg-btn-self{background:#0073aa}
.agpg-btn-self:hover{background:#005a87}

/* === 商品リンクカード [product_links] === */
.agpg-links-card{background:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:20px 24px;max-width:600px}
.agpg-links-card__name{font-size:1.15rem;font-weight:700;margin:0 0 8px;line-height:1.4;color:#222}
.agpg-links-card__price{font-size:1.2rem;color:#c00;font-weight:700;margin-bottom:8px}
.agpg-links-card__price span{font-size:.8rem;font-weight:400;color:#999}
.agpg-links-card__desc{font-size:.9rem;color:#555;line-height:1.6;margin-bottom:4px}
