/* Generated by tools/build-css-bundles.php. Do not edit directly. */

/* Source: assets/css/woocommerce.css */
/* WooCommerce Basisstruktur */

.woocommerce,
.woocommerce-page {
    font-family: var(--ce-font-body);
    color: var(--ce-earth-900);
}

.woocommerce .products {
    margin: 0;
    padding: 0;
}

.woocommerce ul.products li.product {
    background: var(--ce-color-on-dark);
    border-radius: var(--ce-radius-card);
    overflow: hidden;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-family: var(--ce-font-heading);
    font-weight: var(--ce-font-heading-weight, 200);
    color: var(--ce-earth-900);
}

.woocommerce ul.products li.product .price {
    color: var(--ce-earth-900);
}

/* WooCommerce Seitenzustände */

.ce-page-shop .woocommerce,
.ce-page-product-category .woocommerce {
    width: min(100%, var(--ce-layout-max-width));
    margin-inline: auto;
    padding-inline: var(--ce-space-page);
}

.ce-page-product .product {
    width: min(100%, var(--ce-layout-max-width));
    margin-inline: auto;
    padding-inline: var(--ce-space-page);
}

.ce-page-cart .woocommerce,
.ce-page-checkout .woocommerce {
    width: min(100%, var(--ce-layout-content-width, 960px));
    margin-inline: auto;
    padding-inline: var(--ce-space-page);
}

.ce-page-wcfm-store .woocommerce {
    width: min(100%, var(--ce-layout-max-width));
    margin-inline: auto;
    padding-inline: var(--ce-space-page);
}

.ce-product-card-wrap {
    height: 100%;
}

.ce-product-card-wrap .product {
    height: 100%;
}

/* Produktkarten */

.woocommerce ul.products li.product a img {
    width: 100%;
    margin: 0;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    margin: 1rem 1rem 0;
    font-family: var(--ce-font-heading);
    font-weight: var(--ce-font-heading-weight, 200);
    color: var(--ce-earth-900);
}

.woocommerce ul.products li.product .price {
    display: block;
    margin: 0.5rem 1rem 1rem;
    color: var(--ce-earth-900);
}

.woocommerce ul.products li.product .button {
    margin: 0 1rem 1rem;
}

/* Source: assets/css/pages/commerce-utility.css */
/*
 * Vorläufiger, kontrastfester CE-Rahmen für transaktionale Funktionsseiten.
 * Die Klasse wird zentral am Body gesetzt und kann bei späteren vollständigen
 * Page Experiences schrittweise ersetzt werden.
 */

.ce-body.ce-page-utility {
	color: var(--ce-color-on-dark);
	background: var(--ce-earth-800);
	font-family: var(--ce-font-body);
}

.ce-body.ce-page-utility .ce-main {
	width: min(
		calc(100% - (var(--ce-space-page) + var(--ce-space-page))),
		var(--ce-layout-content-width, 960px)
	);
	margin: var(--ce-space-section) auto;
	padding: clamp(1.25rem, 3vw, 2.5rem);
	border: 1px solid var(--ce-earth-200);
	background: var(--ce-color-on-dark);
	color: var(--ce-earth-900);
	box-shadow: var(--ce-shadow-soft);
}

.ce-body.ce-page-utility .ce-main,
.ce-body.ce-page-utility .ce-main p,
.ce-body.ce-page-utility .ce-main li,
.ce-body.ce-page-utility .ce-main label,
.ce-body.ce-page-utility .ce-main table,
.ce-body.ce-page-utility .ce-main input,
.ce-body.ce-page-utility .ce-main select,
.ce-body.ce-page-utility .ce-main textarea,
.ce-body.ce-page-utility .ce-main button {
	font-family: var(--ce-font-body);
}

.ce-body.ce-page-utility .ce-main h1,
.ce-body.ce-page-utility .ce-main h2,
.ce-body.ce-page-utility .ce-main h3,
.ce-body.ce-page-utility .ce-main h4,
.ce-body.ce-page-utility .ce-main h5,
.ce-body.ce-page-utility .ce-main h6 {
	color: var(--ce-earth-900);
	font-family: var(--ce-font-heading);
	font-weight: var(--ce-font-heading-weight, 200);
}

.ce-body.ce-page-utility .ce-main a:not(.button):not(.wp-element-button):not(.wc-block-components-button) {
	color: var(--ce-earth-900);
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: var(--ce-sun-700);
	text-underline-offset: 0.2em;
}

.ce-body.ce-page-utility .ce-main input:not([type='checkbox']):not([type='radio']):not([type='hidden']),
.ce-body.ce-page-utility .ce-main select,
.ce-body.ce-page-utility .ce-main textarea {
	min-height: 2.75rem;
	padding: 0.65rem 0.75rem;
	border: 1px solid var(--ce-earth-200);
	border-radius: var(--ce-radius-small);
	background: var(--ce-color-on-dark);
	color: var(--ce-earth-900);
}

.ce-body.ce-page-utility .ce-main button,
.ce-body.ce-page-utility .ce-main .button,
.ce-body.ce-page-utility .ce-main .wp-element-button,
.ce-body.ce-page-utility .ce-main .wc-block-components-button,
.ce-body.ce-page-utility .ce-main input[type='submit'] {
	display: inline-flex;
	min-height: 2.75rem;
	align-items: center;
	justify-content: center;
	padding: 0.7rem 1.1rem;
	border: 1px solid var(--ce-sun-700);
	border-radius: var(--ce-radius-button);
	background: var(--ce-sun-700);
	color: var(--ce-earth-850);
	font-family: var(--ce-font-body);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	text-transform: none;
	box-shadow: none;
}

