@media (max-width: 640px) {
	.bookstore-category-context {
		padding: 1.1rem 1rem;
		border-radius: 18px;
	}

	.bookstore-category-context__title {
		font-size: 1.75rem;
	}

	.bookstore-category-context__lead {
		font-size: 0.95rem;
		white-space: normal;
	}

	.bookstore-header-context-nav {
		width: min(100vw - 1.5rem, 100%);
		padding: 0.75rem 0;
		justify-content: flex-start;
	}

	.bookstore-header-context-nav__links {
		flex-wrap: nowrap;
		justify-content: flex-start;
		gap: 0.45rem;
		padding-inline: 0.75rem;
	}

	.bookstore-header-context-nav__link {
		padding: 0.5rem 0.8rem;
		font-size: 0.78rem;
	}

	.bookstore-home-hero {
		padding-top: 2rem !important;
		padding-bottom: 3rem !important;
	}

	.bookstore-home-hero__columns {
		gap: 1rem !important;
	}

	.bookstore-home-hero__title {
		max-width: none;
		font-size: 2.35rem !important;
	}

	.bookstore-home-hero__lead {
		font-size: 0.98rem !important;
		line-height: 1.65 !important;
	}

	.bookstore-home-hero__actions {
		flex-direction: column !important;
		align-items: stretch !important;
	}

	.bookstore-home-hero__actions .wp-block-button {
		width: 100%;
	}

	.bookstore-home-hero__actions .wp-block-button__link {
		width: 100%;
		min-width: 0;
	}

	.bookstore-home-value-card {
		padding: 1.4rem;
		border-radius: var(--radius-l);
	}

	.bookstore-home-section-head {
		margin-bottom: 1.25rem;
	}

	.bookstore-cart-empty-hero {
		margin-bottom: 1.25rem !important;
	}

	.bookstore-cart-empty-hero__actions {
		flex-direction: column !important;
		align-items: stretch !important;
		width: 100%;
	}

	.bookstore-cart-empty-hero__actions .wp-block-button {
		width: 100%;
	}

	.bookstore-home-categories-grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.bookstore-home-categories-stack {
		gap: 1rem;
	}

	.bookstore-home-category-card {
		grid-column: auto !important;
		min-height: 0;
		padding: 0.92rem 0.98rem;
		border-radius: var(--radius-l);
	}

	.bookstore-home-categories-grid--special {
		grid-template-columns: 1fr;
		max-width: none;
	}

	.bookstore-home-category-card__title {
		font-size: 1.02rem;
	}

	.bookstore-home-about {
		padding-top: 3rem !important;
		padding-bottom: 3rem !important;
	}

	.bookstore-home-about__columns {
		gap: 1.25rem !important;
	}

	.bookstore-home-about__title {
		font-size: 2rem !important;
	}

	body.woocommerce-checkout .wp-site-blocks > main {
		padding-left: 1rem;
		padding-right: 1rem;
		padding-top: 1.5rem;
		padding-bottom: 3rem;
	}

	body.woocommerce-checkout .wp-site-blocks > main > .wp-block-post-title {
		font-size: 0.9rem !important;
		margin-bottom: 1rem;
	}

	body.woocommerce-checkout .wc-block-components-checkout-step,
	body.woocommerce-checkout .wc-block-components-order-summary,
	body.woocommerce-checkout .wc-block-components-totals-wrapper {
		padding: 1rem;
		border-radius: var(--radius-l);
	}

	body.woocommerce-checkout .wc-block-components-sidebar-layout {
		display: block !important;
		max-width: none !important;
	}

	body.woocommerce-checkout .wc-block-components-main,
	body.woocommerce-checkout .wc-block-components-sidebar {
		width: 100% !important;
		max-width: none !important;
		flex: 1 1 auto !important;
	}

	body.woocommerce-checkout :is(
		.wc-block-components-checkout-step__heading,
		.wc-block-components-title,
		.wc-block-components-order-summary__title,
		.wc-block-components-shipping-rates-control__title,
		.wc-block-components-payment-methods__title
	) {
		font-size: 0.8rem;
		letter-spacing: 0.14em;
	}

	body.woocommerce-checkout .wc-block-components-checkout-place-order-button__button {
		min-height: 42px;
		padding-inline: 0.6rem;
		font-size: 0.68rem !important;
	}

	body.woocommerce-checkout .wc-block-checkout__actions {
		margin-top: 0 !important;
		padding-top: 1.1rem !important;
	}

	body.woocommerce-checkout .wc-block-checkout__actions_row {
		flex-direction: row !important;
		align-items: stretch !important;
		flex-wrap: nowrap !important;
		gap: 0.2rem !important;
		margin-top: 0 !important;
		margin-bottom: 0.7rem !important;
	}

	body.woocommerce-checkout .wc-block-components-sidebar-layout > .wc-block-components-sidebar {
		display: none !important;
	}

	body.woocommerce-checkout .wc-block-checkout__actions_row > * {
		width: calc(64% - 0.1rem) !important;
		max-width: none !important;
	}

	body.woocommerce-checkout .wc-block-checkout__actions_row > :first-child {
		width: calc(36% - 0.1rem) !important;
	}

	body.woocommerce-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button,
	body.woocommerce-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button__button,
	body.woocommerce-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button.contained {
		width: 100% !important;
		max-width: none !important;
		min-height: 42px !important;
		padding-inline: 0.6rem !important;
		font-size: 0.68rem !important;
	}

	body.woocommerce-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button {
		font-size: 0.58rem !important;
		min-height: 40px !important;
		padding-inline: 0.45rem !important;
		letter-spacing: 0.045em !important;
	}

	body.woocommerce-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button svg {
		width: 20px;
		height: 20px;
		margin-right: 0.15rem;
	}

	body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block {
		padding: 1rem !important;
		margin-bottom: 1rem !important;
	}

	body.woocommerce-checkout .wc-block-components-sidebar {
		margin-top: 0 !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary__content {
		padding: 0.9rem 0.9rem 0.1rem !important;
		gap: 0.55rem !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item {
		grid-template-columns: 40px minmax(0, 1fr) auto;
		grid-template-areas:
			"image description"
			"image total";
		gap: 0.65rem;
		padding: 0.6rem 0;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__description h3,
	body.woocommerce-checkout .wc-block-components-product-name {
		font-size: 0.86rem !important;
		line-height: 1.2 !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-order-summary-item__individual-price {
		font-size: 0.84rem !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
		grid-area: total;
		justify-self: end;
		align-self: start;
		padding-right: 0.7rem !important;
		font-size: 0.9rem !important;
	}

	body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-subtotal-block .wc-block-components-totals-item__label,
	body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-subtotal-block .wc-block-components-totals-item__value,
	body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-shipping-block .wc-block-components-totals-item__label,
	body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-shipping-block .wc-block-components-totals-item__value,
	body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
	body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
		padding-right: 0.7rem !important;
	}

	body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-footer-item-tax-value {
		padding-right: 0 !important;
	}

	body.woocommerce-checkout .wc-block-components-address-form__email {
		margin-bottom: 0.4rem !important;
	}

	body.woocommerce-checkout .wc-block-components-address-form__wpify-ic_dic_toggle {
		margin-top: 0.35rem !important;
	}

	.bookstore-home-about-facts {
		grid-template-columns: 1fr;
		gap: 0.55rem;
	}

	.bookstore-home-about-fact {
		padding: 0.75rem 0.8rem;
	}

	.bookstore-home-trust-panel {
		padding: 1rem 1rem 0.95rem;
		border-radius: var(--radius-l);
	}

	.bookstore-home-trust-item {
		padding: 0.8rem 0;
	}

	.bookstore-home-trust-item__label {
		font-size: 0.74rem;
	}

	.shop-sidebar-card {
		position: static;
		top: auto;
		padding: 1rem 0.9rem;
		border-radius: var(--radius-l);
	}

	.bookstore-search-card {
		padding: 1rem 1rem 1.1rem;
	}

	.bookstore-search-card::before {
		top: 0.7rem;
		left: 0.7rem;
	}

	.bookstore-search-filters {
		margin-inline: -0.1rem;
		padding-bottom: 0.15rem;
	}

	.bookstore-search-category-tree.is-top-level {
		padding-right: 0.35rem;
	}

	.bookstore-search-cover {
		padding: 0.75rem;
	}

	.bookstore-search-cover a {
		min-height: 220px;
	}

	.bookstore-search-cover img {
		height: 190px !important;
	}

	.bookstore-footer-shell {
		margin-top: 2rem;
	}

	.bookstore-footer__title {
		font-size: 1.75rem !important;
	}

	.bookstore-footer__actions {
		flex-direction: column !important;
		align-items: stretch !important;
	}

	.bookstore-footer__actions .wp-block-button {
		width: 100%;
	}

	.bookstore-footer__actions .wp-block-button__link {
		width: 100%;
	}

	.bookstore-cart-shell .wp-block-woocommerce-cart,
	.bookstore-cart-shell .wc-block-cart {
		padding: 1rem 1rem 0 !important;
		border-radius: 18px !important;
	}

	.wc-block-cart__empty-cart__description,
	.wc-block-cart__empty-cart__description p,
	.wc-block-cart .wc-block-components-notice-banner + p {
		font-size: 0.82rem !important;
		line-height: 1.5 !important;
	}

	.wc-block-cart__empty-cart .wc-block-components-button,
	.wc-block-cart .wc-block-components-button.contained {
		min-height: 40px !important;
		padding: 0.7rem 1rem !important;
		font-size: 0.74rem !important;
	}

	.account-grid {
		grid-template-columns: 1fr;
	}

	.account-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}

	.woocommerce-account .woocommerce-form-login,
	.woocommerce-account .woocommerce-form-register {
		padding: 18px;
	}

	.woocommerce-account .woocommerce-form-login .form-row:has(.woocommerce-form-login__submit),
	.woocommerce-account .woocommerce-form-register .form-row:has(button[type="submit"]) {
		flex-direction: column;
		align-items: flex-start;
	}

	.woocommerce-account .woocommerce-form-login__submit,
	.woocommerce-account .woocommerce-form-register button[type="submit"],
	.woocommerce-account .woocommerce-ResetPassword button[type="submit"] {
		width: 100%;
	}
}

/* =============================================
   Mobilní layout — pod 640px stohování
   ============================================= */

@media (max-width: 640px) {
	body.single-product {
		padding-bottom: 112px !important;
	}

	.single-product-layout {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 1.5rem !important;
	}

	.single-product-gallery-column {
		position: static !important;
		top: auto !important;
		width: 100% !important;
	}

	.single-product-summary-column {
		width: 100% !important;
	}

	.single-product div.product {
		grid-template-columns: 1fr;
		gap: 1.5rem 0;
	}

	.single-product .woocommerce-product-gallery {
		grid-column: 1;
		grid-row: 1;
		position: static;
		display: block !important;
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.single-product .summary {
		grid-column: 1;
		grid-row: 2;
	}

	.single-product .woocommerce-product-gallery__wrapper {
		display: block !important;
		min-height: 280px;
	}

	.single-product .woocommerce-product-gallery__image {
		display: flex !important;
		justify-content: center !important;
	}

	.single-product .woocommerce-product-gallery__image img {
		display: block !important;
		width: auto !important;
		max-width: 100% !important;
		height: auto !important;
		max-height: 340px;
		padding: 1rem;
	}

	.single-product .product_title {
		font-size: 1.5rem !important;
	}

	.single-product form.cart {
		position: fixed !important;
		left: 16px !important;
		right: 16px !important;
		bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
		z-index: 9998 !important;
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 52px !important;
		grid-template-rows: auto auto !important;
		align-items: stretch;
		gap: 10px !important;
		margin: 0 !important;
		padding: 10px !important;
		background: rgba(255, 255, 255, 0.98) !important;
		border: 1px solid #e6e2db !important;
		border-radius: var(--radius-l) !important;
		box-shadow: var(--shadow-soft) !important;
		backdrop-filter: blur(10px) !important;
	}

	.single-product .quantity {
		display: block !important;
		flex: 0 0 auto !important;
		width: 100% !important;
		grid-column: 1 / -1 !important;
	}

	.single-product .quantity input[type="number"] {
		box-sizing: border-box !important;
		width: 100% !important;
		height: 46px !important;
		min-height: 46px !important;
	}

	.single-product .single_add_to_cart_button {
		box-sizing: border-box !important;
		width: 100% !important;
		flex: 0 0 auto !important;
		min-height: 48px !important;
		grid-column: 1 !important;
		grid-row: 2 !important;
		padding: 0 1.1rem !important;
		font-size: 0.9rem !important;
	}

	.single-product .bookstore-mobile-cart-shortcut {
		grid-column: 2 !important;
		grid-row: 2 !important;
		min-height: 46px !important;
		width: 52px !important;
		padding: 0 !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		border: 1px solid var(--color-primary) !important;
		border-radius: var(--radius-l) !important;
		background: #fff !important;
		color: var(--color-primary) !important;
		box-sizing: border-box !important;
		font-size: 20px !important;
		line-height: 1 !important;
		box-shadow: none !important;
	}

	.single-product .bookstore-mobile-cart-shortcut::before {
		content: '🛒';
		font-size: 16px;
		line-height: 1;
		filter: grayscale(1) brightness(0.2);
		flex-shrink: 0;
	}

	.single-product .bookstore-mobile-cart-shortcut:hover,
	.single-product .bookstore-mobile-cart-shortcut:active {
		background: rgba(122, 31, 43, 0.08) !important;
	}

	.single-product .woocommerce-tabs {
		margin-top: 2.5rem;
	}
}

/* =============================================
   MOBILNÍ OPTIMALIZACE — kompletní sada
   Přidáno 2026-04-02
   Breakpoints:
     900px — tablet
     640px — mobil (hlavní breakpoint)
     480px — malý mobil
     380px — extra malý mobil
   ============================================= */

/* Prevence iOS automatického zvětšení textu */
html {
	-webkit-text-size-adjust: 100%;
}

/* Obrázky nikdy nepřetékají kontejner */
img {
	max-width: 100%;
}

/* ---- HEADER — tablet ---- */

@media (max-width: 900px) {
	/* Search — zmenšit, ale stále viditelný */
	header .wp-block-search {
		flex: 0 1 200px !important;
		width: 200px !important;
		min-width: 100px !important;
	}
}

/* ---- HEADER — mobil ---- */

@media (max-width: 640px) {
	/* Flex kontejner headeru — zalomit search na druhý řádek */
	header .wp-block-group.alignfull {
		flex-wrap: wrap !important;
		padding-left: 1rem !important;
		padding-right: 1rem !important;
		gap: 10px !important;
	}

	/* Logo + název — zabírají automatickou šířku */
	header .wp-block-group.alignfull > .wp-block-group:first-child {
		flex: 1 1 auto !important;
	}

	/* Header ikony (nav + košík) — nepřetahovat */
	.header-icons {
		flex-shrink: 0 !important;
	}

	/* Search — přesunout na celou druhou řadu */
	header .wp-block-search {
		order: 10 !important;
		flex: 0 0 100% !important;
		width: 100% !important;
		margin-top: 0 !important;
	}

	/* Název webu — trochu menší */
	header .wp-block-site-title a {
		font-size: 0.875rem !important;
		font-weight: 800 !important;
		letter-spacing: 0.12em !important;
	}

	/* Logo — trochu menší */
	header .wp-block-site-logo img {
		height: 22px !important;
	}
}

/* ---- HEADER — extra malý mobil ---- */

@media (max-width: 380px) {
	/* Skrýt textový název, zobrazit jen logo */
	header .wp-block-site-title {
		display: none !important;
	}
}

/* ---- SEKCE A MAIN — menší padding na mobilu ---- */

@media (max-width: 640px) {
	section.wp-block-group {
		padding-top: 2rem !important;
		padding-bottom: 2rem !important;
	}

	main.wp-block-group {
		padding-top: 1.5rem !important;
		padding-bottom: 2rem !important;
		padding-left: 1rem !important;
		padding-right: 1rem !important;
	}
}

/* ---- FORMULÁŘOVÉ INPUTY — iOS anti-zoom ----
   iOS automaticky zoomuje pokud je font-size < 16px.
   Nastavíme 16px pro všechny inputy na mobilu. */

@media (max-width: 640px) {
	input[type="text"],
	input[type="email"],
	input[type="password"],
	input[type="tel"],
	input[type="number"],
	input[type="search"],
	select,
	textarea {
		font-size: 16px !important;
	}
}

/* ---- PRODUKT GRID — 1 sloupec na mobilu ---- */
/* WC product collection renderuje jako .wp-block-woocommerce-product-template
   uvnitř .wp-block-woocommerce-product-collection.
   display: grid !important přebíjí WC flex layout. */

@media (max-width: 640px) {
	.wp-block-woocommerce-product-collection {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.wp-block-group.shop-layout,
	.wp-block-group.shop-products {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.wp-block-woocommerce-product-collection .wp-block-woocommerce-product-template {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 0.625rem !important;
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		box-sizing: border-box !important;
	}

	/* Reset flex vlastností — grid je řídí */
	.wp-block-woocommerce-product-collection .wp-block-woocommerce-product-template > li {
		flex-shrink: 1 !important;
		flex-basis: auto !important;
		max-width: none !important;
		min-width: 0 !important;
		width: 100% !important;
		margin: 0 !important;
		box-sizing: border-box !important;
	}
}

@media (max-width: 1024px) {
	.bookstore-search-query .wp-block-post-template.bookstore-search-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.bookstore-search-filters {
		padding: 0.9rem 0.9rem 1rem;
		border-radius: 14px;
	}

	.bookstore-search-category-parent > .bookstore-search-category-tree {
		margin-left: 0.55rem;
		padding-left: 0.65rem;
	}

	.bookstore-search-query .wp-block-post-template.bookstore-search-grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.bookstore-search-card {
		padding: 1rem 1rem 1.15rem;
		border-radius: 14px;
	}

	.bookstore-search-cover {
		padding: 0.75rem;
	}

	.bookstore-search-cover a {
		min-height: 220px;
	}

	.bookstore-search-cover img {
		height: 190px !important;
	}

	.bookstore-search-title {
		font-size: 1rem !important;
	}

	.bookstore-search-summary {
		font-size: 0.9rem;
	}
}

/* ---- KARTA PRODUKTU — horizontální layout na mobilu ---- */
/*
   Desktop: vertikální (obálka nahoře, info dole)
   Mobil:   horizontální grid — obálka vlevo | info + tlačítko vpravo

   Struktura (nth-child):
     child 1 = .wc-block-components-product-image  → col 1, span 2 rows
     child 2 = .wp-block-group (název, autor, cena) → col 2, row 1
     child 3 = .wp-block-group (tlačítko)           → col 2, row 2
*/

@media (max-width: 640px) {
	/* Grid 3 sloupce: [obálka 84px] [text] [košík]
	   Název má vlastní řádek, pod ním vlevo autor + cena, vpravo CTA. */
	.wc-block-product {
		display: grid !important;
		grid-template-columns: 84px minmax(0, 1fr) 40px !important;
		grid-template-rows: auto auto auto !important;
		column-gap: 12px !important;
		row-gap: 4px !important;
		padding: 10px !important;
		align-items: start !important;
	}

	.shop-layout .wc-block-product {
		grid-template-columns: 84px minmax(0, 1fr) minmax(98px, max-content) !important;
		column-gap: 8px !important;
	}

	/* Hover — na mobilu vypnout translateY (zůstane jen shadow) */
	.wc-block-product:hover {
		transform: none !important;
		box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06) !important;
		border-color: var(--border) !important;
	}

	/* Obálka — první sloupec, přes oba řádky */
	.wc-block-product > .wc-block-components-product-image {
		grid-column: 1 !important;
		grid-row: 1 / 4 !important;
		margin-bottom: 0 !important;
		align-self: start !important;
	}

	/* Obrázek — pevná šířka 84px → výška 126px (2:3) */
	.wc-block-product > .wc-block-components-product-image a {
		width: 84px !important;
		aspect-ratio: 2 / 3 !important;
		height: auto !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		background: #f7f4ef !important;
	}

	.wc-block-product > .wc-block-components-product-image .wc-block-components-product-image__inner-container {
		position: static !important;
		inset: auto !important;
		transform: none !important;
		width: 100% !important;
		height: 100% !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		overflow: hidden !important;
	}

	.wc-block-product > .wc-block-components-product-image img {
		position: static !important;
		inset: auto !important;
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
		object-position: center top !important;
		display: block !important;
	}

	/* Rozbalit info skupinu do parent gridu */
	.wc-block-product > .wp-block-group:nth-child(2) {
		display: contents !important;
	}

	/* Název — vlastní řádek přes text + CTA zónu */
	.wc-block-product > .wp-block-group:nth-child(2) > .wp-block-post-title {
		grid-column: 2 / 4 !important;
		grid-row: 1 !important;
		min-width: 0 !important;
	}

	/* Autor — vlevo pod názvem */
	.wc-block-product > .wp-block-group:nth-child(2) > .bookstore-loop-product-author {
		grid-column: 2 !important;
		grid-row: 2 !important;
		min-width: 0 !important;
	}

	/* Cena — vlevo pod autorem */
	.wc-block-product > .wp-block-group:nth-child(2) > .wc-block-components-product-price,
	.wc-block-product > .wp-block-group:nth-child(2) > .wp-block-woocommerce-product-price {
		grid-column: 2 !important;
		grid-row: 3 !important;
		min-width: 0 !important;
		display: block !important;
		z-index: 2 !important;
	}

	/* Tlačítko skupina — vpravo vedle autora a ceny */
	.wc-block-product > .wp-block-group:nth-child(3) {
		grid-column: 3 !important;
		grid-row: 3 !important;
		flex-grow: 0 !important;
		justify-content: center !important;
		padding: 0 !important;
		align-self: end !important;
		min-width: 0 !important;
	}

	/* Název — doleva, 2 řádky */
	.wc-block-product .wp-block-post-title {
		text-align: left !important;
		font-size: 1.05rem !important;
		font-weight: 700 !important;
		margin-bottom: 3px !important;
		-webkit-line-clamp: 2 !important;
	}

	.wc-block-product .wp-block-post-title a,
	.wc-block-product .wp-block-post-title a:link,
	.wc-block-product .wp-block-post-title a:visited {
		color: var(--ink) !important;
	}

	/* Autor — doleva */
	.wc-block-product .bookstore-loop-product-author {
		text-align: left !important;
		font-size: 0.82rem !important;
		margin-bottom: 0 !important;
	}

	/* Cena — doleva, kompaktní */
	.wc-block-product .wc-block-components-product-price {
		text-align: left !important;
		font-size: 1.12rem !important;
		font-weight: 700 !important;
		margin-bottom: 0 !important;
		margin-top: 2px !important;
		align-self: end !important;
	}

	/* Shop archiv: kompaktní CTA, aby se vešlo do pravého sloupce karty */
	.shop-layout .wp-block-button.wc-block-components-product-button .wc-block-components-product-button__button {
		width: 100% !important;
		min-width: 0 !important;
		min-height: 36px !important;
		padding: 0 0.5rem !important;
		font-size: 0.68rem !important;
		white-space: nowrap !important;
		justify-self: stretch !important;
		margin-left: 0 !important;
	}

	.shop-layout .wp-block-button.wc-block-components-product-button .wc-block-components-product-button__button::after {
		font-size: 0.68rem !important;
	}

	.shop-layout .wc-block-product > .wp-block-group:nth-child(3) {
		grid-column: 3 !important;
		grid-row: 3 !important;
		justify-content: stretch !important;
		align-self: end !important;
		z-index: 2 !important;
		padding-left: 0 !important;
	}

	/* Tlačítko — plnohodnotné CTA i na mobilu */
	.wp-block-button.wc-block-components-product-button .wc-block-components-product-button__button {
		width: 100% !important;
		min-height: 42px !important;
		padding: 0 0.9rem !important;
		gap: 0 !important;
		border-radius: var(--radius-pill) !important;
		box-shadow: none !important;
		background: var(--color-primary) !important;
		border: 1px solid var(--color-primary) !important;
		color: #fff !important;
	}

	.wp-block-button.wc-block-components-product-button .wc-block-components-product-button__button:hover {
		background: var(--color-primary-2) !important;
		border-color: var(--color-primary-2) !important;
		transform: none !important;
	}

	.wc-block-components-product-button__button::after {
		display: inline !important;
		content: 'Přidat do košíku' !important;
		font-size: 0.86rem !important;
	}

	.wc-block-components-product-button__button::before {
		display: none !important;
		content: '' !important;
	}
}

/* ---- DETAIL PRODUKTU — doplnění pro mobil ---- */

@media (max-width: 640px) {
	/* Záložky — horizontální scroll bez zalamování */
	.single-product .woocommerce-tabs ul.tabs {
		display: flex !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch !important;
		flex-wrap: nowrap !important;
		scrollbar-width: none !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.single-product .woocommerce-tabs ul.tabs::-webkit-scrollbar {
		display: none !important;
	}

	.single-product .woocommerce-tabs ul.tabs li {
		flex-shrink: 0 !important;
	}

	.single-product .woocommerce-tabs ul.tabs li a {
		padding: 0.55rem 0.35rem !important;
		font-size: 0.68rem !important;
		letter-spacing: 0.02em !important;
		white-space: nowrap !important;
	}

	/* Cena — trochu menší */
	.single-product .price {
		font-size: 1.625rem !important;
	}

	/* Krátký popis — plná šířka (žádné max-width) */
	.single-product .woocommerce-product-details__short-description {
		max-width: 100% !important;
	}

	/* Obsah záložky — plná šířka */
	.single-product .woocommerce-tabs .panel {
		max-width: 100% !important;
	}

	/* Metadata produktu — menší mezery */
	.single-product .product_meta {
		margin-top: 1.25rem !important;
		padding-top: 1.25rem !important;
	}

	.single-product .product_meta > span {
		grid-template-columns: 1fr !important;
		gap: 0.35rem !important;
		padding: 0.8rem 0.9rem !important;
	}

	.single-product-key-facts__list {
		grid-template-columns: 1fr;
	}
}

/* ---- KOŠÍK — mobil ---- */

@media (max-width: 640px) {
	body.bookstore-cart-empty .wc-block-grid .wc-block-grid__products,
	body.bookstore-cart-empty .wc-block-product-template {
		column-gap: 1rem !important;
		row-gap: 1rem !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product,
	body.bookstore-cart-empty .wc-block-product {
		margin: 0 !important;
		display: grid !important;
		grid-template-columns: 84px minmax(0, 1fr) 40px !important;
		grid-template-rows: auto auto auto !important;
		column-gap: 12px !important;
		row-gap: 4px !important;
		padding: 10px !important;
		align-items: start !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product:hover,
	body.bookstore-cart-empty .wc-block-product:hover,
	body.bookstore-cart-empty .wc-block-grid__product:active,
	body.bookstore-cart-empty .wc-block-product:active {
		transform: none !important;
		box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06) !important;
		border-color: var(--border) !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-link,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(2) {
		display: contents !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-image,
	body.bookstore-cart-empty .wc-block-product > .wc-block-components-product-image {
		grid-column: 1 !important;
		grid-row: 1 / 4 !important;
		width: 84px !important;
		margin: 0 !important;
		align-self: start !important;
		overflow: hidden !important;
		border-radius: 8px !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-image a,
	body.bookstore-cart-empty .wc-block-product > .wc-block-components-product-image a {
		width: 84px !important;
		aspect-ratio: 2 / 3 !important;
		height: auto !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		background: #f7f4ef !important;
		border-radius: 8px !important;
		overflow: hidden !important;
	}

	body.bookstore-cart-empty .wc-block-product > .wc-block-components-product-image .wc-block-components-product-image__inner-container {
		position: static !important;
		inset: auto !important;
		transform: none !important;
		width: 100% !important;
		height: 100% !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		overflow: hidden !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-image img,
	body.bookstore-cart-empty .wc-block-product > .wc-block-components-product-image img {
		width: 84px !important;
		height: 126px !important;
		max-width: none !important;
		object-fit: cover !important;
		object-position: center top !important;
		display: block !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-title,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(2) > .wp-block-post-title {
		grid-column: 2 / 4 !important;
		grid-row: 1 !important;
		text-align: left !important;
		font-size: 0.9375rem !important;
		font-weight: 600 !important;
		margin: 0 0 3px !important;
		min-width: 0 !important;
		-webkit-line-clamp: 2 !important;
		-webkit-box-orient: vertical !important;
		display: -webkit-box !important;
		overflow: hidden !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-author,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(2) > .product-variation,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(2) > .wp-block-woocommerce-product-specifications {
		grid-column: 2 !important;
		grid-row: 2 !important;
		min-width: 0 !important;
		margin: 0 !important;
		text-align: left !important;
	}

	body.bookstore-cart-empty .product-variation td,
	body.bookstore-cart-empty .product-variation td p {
		font-size: 0.8125rem !important;
		margin-bottom: 0 !important;
		text-align: left !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-price,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(2) > .wp-block-woocommerce-product-price,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(2) > .wc-block-components-product-price {
		grid-column: 2 !important;
		grid-row: 3 !important;
		text-align: left !important;
		font-size: 1rem !important;
		font-weight: 700 !important;
		margin: 2px 0 0 !important;
		min-width: 0 !important;
		align-self: end !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-add-to-cart,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(3) {
		grid-column: 3 !important;
		grid-row: 3 !important;
		padding: 0 !important;
		margin: 0 !important;
		align-self: end !important;
		justify-content: center !important;
		min-width: 0 !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-add-to-cart .wp-block-button__link,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(3) .wc-block-components-product-button__button {
		width: 40px !important;
		min-height: 40px !important;
		padding: 0 !important;
		gap: 0 !important;
		border-radius: 8px !important;
		box-shadow: none !important;
		background: transparent !important;
		border: none !important;
		color: #111 !important;
		font-size: 0 !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
	body.bookstore-cart-empty .wc-block-grid__product-add-to-cart .wp-block-button__link:active,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(3) .wc-block-components-product-button__button:hover,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(3) .wc-block-components-product-button__button:active {
		background: transparent !important;
		transform: none !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-add-to-cart .wp-block-button__link::before,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(3) .wc-block-components-product-button__button::before {
		font-size: 22px !important;
		filter: grayscale(1) brightness(0.2) !important;
	}

	body.bookstore-cart-empty .wc-block-grid__product-add-to-cart .wp-block-button__link::after,
	body.bookstore-cart-empty .wc-block-product > .wp-block-group:nth-child(3) .wc-block-components-product-button__button::after {
		display: none !important;
		content: '' !important;
	}

	/* Sidebar — zrušit sticky, přirozeně pod produkty */
	.wc-block-cart__sidebar {
		position: static !important;
		top: auto !important;
	}

	/* Buňky — menší padding */
	.wc-block-cart-items__row td {
		padding: 16px 6px !important;
	}

	/* Obrázek produktu — menší */
	.wc-block-cart-item__image img {
		width: 54px !important;
	}

	/* Prázdný košík — menší ikona a titul */
	.wc-block-cart__empty-cart__title,
	.wc-block-cart__empty-cart__title.with-empty-cart-icon {
		font-size: 1.05rem !important;
	}

	.wc-block-cart__empty-cart__title.with-empty-cart-icon::before {
		font-size: 1.6rem !important;
		transform: scale(0.5) !important;
	}

	/* Doporučené produkty — ještě kompaktnější */
	.cart-empty-recommendations .wp-block-woocommerce-product-collection {
		max-width: 100% !important;
	}

	.wc-block-grid .wc-block-grid__products {
		gap: 1rem !important;
	}

	.cart-empty-recommendations .wc-block-grid .wc-block-grid__products,
	.cart-empty-recommendations .wc-block-product-template {
		column-gap: 1rem !important;
		row-gap: 1rem !important;
	}

	.cart-empty-recommendations .wc-block-grid__product,
	.cart-empty-recommendations .wc-block-product {
		margin: 0 !important;
	}

	.cart-empty-recommendations .wc-block-grid__product:hover,
	.cart-empty-recommendations .wc-block-product:hover,
	.cart-empty-recommendations .wc-block-grid__product:active,
	.cart-empty-recommendations .wc-block-product:active {
		transform: none !important;
	}

	.cart-empty-recommendations .wc-block-grid__product {
		display: grid !important;
		grid-template-columns: 84px minmax(0, 1fr) 40px !important;
		grid-template-rows: auto auto auto !important;
		column-gap: 12px !important;
		row-gap: 4px !important;
		padding: 10px !important;
		align-items: start !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-link,
	.cart-empty-recommendations .wc-block-grid__product > .wp-block-group:nth-child(2) {
		display: contents !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-image {
		grid-column: 1 !important;
		grid-row: 1 / 4 !important;
		width: 84px !important;
		aspect-ratio: 2 / 3 !important;
		margin: 0 !important;
		align-self: start !important;
		overflow: hidden !important;
		border-radius: 8px !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-image a,
	.cart-empty-recommendations .wc-block-grid__product-image .wc-block-components-product-image__image,
	.cart-empty-recommendations .wc-block-grid__product-image img {
		width: 84px !important;
		height: 126px !important;
		max-width: none !important;
		object-fit: cover !important;
		object-position: center top !important;
		display: block !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-title,
	.cart-empty-recommendations .wc-block-grid__product > .wp-block-group:nth-child(2) > .wp-block-post-title {
		grid-column: 2 / 4 !important;
		grid-row: 1 !important;
		text-align: left !important;
		font-size: 0.9375rem !important;
		font-weight: 600 !important;
		margin: 0 0 3px !important;
		min-width: 0 !important;
		-webkit-line-clamp: 2 !important;
		-webkit-box-orient: vertical !important;
		display: -webkit-box !important;
		overflow: hidden !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-author,
	.cart-empty-recommendations .wc-block-grid__product > .wp-block-group:nth-child(2) > .product-variation,
	.cart-empty-recommendations .wc-block-grid__product > .wp-block-group:nth-child(2) > .wp-block-woocommerce-product-specifications {
		grid-column: 2 !important;
		grid-row: 2 !important;
		min-width: 0 !important;
		text-align: left !important;
		margin: 0 !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-author,
	.cart-empty-recommendations .product-variation td,
	.cart-empty-recommendations .product-variation td p {
		font-size: 0.8125rem !important;
		margin-bottom: 0 !important;
		text-align: left !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-price,
	.cart-empty-recommendations .wc-block-grid__product > .wp-block-group:nth-child(2) > .wp-block-woocommerce-product-price,
	.cart-empty-recommendations .wc-block-grid__product > .wp-block-group:nth-child(2) > .wc-block-components-product-price {
		grid-column: 2 !important;
		grid-row: 3 !important;
		text-align: left !important;
		font-size: 1rem !important;
		font-weight: 700 !important;
		margin: 2px 0 0 !important;
		min-width: 0 !important;
		align-self: end !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-add-to-cart,
	.cart-empty-recommendations .wc-block-grid__product > .wp-block-group:nth-child(3) {
		grid-column: 3 !important;
		grid-row: 3 !important;
		padding: 0 !important;
		margin: 0 !important;
		align-self: end !important;
		justify-content: center !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-add-to-cart .wp-block-button__link {
		width: 40px !important;
		min-height: 40px !important;
		padding: 0 !important;
		gap: 0 !important;
		border-radius: 8px !important;
		box-shadow: none !important;
		background: transparent !important;
		border: none !important;
		color: #111 !important;
		font-size: 0 !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
	.cart-empty-recommendations .wc-block-grid__product-add-to-cart .wp-block-button__link:active {
		background: transparent !important;
		transform: none !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-add-to-cart .wp-block-button__link::before {
		font-size: 22px !important;
		filter: grayscale(1) brightness(0.2) !important;
	}

	.cart-empty-recommendations .wc-block-grid__product-add-to-cart .wp-block-button__link::after {
		display: none !important;
		content: '' !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product {
		display: grid !important;
		grid-template-columns: 84px minmax(0, 1fr) 40px !important;
		grid-template-rows: auto auto auto !important;
		column-gap: 12px !important;
		row-gap: 4px !important;
		padding: 10px !important;
		align-items: start !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product:hover,
	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product:active {
		transform: none !important;
		box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06) !important;
		border-color: var(--border) !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wc-block-components-product-image {
		grid-column: 1 !important;
		grid-row: 1 / 4 !important;
		margin: 0 !important;
		align-self: start !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wc-block-components-product-image a {
		width: 84px !important;
		aspect-ratio: 2 / 3 !important;
		height: auto !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		background: #f7f4ef !important;
		border-radius: 8px !important;
		overflow: hidden !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wc-block-components-product-image .wc-block-components-product-image__inner-container {
		position: static !important;
		inset: auto !important;
		transform: none !important;
		width: 100% !important;
		height: 100% !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		overflow: hidden !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wc-block-components-product-image img {
		position: static !important;
		inset: auto !important;
		width: 84px !important;
		height: 126px !important;
		max-width: none !important;
		object-fit: cover !important;
		object-position: center top !important;
		display: block !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(2) {
		display: contents !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(2) > .wp-block-post-title {
		grid-column: 2 / 4 !important;
		grid-row: 1 !important;
		min-width: 0 !important;
		text-align: left !important;
		font-size: 0.9375rem !important;
		font-weight: 600 !important;
		margin: 0 0 3px !important;
		-webkit-line-clamp: 2 !important;
		-webkit-box-orient: vertical !important;
		display: -webkit-box !important;
		overflow: hidden !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(2) > .product-variation,
	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(2) > .wp-block-woocommerce-product-specifications {
		grid-column: 2 !important;
		grid-row: 2 !important;
		min-width: 0 !important;
		margin: 0 !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .product-variation td,
	.cart-empty-recommendations .wp-block-woocommerce-product-collection .product-variation td p {
		font-size: 0.8125rem !important;
		margin-bottom: 0 !important;
		text-align: left !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(2) > .wp-block-woocommerce-product-price,
	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(2) > .wc-block-components-product-price {
		grid-column: 2 !important;
		grid-row: 3 !important;
		min-width: 0 !important;
		text-align: left !important;
		font-size: 1rem !important;
		font-weight: 700 !important;
		margin: 2px 0 0 !important;
		align-self: end !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(3) {
		grid-column: 3 !important;
		grid-row: 3 !important;
		padding: 0 !important;
		margin: 0 !important;
		align-self: end !important;
		justify-content: center !important;
		min-width: 0 !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(3) .wc-block-components-product-button__button {
		width: 40px !important;
		min-height: 40px !important;
		padding: 0 !important;
		gap: 0 !important;
		border-radius: 8px !important;
		box-shadow: none !important;
		background: transparent !important;
		border: none !important;
		color: #111 !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(3) .wc-block-components-product-button__button:hover,
	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(3) .wc-block-components-product-button__button:active {
		background: transparent !important;
		transform: none !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(3) .wc-block-components-product-button__button::after {
		display: none !important;
		content: '' !important;
	}

	.cart-empty-recommendations .wp-block-woocommerce-product-collection .wc-block-product > .wp-block-group:nth-child(3) .wc-block-components-product-button__button::before {
		font-size: 22px !important;
		filter: grayscale(1) brightness(0.2) !important;
	}

	.wc-block-grid__product {
		padding: 10px !important;
	}

	.wc-block-grid__product-image {
		width: 68% !important;
		margin-bottom: 10px !important;
	}

	.wc-block-grid__product-title {
		font-size: 0.875rem !important;
	}

	.wc-block-grid__product-price {
		font-size: 0.95rem !important;
		margin-bottom: 10px !important;
	}

	.wc-block-grid__product-add-to-cart .wp-block-button__link {
		min-height: 38px !important;
		font-size: 0.6875rem !important;
		padding: 0 12px !important;
	}
}

/* ---- PŘEHLED OBJEDNÁVEK — doplnění ---- */

@media (max-width: 640px) {
	/* Karta — jednoznačně do sloupce */
	.order-card {
		flex-direction: column !important;
		align-items: stretch !important;
		padding: 14px 16px !important;
		gap: 12px !important;
	}

	.order-left,
	.order-right {
		width: 100% !important;
		min-width: 0 !important;
	}

	.order-top {
		flex-wrap: wrap !important;
		row-gap: 8px !important;
	}

	.order-meta {
		flex-wrap: wrap !important;
		row-gap: 4px !important;
	}

	.order-right {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 10px !important;
	}

	.order-price {
		transform: none !important;
	}

	.order-view-btn {
		width: 100% !important;
		text-align: center !important;
	}
}

/* ---- DETAIL OBJEDNÁVKY — mobil ---- */

@media (max-width: 640px) {
	/* Grid produkty + souhrn — 1 sloupec */
	.order-detail {
		grid-template-columns: 1fr !important;
	}

	/* Souhrn — zrušit sticky */
	.order-summary {
		position: static !important;
		top: auto !important;
	}

	/* Header detailu — stohovat číslo nad cenou */
	.voh-top {
		flex-direction: column !important;
		gap: 10px !important;
	}

	/* Cena — doleva místo doprava */
	.voh-price-wrap {
		align-items: flex-start !important;
	}

	/* Cena — trochu menší */
	.voh-price {
		font-size: 1.375rem !important;
	}

	/* Meta řádky (doprava, platba, doručení) — zalamovat */
	.voh-meta {
		flex-wrap: wrap !important;
		gap: 16px !important;
		margin-top: 12px !important;
	}

	/* Header karta — menší padding */
	.view-order-header {
		padding: 16px !important;
	}
}

/* ---- ADRESY — gridy na 1 sloupec ---- */

@media (max-width: 640px) {
	.order-addresses,
	.my-addresses,
	.address-grid {
		grid-template-columns: 1fr !important;
		gap: 14px !important;
	}

	.order-address-block,
	.address-card {
		padding: 14px 16px !important;
	}
}

/* ---- MŮJ ÚČET — formuláře na mobilu ---- */

@media (max-width: 640px) {
	/* Formuláře — plná šířka */
	.woocommerce-EditAccountForm,
	.woocommerce-address-fields,
	.address-form {
		max-width: 100% !important;
		padding: 16px !important;
	}

	/* Fieldset hesla — menší padding */
	.woocommerce-MyAccount-content fieldset {
		padding: 14px 16px !important;
	}

	/* Karta — menší padding */
	.account-card {
		padding: 16px !important;
	}
}

/* ---- TOAST — mobil ---- */

@media (max-width: 640px) {
	/* Toast se roztáhne přes celou šířku */
	#bookstore-toast {
		left: 16px !important;
		right: 16px !important;
		bottom: 16px !important;
		max-width: none !important;
	}
}

/* ---- MINI KOŠÍK — mobil ---- */

@media (max-width: 640px) {
	/* Thumbnail — trochu menší */
	.wc-block-mini-cart__products-table .wc-block-cart-item__image img,
	.wc-block-cart-item__image img {
		height: 70px !important;
	}
}

/* ---- NAVIGACE — hamburger touch target ---- */

@media (max-width: 640px) {
	/* WP navigation hamburger — dostatečně velký dotyková plocha */
	.wp-block-navigation__responsive-container-open,
	.wp-block-navigation__responsive-container-close {
		min-width: 44px !important;
		min-height: 44px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
	}
}

/* ---- TYPOGRAFIE — mobil ---- */

@media (max-width: 640px) {
	/* Nadpis archiv stránky */
	.wp-block-query-title {
		font-size: 1.5rem !important;
	}

	/* Globální h2 (Doporučované tituly, atd.) */
	h2.wp-block-heading {
		font-size: 1.75rem !important;
	}

	/* Nadpisy na stránkách účtu */
	.woocommerce-account .wp-block-post-title {
		font-size: 1.05rem !important;
		letter-spacing: 0.12em !important;
	}

	.woocommerce-MyAccount-content h1,
	.woocommerce-MyAccount-content h2,
	.woocommerce-MyAccount-content h3 {
		font-size: 0.92rem !important;
	}
}

@media (max-width: 640px) {
	body.page:not(.home):not(.front-page) .wp-site-blocks > main {
		padding: 2.1rem 1rem 3rem;
	}

	body.page:not(.home):not(.front-page) .wp-block-post-title {
		margin-top: 1.4rem;
		font-size: clamp(2rem, 8vw, 2.55rem);
		line-height: 1.05;
		letter-spacing: -0.02em;
	}

	body.bookstore-legal-page .wp-site-blocks > main {
		padding-top: 2.25rem;
	}

	body.bookstore-legal-page .wp-block-post-title.bookstore-legal-hero__title,
	body.bookstore-legal-page .wp-block-post-title.bookstore-legal-title-inline {
		max-width: none;
		margin: 1.2rem auto 1rem;
		font-size: clamp(0.9rem, 4.5vw, 1.05rem) !important;
		letter-spacing: 0.14em;
		line-height: 1.1;
	}

	body.bookstore-legal-page .wp-block-post-title.bookstore-legal-hero__title a,
	body.bookstore-legal-page .wp-block-post-title.bookstore-legal-title-inline a {
		color: inherit !important;
	}

	body.page:not(.home):not(.front-page) .wp-site-blocks > main .wp-block-post-content,
	body.page:not(.home):not(.front-page) .wp-site-blocks > main .entry-content {
		padding: 1.2rem 1rem 1.4rem;
	}

	body.page:not(.home):not(.front-page) .wp-site-blocks > main .wp-block-post-content table,
	body.page:not(.home):not(.front-page) .wp-site-blocks > main .entry-content table {
		border-radius: var(--radius-m);
	}

	body.page:not(.home):not(.front-page) .wp-site-blocks > main .wp-block-post-content th,
	body.page:not(.home):not(.front-page) .wp-site-blocks > main .wp-block-post-content td,
	body.page:not(.home):not(.front-page) .wp-site-blocks > main .entry-content th,
	body.page:not(.home):not(.front-page) .wp-site-blocks > main .entry-content td {
		padding: 0.75rem 0.8rem;
	}

	body.home .bookstore-home-back-to-top {
		position: fixed;
		right: 1rem;
		left: auto;
		bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
		z-index: 80;
		opacity: 0;
		transform: translateY(0.75rem);
		pointer-events: none;
		transition: opacity 180ms ease, transform 180ms ease;
	}

	body.home .bookstore-home-back-to-top.is-visible {
		opacity: 1;
		transform: translateY(0);
		pointer-events: auto;
	}

	body.home .bookstore-home-back-to-top__button {
		border: 1px solid var(--color-primary);
		background: rgba(245, 239, 232, 0.95);
		color: var(--color-primary);
		border-radius: var(--radius-pill);
		padding: 0.78rem 1.05rem;
		font-family: var(--font-body);
		font-size: 0.78rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		box-shadow: var(--shadow-soft);
		backdrop-filter: blur(8px);
		-webkit-backdrop-filter: blur(8px);
	}

	body.home .bookstore-home-back-to-top__button:focus-visible {
		outline: 3px solid rgba(122, 31, 43, 0.25);
		outline-offset: 2px;
	}
}

@media (min-width: 641px) {
	body.home .bookstore-home-back-to-top {
		display: none !important;
	}
}
