/* =============================================
   KOŠÍK — stránka /kosik/
   Levý sloupec: produkty. Pravý sloupec: shrnutí (sticky card).
   ============================================= */

body.bookstore-cart-has-items .cart-empty-recommendations {
	display: none !important;
}

body.bookstore-cart-has-items .bookstore-cart-empty-hero {
	display: none !important;
}

body.bookstore-cart-empty .wc-block-cart__empty-cart {
	display: none !important;
}

body.bookstore-cart-empty .bookstore-cart-empty-hero {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	max-width: 820px;
	margin: 0 auto 1.5rem;
	padding: 0.25rem 0 0;
}

.bookstore-cart-empty-hero__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center !important;
	align-items: center;
	gap: 0.8rem !important;
	margin: 0.4rem auto 0;
	width: 100%;
	text-align: center;
}

.bookstore-cart-shell {
	max-width: none;
}

.bookstore-cart-header {
	max-width: 820px;
}

.bookstore-cart-shell .wp-block-woocommerce-cart,
.bookstore-cart-shell .wc-block-cart {
	padding: 1.4rem 1.4rem 0 !important;
	border: 1px solid rgba(17, 17, 16, 0.08);
	border-radius: 24px;
	background: linear-gradient(180deg, #fff 0%, #fcfaf7 100%);
	box-shadow: 0 18px 40px rgba(17, 17, 16, 0.06);
}

/* Pravý panel — shrnutí (sticky card) */
.wc-block-cart__sidebar {
	background: linear-gradient(180deg, #fff 0%, #fbf7f1 100%) !important;
	border: 1px solid rgba(17, 17, 16, 0.08) !important;
	border-radius: 20px !important;
	padding: 24px !important;
	position: sticky !important;
	top: 80px !important;
	height: fit-content !important;
	box-shadow: 0 14px 32px rgba(17, 17, 16, 0.06) !important;
}

/* Řádky v shrnutí — flex space-between */
.wc-block-components-totals-item {
	display: flex !important;
	justify-content: space-between !important;
	padding: 8px 0 !important;
	color: #444 !important;
	font-size: 0.875rem !important;
}

/* Doprava — výrazně potlačená */
.wc-block-components-totals-shipping {
	font-size: 0.8125rem !important;
	color: #999 !important;
}

/* Oddělovač před totalem — větší spacing */
.wc-block-components-totals-grand-total {
	border-top: 1px solid #eee !important;
	margin-top: 20px !important;
	padding-top: 20px !important;
}

/* Celková cena — dominantní */
.wc-block-components-totals-grand-total .wc-block-components-totals-item__label,
.wc-block-components-totals-grand-total .wc-block-components-totals-item__value {
	font-size: 1.5rem !important;
	font-weight: 700 !important;
	color: #111 !important;
}

/* CTA tlačítko "Přejít k pokladně" */
.wc-block-cart__submit-button {
	width: 100% !important;
	padding: 15px !important;
	background: linear-gradient(180deg, #8B1A2E 0%, #6B1222 100%) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 999px !important;
	font-weight: 600 !important;
	font-size: 0.875rem !important;
	letter-spacing: 0.3px !important;
	cursor: pointer !important;
	transition: background 0.2s ease, transform 0.1s ease, box-shadow 0.2s ease !important;
	margin-top: 24px !important;
	box-shadow: 0 12px 24px rgba(107, 18, 34, 0.18) !important;
}

.wc-block-cart__submit-button:hover {
	background: #6B1222 !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 16px 28px rgba(107, 18, 34, 0.22) !important;
}

/* Položky v košíku — tabulkové buňky, padding a border */
.wc-block-cart-items__row td {
	padding: 28px 12px !important;
	vertical-align: top !important;
	border-bottom: none !important;
}

/* Oddělení mezi položkami — silnější linka nad každým řádkem (kromě prvního) */
.wc-block-cart-items__row + .wc-block-cart-items__row td {
	border-top: 1px solid #f0f0f0 !important;
}

/* Hover efekt — jemné pozadí pro card feel */
.wc-block-cart-items__row:hover {
	background-color: #fafafa !important;
}

.wc-block-cart-items__row:hover td {
	background-color: #fafafa !important;
}

.wc-block-cart-items__row:hover td * {
	background-color: transparent !important;
}

/* Quantity tlačítka — bílá zachována */
.wc-block-cart-items__row:hover .wc-block-components-quantity-selector__button {
	background-color: #fff !important;
}

.wc-block-cart-items__row td:first-child {
	padding-left: 0 !important;
}

.wc-block-cart-items__row td:last-child {
	padding-right: 0 !important;
}

/* Obrázek produktu */
.wc-block-cart-item__image img {
	width: 76px !important;
	height: auto !important;
	border-radius: 10px !important;
	object-fit: cover !important;
}

.wc-block-cart__empty-cart {
	padding: 1rem 0 0.5rem !important;
}

.wc-block-cart__empty-cart .wc-block-components-notice-banner {
	margin: 0 auto 1rem !important;
	max-width: 42rem;
	border-radius: 14px !important;
	border: 1px solid rgba(17, 17, 16, 0.08) !important;
	background: #f7f3ed !important;
	box-shadow: none !important;
}

.wc-block-cart__empty-cart .wc-block-components-notice-banner .wc-block-components-notice-banner__content {
	font-size: 0.9rem !important;
	line-height: 1.55 !important;
}

.wc-block-mini-cart__drawer .components-modal__content,
.wc-block-mini-cart__template-part {
	background: linear-gradient(180deg, #fff 0%, #fbf7f1 100%) !important;
}

.wc-block-mini-cart__drawer .components-modal__header {
	border-bottom: 1px solid rgba(17, 17, 16, 0.08) !important;
	padding-bottom: 1rem !important;
}

.wc-block-mini-cart__drawer .components-modal__header-heading,
.wc-block-mini-cart__drawer .wc-block-mini-cart__title {
	font-family: var(--wp--preset--font-family--serif) !important;
	font-size: 1.45rem !important;
	font-weight: 500 !important;
}

.wc-block-mini-cart__empty-cart-wrapper,
.wc-block-mini-cart__empty-cart {
	padding: 1rem 0 1.4rem !important;
	text-align: center !important;
}

.wc-block-mini-cart__empty-cart .wc-block-mini-cart__shopping-button,
.wc-block-mini-cart__empty-cart .wc-block-components-button {
	min-height: 42px !important;
	padding: 0.75rem 1.2rem !important;
	border-radius: 999px !important;
	background: #8B1A2E !important;
	border-color: #8B1A2E !important;
	box-shadow: 0 10px 18px rgba(107, 18, 34, 0.16) !important;
}

.wc-block-mini-cart__footer {
	border-top: 1px solid rgba(17, 17, 16, 0.08) !important;
	padding-top: 1rem !important;
}

.wc-block-mini-cart__items {
	padding-top: 0.5rem !important;
}

.wc-block-mini-cart__products-table {
	border-collapse: separate !important;
	border-spacing: 0 0.85rem !important;
}

.wc-block-mini-cart__products-table tr,
.wc-block-mini-cart__products-table .wc-block-cart-items__row {
	background: rgba(255, 255, 255, 0.86) !important;
	box-shadow: 0 10px 22px rgba(17, 17, 16, 0.05) !important;
}

.wc-block-mini-cart__products-table td,
.wc-block-mini-cart__products-table .wc-block-cart-item__image,
.wc-block-mini-cart__products-table .wc-block-cart-item__quantity {
	background: transparent !important;
	border: none !important;
	padding-top: 0.9rem !important;
	padding-bottom: 0.9rem !important;
}

.wc-block-mini-cart__products-table td:first-child {
	padding-left: 0.9rem !important;
	border-top-left-radius: 16px !important;
	border-bottom-left-radius: 16px !important;
}

.wc-block-mini-cart__products-table td:last-child {
	padding-right: 0.9rem !important;
	border-top-right-radius: 16px !important;
	border-bottom-right-radius: 16px !important;
}

.wc-block-mini-cart__products-table .wc-block-cart-item__wrap {
	gap: 0.2rem !important;
}

.wc-block-mini-cart__products-table .wc-block-components-product-name,
.wc-block-mini-cart__products-table .wc-block-components-product-name a {
	font-size: 0.95rem !important;
	line-height: 1.35 !important;
}

.wc-block-mini-cart__products-table .wc-block-cart-item__prices {
	font-size: 0.8rem !important;
	color: #7c746d !important;
}

.wc-block-mini-cart__products-table .wc-block-cart-item__quantity {
	margin-top: 0.75rem !important;
	gap: 0.75rem !important;
}

.wc-block-mini-cart__products-table .wc-block-components-quantity-selector {
	border-radius: 999px !important;
	background: #fff !important;
}

.wc-block-mini-cart__products-table .wc-block-cart-item__remove-link {
	font-size: 0.72rem !important;
	color: #8b8178 !important;
}

.wc-block-mini-cart__products-table .wc-block-cart-item__remove-link:hover {
	color: #6B1222 !important;
}

.wc-block-mini-cart__footer .wc-block-components-button,
.wc-block-mini-cart__footer .wc-block-mini-cart__footer-checkout {
	border-radius: 999px !important;
	min-height: 44px !important;
}

/* Wrap — explicitní sloupcový layout: text nahoře, akce dole */
.wc-block-cart-item__wrap {
	display: flex !important;
	flex-direction: column !important;
}

/* Název produktu */
.wc-block-components-product-name,
.wc-block-components-product-name a {
	font-weight: 600 !important;
	color: #111 !important;
	text-decoration: none !important;
	font-size: 0.9375rem !important;
}

.wc-block-components-product-name a:hover {
	text-decoration: underline !important;
}

/* Cena za kus — potlačená */
.wc-block-cart-item__prices {
	font-size: 0.8125rem !important;
	color: #aaa !important;
	margin-top: 4px !important;
}

/* Metadata produktu (popis) — skrytý v košíku */
.wc-block-components-product-metadata {
	display: none !important;
}

/* Akce (množství + odebrat) — jasně oddělený blok pod informacemi */
.wc-block-cart-item__quantity {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	margin-top: 24px !important;
}

/* Množství — jemnější border */
.wc-block-components-quantity-selector {
	display: flex !important;
	align-items: center !important;
	border: 1px solid #e5e5e5 !important;
	border-radius: 6px !important;
	overflow: hidden !important;
}

.wc-block-components-quantity-selector__button {
	width: 30px !important;
	height: 30px !important;
	background: #fff !important;
	border: none !important;
	cursor: pointer !important;
	font-size: 1rem !important;
	color: #555 !important;
}

.wc-block-components-quantity-selector__button[disabled],
.wc-block-components-quantity-selector__button.is-disabled {
	opacity: 0.35 !important;
	cursor: default !important;
	pointer-events: none !important;
}

.wc-block-components-quantity-selector__input {
	width: 32px !important;
	text-align: center !important;
	font-size: 0.875rem !important;
	border: none !important;
	border-left: 1px solid #ddd !important;
	border-right: 1px solid #ddd !important;
	padding: 0 !important;
	height: 30px !important;
}

/* Celková cena položky — zarovnaná nahoře, vizuálně "na řádku" s názvem */
.wc-block-cart-item__total {
	font-weight: 600 !important;
	color: #111 !important;
	font-size: 0.9375rem !important;
	text-align: right !important;
	vertical-align: top !important;
}

/* Odebrat položku — světlejší, sekundární */
.wc-block-cart-item__remove-link {
	color: #bbb !important;
	font-size: 0.75rem !important;
	transition: color 0.2s ease !important;
	display: block !important;
}

.wc-block-cart-item__remove-link:hover {
	color: #111 !important;
}

/* =============================================
   PRÁZDNÝ KOŠÍK — grid doporučených produktů
   Převzato do stejného systému jako homepage.
   ============================================= */

/* Grid kontejner — gap řídíme my, počet sloupců WooCommerce (has-4-columns) */
.wc-block-grid .wc-block-grid__products {
	gap: 1.5rem !important;
}

.cart-empty-recommendations .wp-block-woocommerce-product-collection {
	max-width: 1240px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

@media (min-width: 641px) {
	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product-template,
	.cart-empty-recommendations .wc-block-grid .wc-block-grid__products {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		gap: 1.75rem !important;
	}

	.cart-empty-recommendations .wc-block-grid__product,
	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product {
		padding: 1.25rem 1.25rem 1.35rem !important;
		border-radius: var(--radius-l) !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-image,
	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-components-product-image {
		width: 82% !important;
		margin-bottom: 1rem !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-title,
	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wp-block-post-title {
		font-size: 1.08rem !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-price,
	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-components-product-price {
		font-size: 1.18rem !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-add-to-cart .wp-block-button__link,
	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-components-product-button__button {
		min-height: 48px !important;
		padding: 0 1.1rem !important;
		font-size: 0.84rem !important;
	}
}

/* Karta — identická s .wc-block-product */
.wc-block-grid__product {
	background: var(--surface) !important;
	border-radius: 12px !important;
	border: 1px solid var(--border) !important;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06) !important;
	transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease !important;
	display: flex !important;
	flex-direction: column !important;
	overflow: hidden !important;
	padding: 11px !important;
}

.wc-block-grid__product:hover {
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1) !important;
	border-color: #C8C7C3 !important;
	transform: translateY(-4px) !important;
}

/* Link — blokový, plná šířka, bez paddingu (karta má padding: 16px) */
.wc-block-grid__product-link {
	display: block !important;
	width: 100% !important;
	text-decoration: none !important;
	color: inherit !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

/* Obrázek kontejner — 2:3 poměr, border-radius */
.wc-block-grid__product-image {
	width: 72% !important;
	aspect-ratio: 2 / 3 !important;
	overflow: hidden !important;
	border-radius: 8px !important;
	margin: 0 auto 12px !important;
}

/* Obrázek — vyplní kontejner */
.wc-block-grid__product-image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	display: block !important;
	transition: transform 0.2s ease !important;
}

/* Hover zoom obrázku */
.wc-block-grid__product:hover .wc-block-grid__product-image img {
	transform: scale(1.03) !important;
}

/* Název */
.wc-block-grid__product-title {
	font-size: 0.95rem !important;
	font-weight: 700 !important;
	color: var(--ink) !important;
	padding: 0 !important;
	margin-bottom: 5px !important;
	text-align: center !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
}

/* Autor — kurzíva jako na homepage */
.wc-block-grid__product-author {
	font-size: 0.75rem !important;
	font-style: italic !important;
	color: #666 !important;
	padding: 0 !important;
	margin: 0 0 9px !important;
	text-align: center !important;
}

/* Cena */
.wc-block-grid__product-price {
	font-size: 1.05rem !important;
	font-weight: 700 !important;
	color: var(--ink) !important;
	letter-spacing: -0.02em !important;
	padding: 0 !important;
	margin-bottom: 12px !important;
	text-align: center !important;
}

/* Rating — skrytý */
.wc-block-grid__product-rating {
	display: none !important;
}

/* Tlačítko — wrapper */
.wc-block-grid__product-add-to-cart {
	padding: 0 !important;
	margin-top: auto !important;
}

/* Tlačítko — identické s homepage */
.wc-block-grid__product-add-to-cart .wp-block-button__link {
	background: #222 !important;
	color: #fff !important;
	border-radius: 8px !important;
	width: 100% !important;
	padding: 0 14px !important;
	min-height: 40px !important;
	font-weight: 600 !important;
	font-size: 0.75rem !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
	text-decoration: none !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15) !important;
	transition: background 0.15s ease, transform 0.15s ease !important;
	box-sizing: border-box !important;
}

.wc-block-grid__product-add-to-cart .wp-block-button__link::before {
	content: '🛒' !important;
	font-size: 15px !important;
	filter: grayscale(1) brightness(2.8) !important;
}

.wc-block-grid__product-add-to-cart .wp-block-button__link:hover {
	background: #333 !important;
	transform: scale(1.02) !important;
}

.wc-block-grid__product-add-to-cart .wp-block-button__link:active {
	transform: scale(0.96) !important;
	background: #111 !important;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15) !important;
}
