/* Shared visual tokens for product detail and filled cart, with scoped composition. */
:root { --vb-shop-radius:10px;--vb-shop-padding:24px;--vb-shop-icon:22px;--vb-shop-tap:44px;--vb-shop-ink:#333;--vb-shop-muted:#7f7f7f;--vb-shop-green:#6c9355; }
body #content.product .item.product-detail-card[class].vb-shop-surface,
body #content .blog.cart ul.producktList > li.cart-item.vb-shop-surface { border:0;border-radius:var(--vb-shop-radius);background:#fff;box-shadow:none;padding:var(--vb-shop-padding); }
body #content .blog.cart ul.producktList > li.cart-item.vb-shop-surface { width:100%;margin:0 0 16px; }
body #content .blog.cart ul.producktList { box-sizing:border-box;width:100%;padding:0;margin:0; }
/* The cart keeps a compact image; price, reviews and actions follow the detail hierarchy. */
body #content .blog.cart .cart-item.vb-shop-surface > a.img { grid-row:1 / 5; }
body #content .blog.cart .cart-item.vb-shop-surface .more > .rating { grid-column:2;grid-row:3;justify-self:start;max-width:none; }
body #content .blog.cart .cart-item.vb-shop-surface .cart-item-pricing { grid-column:2;grid-row:2; }
body #content .blog.cart .cart-item.vb-shop-surface .cart-item-actions { grid-column:2;grid-row:4; }
body #content .blog.cart ul.producktList > li.cart-item.vb-shop-surface > .calculate { grid-column:3;grid-row:4; }
/* Identical 44px hit areas, 22px hearts and plain 132px steppers. */
body #content.product .item.product-detail-card[class].vb-shop-surface .more .addFavorites,
body #content .blog.cart ul.producktList > li.cart-item.vb-shop-surface .cart-item-actions > button { width:var(--vb-shop-tap);height:var(--vb-shop-tap);min-width:var(--vb-shop-tap);min-height:var(--vb-shop-tap);border:0;border-radius:0;padding:0;background-size:var(--vb-shop-icon);background-position:center;background-color:transparent; }
body #content.product .item.product-detail-card[class].vb-shop-surface .cart { grid-template-columns:132px minmax(0,1fr); }
body #content.product .item.product-detail-card[class].vb-shop-surface .calculate,
body #content .blog.cart ul.producktList > li.cart-item.vb-shop-surface > .calculate { display:grid;grid-template-columns:repeat(3,var(--vb-shop-tap));width:132px;height:var(--vb-shop-tap);border:0;border-radius:0;padding:0;background:none;overflow:visible; }
body #content.product .item.product-detail-card[class].vb-shop-surface .calculate :is(button,input),
body #content .blog.cart .cart-item.vb-shop-surface > .calculate :is(button,input) { box-sizing:border-box;width:var(--vb-shop-tap);height:var(--vb-shop-tap);min-width:var(--vb-shop-tap);margin:0;padding:0;border:0;border-radius:0;background:none;color:var(--vb-shop-ink);font:400 18px/1 Montserrat,sans-serif;text-align:center; }
body #content.product .item.product-detail-card[class].vb-shop-surface .calculate button::before,
body #content.product .item.product-detail-card[class].vb-shop-surface .calculate button::after,
body #content .blog.cart .cart-item.vb-shop-surface > .calculate button::before,
body #content .blog.cart .cart-item.vb-shop-surface > .calculate button::after { width:16px;height:1px;background:var(--vb-shop-ink); }
body #content.product .item.product-detail-card[class].vb-shop-surface .cart > button.addToCart { height:var(--vb-shop-tap);min-height:var(--vb-shop-tap); }
/* Consistent stars/counter; no-review state shows one gray star only. */
body #content.product .item.product-detail-card[class].vb-shop-surface .cartbox > .more > .rating,
body #content .blog.cart .cart-item.vb-shop-surface .more > .rating { display:flex;flex-wrap:wrap;align-items:center;gap:2px;position:relative;inset:auto;float:none;height:auto;min-height:18px;max-width:100%;min-width:0;margin:0;padding:0;border:0;color:var(--vb-shop-muted);font-size:13px;line-height:18px;opacity:1;text-decoration:none; }
body #content.product .item.product-detail-card[class].vb-shop-surface .rating .counter,
body #content .blog.cart .cart-item.vb-shop-surface .rating .counter { position:static;float:none;inset:auto;order:1;flex-shrink:0;margin:0;padding:0;background:none;color:var(--vb-shop-muted);font-size:13px;line-height:18px;font-style:normal;font-weight:400;white-space:nowrap; }
body #content.product .item.product-detail-card[class].vb-shop-surface .rating .jq-star,
body #content .blog.cart .cart-item.vb-shop-surface .rating .jq-star { flex:0 0 17px;width:17px;height:17px; }
body #content.product .item.product-detail-card[class].vb-shop-surface .rating:has(.counter.emty) .jq-star ~ .jq-star,
body #content .blog.cart .cart-item.vb-shop-surface .rating:has(.counter.emty) .jq-star ~ .jq-star { display:none; }
@media(max-width:690px) {
 :root { --vb-shop-padding:16px; }
 body #content .blog.cart .cart-item.vb-shop-surface > a.img { grid-row:1 / 4; }
 body #content .blog.cart .cart-item.vb-shop-surface .cart-item-actions { grid-column:1;grid-row:4; }
 body #content .blog.cart ul.producktList > li.cart-item.vb-shop-surface > .calculate { grid-column:2;grid-row:4; }
}

/* One-star mobile summary is rendered by PHP and works without the stars plugin. */
body #content.product .product-detail-card.vb-shop-surface .rating .pd-mobile-score { display:none; }
@media(max-width:690px) {
 body #content.product .product-detail-card.vb-shop-surface .cartbox > .more > .rating { gap:6px; }
 body #content.product .product-detail-card.vb-shop-surface .rating:not(.off) .jq-star { display:none; }
 body #content.product .product-detail-card.vb-shop-surface .rating .pd-mobile-score { display:inline-flex;align-items:center;gap:6px;color:#555;font-size:14px;line-height:18px; }
 body #content.product .product-detail-card.vb-shop-surface .rating .pd-mobile-score b { font-weight:600; }
 body #content.product .product-detail-card.vb-shop-surface .rating .pd-score-star { color:#d3ab4a;font-size:17px;line-height:18px; }
 body #content.product .product-detail-card.vb-shop-surface .rating .counter { text-decoration:underline;text-underline-offset:3px; }
}
