/* Piccolo WC v2 – WooCommerce Overrides (dezent, modern) */

/* ── Shop Grid (Fallback, Speisekarte nutzt eigenes Listen-Layout) ── */
ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 14px;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
}
ul.products li.product {
	margin: 0 !important;
	width: auto !important;
	float: none !important;
	background: var(--pc-bg-card);
	border: 1px solid var(--pc-border-soft);
	border-radius: var(--pc-radius);
	overflow: hidden;
	transition: box-shadow .2s;
}
ul.products li.product:hover { box-shadow: var(--pc-shadow); }

.pc-product-card__title { font-size: 14px !important; font-weight: 600; margin: 0 0 4px !important; }
.pc-product-card__price { font-size: 15px; font-weight: 600; color: var(--pc-accent); }
.pc-product-card__price del { color: var(--pc-text-light); font-weight: 400; margin-right: 4px; }
.pc-product-card__price ins { text-decoration: none; }

/* Add-to-Cart Button im Loop */
ul.products li.product .button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin-top: 10px;
	padding: 9px !important;
	background: var(--pc-accent) !important;
	color: #fff !important;
	border-radius: var(--pc-radius-sm) !important;
	font-weight: 600;
	font-size: 13px;
	border: none !important;
}
ul.products li.product .button:hover { background: var(--pc-accent-dark) !important; }

/* ── Single Product ── */
.woocommerce-product-gallery { border-radius: var(--pc-radius-lg); overflow: hidden; }
.woocommerce-product-gallery__image img { border-radius: var(--pc-radius); }
.summary.entry-summary h1 { font-size: 26px; }
.summary.entry-summary .price {
	font-size: 22px !important;
	color: var(--pc-accent) !important;
	margin-bottom: 14px !important;
}
.summary.entry-summary .price del { color: var(--pc-text-light) !important; }

.single_add_to_cart_button {
	background: var(--pc-accent) !important;
	color: #fff !important;
	border-radius: var(--pc-radius) !important;
	padding: 12px 24px !important;
	font-weight: 600 !important;
	font-size: 15px !important;
	border: none !important;
}
.single_add_to_cart_button:hover { background: var(--pc-accent-dark) !important; }

/* Quantity Input */
.quantity .qty {
	width: 64px !important;
	height: 44px;
	border: 1px solid var(--pc-border);
	border-radius: var(--pc-radius-sm);
	text-align: center;
	font-size: 15px;
	font-weight: 600;
	background: var(--pc-bg-card);
}

/* ── Cart ── */
.woocommerce-cart-form table { border-radius: var(--pc-radius); overflow: hidden; }
.woocommerce-cart-form table th { background: var(--pc-bg-soft); font-size: 12px; text-transform: uppercase; letter-spacing: 0.4px; color: var(--pc-text-mute); }
.woocommerce-cart-form table td { padding: 12px; }
.woocommerce-cart-form table img { width: 60px; border-radius: var(--pc-radius-sm); }
.cart .quantity .qty { width: 56px; height: 38px; }

.cart-collaterals .cart_totals {
	background: var(--pc-bg-soft);
	padding: 18px;
	border-radius: var(--pc-radius-lg);
}
.cart-collaterals .cart_totals h2 { font-size: 16px; margin-top: 0; }
.cart-collaterals .shop_table { border: none !important; margin: 0 !important; }
.cart-collaterals .shop_table th, .cart-collaterals .shop_table td { padding: 7px 0 !important; border: none !important; }
.cart-collaterals .checkout-button {
	display: block;
	text-align: center;
	background: var(--pc-accent);
	color: #fff;
	padding: 12px;
	border-radius: var(--pc-radius);
	font-weight: 600;
	margin-top: 10px;
}
.cart-collaterals .checkout-button:hover { background: var(--pc-accent-dark); color: #fff; }

/* ── Checkout ── */
.woocommerce-checkout .form-row { margin-bottom: 10px; }
.woocommerce-checkout .form-row input[type="text"],
.woocommerce-checkout .form-row input[type="email"],
.woocommerce-checkout .form-row input[type="tel"],
.woocommerce-checkout .form-row input[type="password"],
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
	width: 100%;
	padding: 11px 13px;
	border: 1px solid var(--pc-border);
	border-radius: var(--pc-radius-sm);
	font-size: 14px;
	font-family: inherit;
	background: var(--pc-bg-card);
	transition: border-color .2s;
}
.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .form-row textarea:focus {
	border-color: var(--pc-accent);
	outline: none;
}
.woocommerce-checkout .form-row label { font-size: 12px; font-weight: 500; margin-bottom: 4px; display: block; color: var(--pc-text-mute); }

/* Shipping Methods */
.woocommerce-shipping-methods { list-style: none; padding: 0; }
.woocommerce-shipping-methods li { padding: 8px 0; border-bottom: 1px solid var(--pc-border-soft); font-size: 14px; }
.woocommerce-shipping-methods label { cursor: pointer; display: flex; justify-content: space-between; }

/* Payment Methods */
.woocommerce-checkout-payment { margin-top: 14px; }
.wc_payment_methods { list-style: none; padding: 0; }
.wc_payment_methods li { padding: 11px; border: 1px solid var(--pc-border); border-radius: var(--pc-radius-sm); margin-bottom: 6px; font-size: 14px; }
.wc_payment_methods li input { margin-right: 6px; }
.wc_payment_methods label { cursor: pointer; font-weight: 500; }
.payment_box { margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--pc-border-soft); font-size: 12px; color: var(--pc-text-mute); }

#place_order {
	width: 100%;
	padding: 14px;
	background: var(--pc-accent);
	color: #fff;
	border: none;
	border-radius: var(--pc-radius);
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	margin-top: 10px;
	transition: background .2s;
}
#place_order:hover { background: var(--pc-accent-dark); }

/* ── Notices ── */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
	border-radius: var(--pc-radius) !important;
	border: none !important;
	padding: 12px 16px !important;
	margin-bottom: 14px !important;
	font-size: 13px;
}

/* ── Related Products ── */
.related.products h2 { font-size: 18px; margin-bottom: 14px; }

/* ── Responsive ── */
@media (max-width: 768px) {
	ul.products { grid-template-columns: 1fr 1fr !important; gap: 10px !important; }
	.woocommerce-cart-form table .product-price, .woocommerce-cart-form table .product-quantity { display: none; }
	.pc-cart-layout { grid-template-columns: 1fr !important; }
	.pc-checkout-right { display: none; }
	form.checkout { grid-template-columns: 1fr !important; }
	.woocommerce-checkout .form-row-first, .woocommerce-checkout .form-row-last { width: 100% !important; float: none !important; }
}