.ce-body.ce-page-utility .ce-main .woocommerce-info,
.ce-body.ce-page-utility .ce-main .woocommerce-message,
.ce-body.ce-page-utility .ce-main .woocommerce-error,
.ce-body.ce-page-utility .ce-main .wc-block-components-notice-banner {
	border: 1px solid var(--ce-earth-200);
	border-left: 5px solid var(--ce-sun-700);
	background: var(--ce-earth-100);
	color: var(--ce-earth-900);
}

.ce-body.ce-page-utility .ce-main table,
.ce-body.ce-page-utility .ce-main .wc-block-components-sidebar,
.ce-body.ce-page-utility .ce-main .wc-block-components-main {
	color: var(--ce-earth-900);
}

@media (max-width: 640px) {
	.ce-body.ce-page-utility .ce-main {
		width: calc(100% - (2 * var(--ce-space-md)));
		margin-block: var(--ce-space-xl);
		padding: var(--ce-space-lg);
	}
}

/* Gemeinsame Seitenhülle für Konto, Vendor-Registrierung und Widerruf. */
.ce-body.ce-page-managed-utility .ce-main.ce-utility-experience {
	width: min(calc(100% - 48px), var(--ce-container-width));
	margin-inline: auto;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: var(--ce-earth-50);
	box-shadow: none;
}

.ce-utility-experience__inner {
	padding:
	clamp(2.5rem, 5vw, 4.5rem)
	var(--ce-container-padding)
	clamp(5rem, 8vw, 8rem);
}

.ce-utility-experience__header {
	margin-bottom: clamp(2rem, 4vw, 3rem);
}

.ce-body.ce-page-managed-utility .ce-main .ce-utility-experience__title {
	margin: 0;
	color: var(--ce-earth-900);
	font: var(--ce-heading-xl);
	font-weight: var(--ce-font-heading-weight);
	letter-spacing: 0;
}

.ce-utility-experience__content {
	width: 100%;
	max-width: none;
	margin: 0;
}

.ce-utility-experience--404 .ce-utility-experience__inner {
	max-width: 920px;
	min-height: clamp(28rem, 55vh, 42rem);
}

.ce-utility-experience__overline {
	margin: 0 0 var(--ce-space-sm);
	color: var(--ce-sun-800);
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.ce-utility-experience--404 .ce-utility-experience__content {
	max-width: 42rem;
	color: var(--ce-earth-700);
	font-size: clamp(1rem, 0.96rem + 0.2vw, 1.125rem);
	line-height: 1.6;
}

.ce-utility-experience__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--ce-space-sm);
	margin-top: var(--ce-space-lg);
}

.ce-body.ce-page-managed-utility .ce-main .ce-utility-experience__actions .ce-button--ghost {
	border-color: var(--ce-earth-300);
	background: transparent;
}

/* WCFM bestimmt das kompakte Layout; CE ergänzt nur Farben und entfernt Schatten. */
.ce-site:has(#colorbox #support_form_wrapper) #cboxOverlay {
	background-color: var(--ce-earth-900);
}

.ce-site #colorbox:has(#support_form_wrapper),
.ce-site #colorbox:has(#support_form_wrapper) #cboxWrapper,
.ce-site #colorbox:has(#support_form_wrapper) #cboxContent,
.ce-site #colorbox:has(#support_form_wrapper) #cboxLoadedContent,
.ce-site #colorbox:has(#support_form_wrapper) #support_form_wrapper,
.ce-site #colorbox:has(#support_form_wrapper) #wcfm_support_form_wrapper {
	background-color: var(--ce-earth-50);
	box-shadow: none !important;
}

.ce-site #colorbox:has(#support_form_wrapper) #support_form_wrapper h2 {
	color: var(--ce-sun-800);
}

.ce-site #colorbox:has(#support_form_wrapper) #wcfm_support_form .wcfm_popup_label {
	color: var(--ce-earth-700);
}

.ce-site #colorbox:has(#support_form_wrapper) #wcfm_support_form .wcfm_popup_input {
	border-color: var(--ce-earth-300);
	background-color: var(--ce-color-on-dark);
	color: var(--ce-earth-900);
	box-shadow: none !important;
}

.ce-site #colorbox:has(#support_form_wrapper) #wcfm_support_form .wcfm_popup_input:focus {
	border-color: var(--ce-sun-800);
	outline-color: var(--ce-sun-800);
}

.ce-site #colorbox:has(#support_form_wrapper) #wcfm_support_submit_button {
	border-color: var(--ce-sun-700);
	background-color: var(--ce-sun-700);
	color: var(--ce-earth-850);
	box-shadow: none !important;
}

.ce-site #colorbox:has(#support_form_wrapper) #wcfm_support_submit_button:hover,
.ce-site #colorbox:has(#support_form_wrapper) #wcfm_support_submit_button:focus-visible {
	border-color: var(--ce-earth-850);
	background-color: var(--ce-earth-850);
	color: var(--ce-color-on-dark);
}

.ce-site #colorbox:has(#support_form_wrapper) #cboxClose {
	box-shadow: none !important;
}

@media (max-width: 640px) {
	.ce-body.ce-page-managed-utility .ce-main.ce-utility-experience {
		width: min(calc(100% - 32px), var(--ce-container-width));
		margin-inline: auto;
		padding: 0;
	}

	.ce-utility-experience__inner {
		padding:
			var(--ce-space-xl)
			var(--ce-space-sm)
			clamp(4rem, 18vw, 6rem);
	}

}
