/* Favoritos, sacola e interações reutilizáveis beat34 */
.shopNavButtons{display:flex;gap:5px;align-items:center}
.shopNavBtn{position:relative;width:39px;height:40px;display:grid;place-items:center;color:#272223;text-decoration:none;border-radius:7px;transition:background .18s}
.shopNavBtn:hover,.shopNavBtn.active{background:#fff0ed;color:#c22b35}
.shopNavBtn svg{width:22px;height:22px}
.shopNavBtn [data-cart-count],.shopNavBtn [data-fav-count]{position:absolute;right:0;top:0;transform:translate(18%,-6%);background:#e32229;color:white;min-width:18px;height:18px;border-radius:18px;padding:3px;font:800 10px/12px 'Space Grotesk',sans-serif;text-align:center}
.shopNavBtn span[hidden]{display:none}
.productCard{position:relative}
.productPhoto{display:block;position:relative}
.shopHeart{position:absolute;top:9px;right:9px;width:36px;height:36px;border:1px solid #eee2df;background:#fffcf9e8;border-radius:50%;z-index:3;color:#332c2b;display:grid;place-items:center;font-size:28px;line-height:1}
.shopHeart:hover,.shopHeart.isFavorite{background:#fff0ed;color:#d92132;border-color:#e9b7b2}
.shopHeart .favoriteGlyph{transform:translateY(-1px)}
.shopQuickAdd{display:block;width:100%;padding:10px 7px;margin:13px 0 6px;border:1px solid #d9bcb5;background:#fff9f6;color:#ae3037;border-radius:5px;font:800 10px 'Space Grotesk',sans-serif;letter-spacing:.25px}
.shopQuickAdd:hover{border-color:#bc333b;background:#ffebe6}
.shopToast{position:fixed;bottom:24px;right:20px;z-index:220;display:flex;align-items:center;gap:14px;background:#272223;color:#fff;padding:14px 17px;border-radius:7px;font:700 12px 'DM Sans',sans-serif;max-width:calc(100vw - 32px);box-shadow:0 12px 35px #160d0d55;transform:translateY(130%);opacity:0;transition:transform .2s,opacity .2s}
.shopToast.show{transform:translateY(0);opacity:1}
.shopToast a{color:#ffa5a7;text-decoration:underline;white-space:nowrap}
.quickDialog{width:min(460px,calc(100vw - 24px));max-height:90vh;overflow-y:auto;border:0;border-radius:12px;padding:22px;background:#fff;color:#2c2523;box-shadow:0 15px 85px #1208098a}
.quickDialog::backdrop{background:#1b1515ad;backdrop-filter:blur(2px)}
.quickHead{display:flex;justify-content:space-between;gap:12px}
.quickHead span{color:#b6323b;font:800 9px 'Space Grotesk';letter-spacing:.6px}
.quickHead h2{font:700 21px/1.25 'Space Grotesk';margin:9px 0 18px}
.quickClose{border:0;background:#f5edeb;border-radius:50%;font-size:22px;width:34px;height:34px}
#quickImage{background:#f7f2ef;display:grid;place-items:center;border-radius:8px}
#quickImage img{height:160px;width:100%;object-fit:contain}
.quickChoices{display:grid;gap:8px;margin-top:14px}
.quickOption{display:flex;align-items:center;gap:8px;border:1px solid #e9dbd7;padding:13px;border-radius:7px;cursor:pointer;font-size:11px}
.quickOption:has(input:checked){background:#fff4f0;border-color:#e5aca7}
.quickOption input{accent-color:#ce2d38}
.quickOption>span{flex:1;font-weight:700}
.quickOption strong{font-weight:800}
.quickOption small{font-size:9px;color:#a47c64;max-width:105px}
.quickConfirm{display:block;width:100%;margin-top:18px;padding:15px;background:#e32229;color:#fff;border:0;border-radius:5px;font:800 11px 'Space Grotesk'}
.quickError{font-size:11px;color:#b32e38;line-height:1.6}
.pdPurchase{position:relative}
.pdFavorite{position:absolute;right:0;top:51px;background:white;border:1px solid #e8dcd7;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-size:28px;z-index:2;cursor:pointer;color:#4b3c36}
.pdFavorite.isFavorite{color:#e32229;background:#fff2ef}
.pdAddToCart{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;border:1px solid #262121;background:#fff;color:#262121;border-radius:6px;padding:16px;font:800 11px 'Space Grotesk';text-align:center;margin:10px 0 0}
.pdAddToCart:hover{background:#282122;color:#fff}
@media(max-width:830px){
 .shopNavButtons{gap:1px}
 .shopNavBtn{width:36px;height:38px}
 .shopNavBtn svg{width:21px}
}
@media(max-width:640px){
 .headerTools{gap:3px}
 .shopNavBtn{width:33px;height:37px}
 .shopNavBtn svg{width:20px}
 .shopNavBtn [data-cart-count],.shopNavBtn [data-fav-count]{height:16px;min-width:16px;font-size:9px;padding:2px}
 .shopHeart{width:33px;height:33px;top:8px;right:8px;font-size:24px}
 .shopQuickAdd{font-size:9px;padding:10px 6px}
 .shopToast{bottom:95px;left:12px;right:12px;justify-content:space-between;font-size:11px}
 .pdFavorite{top:43px;right:4px;width:38px;height:38px}
}
@media(prefers-reduced-motion:reduce){.shopToast,.shopNavBtn{transition:none}}