/* Product detail and unified favorites, shared by both editions. */
.shelf-top-note{padding:18px;border:1px solid currentColor;border-radius:16px;margin:20px 0;background:#fff}
.shelf-top-note[hidden]{display:none}.shelf-top-note p{font-size:14px;line-height:1.5;margin:8px 0 0}
.shelf-tools>button{margin:4px 8px 4px 0}
body[data-palette=shelf] .shelf-card .product-view{margin-top:auto}
#product-detail{box-sizing:border-box;width:min(620px,calc(100% - 24px));max-width:620px;max-height:88svh;overflow:auto;padding:24px;border:1px solid #701c3440;border-radius:24px;background:#fff;color:#701c34;box-shadow:0 18px 60px #0003}
#product-detail[data-diet=lactose]{color:#526b7a;border-color:#526b7a40}
#product-detail::backdrop{background:#1d243a80;backdrop-filter:blur(3px)}
#product-detail .product-close{position:sticky;top:0;float:right;display:grid;place-items:center;width:44px;height:44px;margin:0 0 0 12px;border:1px solid currentColor;border-radius:50%;background:#fff;color:inherit;font:28px/1 Arial;z-index:1;cursor:pointer}
#product-detail .product-detail-picture{height:210px;display:grid;place-items:center;margin:0 0 20px}
#product-detail .product-detail-picture img{width:100%;height:100%;max-height:210px;object-fit:contain}
#product-detail h2{font:700 28px/1.2 Fraunces,Georgia,serif;margin:10px 0 16px;overflow-wrap:anywhere}
#product-detail p{font:16px/1.5 Arial,sans-serif;margin:12px 0}
#product-detail .product-eyebrow{font:700 11px/1.4 Arial;letter-spacing:.12em}
#product-detail .product-favorite{display:block;width:100%;min-height:48px;padding:12px 20px;border:1px solid currentColor;border-radius:30px;color:inherit;background:#fff;font:16px/1.3 Arial;cursor:pointer}
#product-detail .product-favorite[aria-pressed=true]{color:#fff;background:#701c34;border-color:#701c34}
#product-detail[data-diet=lactose] .product-favorite[aria-pressed=true]{background:#526b7a;border-color:#526b7a}
#product-detail .product-shop{display:inline-flex;align-items:center;min-height:44px;color:inherit;font:15px/1.4 Arial;margin:8px 0}
#product-detail .product-favorite-status,#product-detail .product-footnote{font-size:13px}
#product-detail :focus-visible{outline:3px solid currentColor;outline-offset:3px}
.saved-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 30px}
.saved-product-grid .product-card{border:1px solid currentColor;border-radius:16px;display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#fff;color:var(--palette-ink,var(--ink,#701c34))}
.saved-product-grid .shelf-picture{height:auto;aspect-ratio:1;padding:10px;display:grid;place-items:center;background:#fff}
.saved-product-grid .shelf-picture img{height:100%;max-height:180px;width:100%;object-fit:contain}
.saved-product-grid .shelf-card-content{display:flex;flex-direction:column;flex:1;padding:12px}
.saved-product-grid h2{font:700 17px/1.3 Arial;margin:8px 0;overflow-wrap:anywhere}
.saved-product-grid p{font:13px/1.4 Arial;margin:0 0 10px;overflow-wrap:anywhere}
.saved-product-grid .shelf-tag{font:700 10px/1.4 Arial;text-transform:uppercase}
.saved-product-grid .shelf-store-label{font-size:11px}
.saved-product-grid .product-view{border:1px solid currentColor;border-radius:30px;padding:10px 6px;min-height:44px;width:100%;background:#fff;color:inherit;margin-top:auto;font:14px Arial;cursor:pointer}
@media(max-width:600px){.saved-product-grid{gap:8px}.saved-product-grid .shelf-card-content{padding:8px}.saved-product-grid h2{font-size:13px}.saved-product-grid p{font-size:12px}.saved-product-grid .product-view{font-size:12px}#product-detail{padding:18px}#product-detail h2{font-size:25px}}

.product-image-unavailable{box-sizing:border-box;max-width:100%;text-align:center;overflow-wrap:anywhere}
.product-image-unavailable small{display:block;font-size:10px;line-height:1.4;letter-spacing:.04em}
.product-image-unavailable strong{display:block;font-family:Fraunces,Georgia,serif}
.product-image-unavailable>span{display:block;font-size:12px;line-height:1.4}
