#cart-drawer .cart-toggle-close {
	width: 44px;
	height: 44px;
	padding: 0;
	display: grid;
	place-items: center;
	background: #fff !important;
	border: 1px solid #E4DFFB !important;
	border-radius: 12px;
	color: #2D2360 !important;
	box-shadow: none !important;
	outline: none !important;
	cursor: pointer;
}
#cart-drawer .cart-toggle-close:hover,
#cart-drawer .cart-toggle-close:focus-visible { background: #F3F1FF !important; }

#cart-drawer .woocommerce-mini-cart-item a.remove { display: none !important; }
#cart-drawer .woocommerce-mini-cart-item { position: relative; padding-right: 0 !important; }
#cart-drawer .woocommerce-mini-cart-item > a:not(.remove) { padding-right: 42px; }

.tmk-weg-alles,
.woocommerce-cart table.cart td.product-remove a.remove {
	display: grid !important;
	place-items: center;
	width: 34px !important;
	height: 34px !important;
	padding: 0;
	background: #fff !important;
	border: 1px solid #E4DFFB !important;
	border-radius: 10px !important;
	color: #2D2360 !important;
	font-size: 22px !important;
	line-height: 1 !important;
	text-decoration: none !important;
	box-shadow: none !important;
	cursor: pointer;
}
.tmk-weg-alles { position: absolute; top: 6px; right: 0; }
.tmk-weg-alles:hover,
.woocommerce-cart table.cart td.product-remove a.remove:hover { background: #F3F1FF !important; color: #2D2360 !important; }

.tmk-preis { font-size: 15px; font-weight: 700; margin-top: 4px; color: #1E1550; }

.tmk-leiste {
	clear: both;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 10px;
	padding: 6px;
	background: #F3F1FF;
	border: 1px solid #E4DFFB;
	border-radius: 14px;
}
.tmk-leiste.tmk-weg { opacity: .55; pointer-events: none; }
#cart-drawer.tmk-rechnet p:not(.woocommerce-mini-cart__buttons) { opacity: .45; }

.tmk-knopf {
	width: 44px;
	height: 44px;
	padding: 0;
	display: grid;
	place-items: center;
	background: #fff !important;
	border: 0 !important;
	border-radius: 10px;
	color: #2D2360 !important;
	box-shadow: 0 1px 3px rgba(30, 21, 80, .12) !important;
	cursor: pointer;
}
.tmk-knopf:hover { background: #E9E5FF !important; }
.tmk-knopf:disabled { opacity: .4; cursor: default; }

.tmk-anzahl { font-size: 16px; font-weight: 600; color: #2D2360; }
.tmk-anzahl b { font-size: 19px; }

form.cart.tmk-im-korb .tmm-zeile,
form.cart.tmk-im-korb .quantity,
form.cart.tmk-im-korb .single_add_to_cart_button { display: none !important; }

.tmk-produkt { width: 100%; flex: 0 0 100%; }
.tmk-produkt .tmk-leiste { margin-top: 0; }
.tmk-zur-kasse {
	display: block;
	margin-top: 10px;
	padding: 14px;
	text-align: center;
	background: #1E1550;
	border-radius: 10px;
	color: #fff !important;
	font-size: 17px;
	font-weight: 700;
	text-decoration: none !important;
}
.tmk-zur-kasse:hover { background: #2D2360; }

/* Bewertungen: am PC unter den Bildern, sonst unter dem Kaufbereich */
.tmk-bewertungen {
	clear: both;
	width: 100%;
	margin: 18px 0;
	padding: 18px;
	background: #fff;
	border: 1px solid #A9AFBE;
	border-radius: 10px;
	box-sizing: border-box;
	color: #1E1550;
}
.tmk-bewertungen-titel { margin: 0 0 8px; font-size: 21px; color: #2D2360; }
.tmk-bewertungen .woocommerce-Reviews-title { display: none; }
.tmk-bewertungen #reviews { display: block !important; }
.tmk-bewertungen #comments,
.tmk-bewertungen #review_form_wrapper { float: none !important; width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
.tmk-bewertungen .woocommerce-noreviews { margin: 0 0 12px; padding: 0; background: none; border: 0; color: #565959; }
.tmk-pruefhinweis { margin: 10px 0 0; font-size: 14px; color: #565959; }

/* Goldene Sterne mit halben Schritten */
.tmk-sterne { display: inline-flex; gap: 4px; }
.tmk-stern {
	--g: 40px;
	position: relative;
	display: block;
	width: var(--g);
	height: var(--g);
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23DDE0E6' d='M12 1.8l3.1 6.6 7.2.9-5.3 5 1.4 7.2L12 18l-6.4 3.5L7 14.3l-5.3-5 7.2-.9z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.tmk-fuell {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	display: block;
	overflow: hidden;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23FFC107' d='M12 1.8l3.1 6.6 7.2.9-5.3 5 1.4 7.2L12 18l-6.4 3.5L7 14.3l-5.3-5 7.2-.9z'/%3E%3C/svg%3E") left center / var(--g) var(--g) no-repeat;
}
.tmk-sterne-klein { gap: 2px; margin-bottom: 4px; }
.tmk-sterne-klein .tmk-stern { --g: 22px; }
.tmk-halb {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 50%;
	min-width: 0;
	min-height: 0;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	cursor: pointer;
}
.tmk-halb-l { left: 0; }
.tmk-halb-r { right: 0; }
.tmk-sterne-zeile { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.tmk-sterne-wert { min-width: 90px; font-size: 16px; font-weight: 700; color: #2D2360; }
.comment-form-rating .stars, .comment-form-rating #rating { display: none !important; }
.tmk-formfehler { margin: 0 0 10px; color: #B3261E; font-weight: 600; }
.star-rating span::before, .star-rating span, .woocommerce .star-rating span::before { color: #FFC107 !important; }
.star-rating::before, .woocommerce .star-rating::before { color: #DDE0E6 !important; }
.tmk-bewertungen .comment-reply-title { display: block; margin-bottom: 6px; font-size: 17px; font-weight: 700; }
.tmk-bewertungen #submit {
	padding: 11px 20px;
	background: #6C5CE7 !important;
	border: 0 !important;
	border-radius: 8px;
	color: #fff !important;
	font-weight: 700;
	cursor: pointer;
}
.tmk-bewertungen #submit:hover { background: #2D2360 !important; }
.tmk-alle-bewertungen {
	margin-bottom: 14px;
	padding: 8px 14px;
	background: #fff !important;
	border: 1px solid #6C5CE7 !important;
	border-radius: 8px;
	color: #2D2360 !important;
	font-weight: 700;
	cursor: pointer;
}
@media (min-width: 1025px) {
	.single-product div.product { grid-template-rows: auto 1fr; }
	.single-product div.product > .woocommerce-product-gallery { grid-row: 1; top: 0 !important; }
	.single-product div.product > .summary { grid-row: 1 / span 2; }
	.single-product div.product > .tmk-bewertungen { grid-column: 1; grid-row: 2; align-self: start; margin: 18px 0 24px; }
}

/* Kundenkonto */
body.woocommerce-account.logged-in .entry-content-wrap { box-shadow: none !important; }
body.woocommerce-account.logged-in .woocommerce {
	display: grid;
	grid-template-columns: 240px minmax(0, 1fr);
	background: #fff;
	border: 1px solid #A9AFBE;
	border-radius: 12px;
	overflow: hidden;
}
body.woocommerce-account.logged-in .woocommerce::before,
body.woocommerce-account.logged-in .woocommerce::after { display: none; }
body.woocommerce-account.logged-in .account-navigation-wrap {
	float: none !important;
	width: auto !important;
	padding: 16px 12px;
	border: 0 !important;
	border-right: 1px solid #A9AFBE !important;
}
body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
	min-width: 0;
	padding: 22px 26px 28px !important;
	color: #1E1550;
}
body.woocommerce-account.logged-in .kadence-account-avatar {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 10px;
	padding: 4px 8px 14px;
	border-bottom: 1px solid #D5D9D9;
}
body.woocommerce-account.logged-in .kadence-customer-image {
	display: grid;
	place-items: center;
	flex: none;
	position: static !important;
	width: 40px !important;
	height: 40px !important;
	margin: 0 !important;
	background: #2D2360;
	border-radius: 50%;
	color: #fff;
	font-weight: 700;
}
body.woocommerce-account.logged-in .kadence-customer-name { padding: 0 !important; font-size: 16px; font-weight: 700; color: #1E1550; overflow-wrap: anywhere; }
body.woocommerce-account.logged-in .kadence-customer-name::after { content: "Mein Konto"; display: block; font-size: 13px; font-weight: 400; color: #565959; }
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul { margin: 0 !important; padding: 0 !important; list-style: none; }
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li { margin: 0 0 2px !important; padding: 0 !important; border: 0 !important; }
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 10px 12px !important;
	background: none !important;
	border: 0 !important;
	border-radius: 8px;
	color: #2D2360 !important;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none !important;
}
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li a:hover { background: #F3F1FF !important; }
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li.is-active a { background: #F3F1FF !important; color: #6C5CE7 !important; }
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout { margin-top: 10px !important; padding-top: 10px !important; border-top: 1px solid #D5D9D9 !important; }
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a { color: #565959 !important; }

.tmk-hallo { margin: 0 0 4px; font-size: 26px; color: #2D2360; }
.tmk-unter { margin: 0 0 20px; font-size: 16px; color: #565959; }
.tmk-kacheln { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; }
a.tmk-kachel { display: block; padding: 16px; border: 1px solid #A9AFBE; border-radius: 10px; text-decoration: none !important; }
a.tmk-kachel:hover { background: #F3F1FF; border-color: #6C5CE7; }
.tmk-kachel b { display: block; margin-bottom: 4px; font-size: 17px; color: #2D2360; }
.tmk-kachel span { display: block; font-size: 15px; font-weight: 400; line-height: 1.35; color: #565959; }

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 14px;
	padding: 12px 16px;
	background: #F3F1FF;
	border: 1px solid #E4DFFB;
	border-radius: 10px;
	color: #1E1550;
	font-size: 15px;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message::before { display: none; }
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info a.button {
	float: none;
	flex: none;
	padding: 8px 14px;
	background: #fff !important;
	border: 1px solid #6C5CE7 !important;
	border-radius: 8px;
	color: #2D2360 !important;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
}
/* Woo setzt den Knopf vor den Text: rechts anzeigen */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info:has(> a.button) { flex-direction: row-reverse; }
/* Noch keine Bestellung */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info:has(a.woocommerce-Button) {
	flex-direction: column;
	justify-content: center;
	padding: 34px 20px;
	background: #fff;
	border: 1px solid #A9AFBE;
	text-align: center;
	font-size: 16px;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info a.woocommerce-Button,
body.woocommerce-account .woocommerce-MyAccount-content .button:not(.wc-forward):not(.view),
body.woocommerce-account .woocommerce-MyAccount-content a.button.view {
	padding: 11px 20px;
	background: #6C5CE7 !important;
	border: 0 !important;
	border-radius: 8px;
	color: #fff !important;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none !important;
}
@media (max-width: 768px) {
	body.woocommerce-account.logged-in .woocommerce { grid-template-columns: minmax(0, 1fr); }
	body.woocommerce-account.logged-in .account-navigation-wrap { border-right: 0 !important; border-bottom: 1px solid #A9AFBE !important; }
	body.woocommerce-account.logged-in .woocommerce-MyAccount-content { padding: 18px 16px 22px !important; }
}

/* Bestellungen und Formulare */
.tmk-bestellung { margin-bottom: 14px; padding: 16px; border: 1px solid #A9AFBE; border-radius: 10px; }
.tmk-bestellkopf { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
a.tmk-bestellnr { font-size: 18px; font-weight: 700; color: #2D2360 !important; text-decoration: none !important; }
.tmk-klein { font-size: 14px; font-weight: 400; color: #565959; }
.tmk-status { align-self: flex-start; padding: 3px 10px; background: #F3F1FF; border: 1px solid #E4DFFB; border-radius: 8px; font-size: 14px; font-weight: 600; }
.tmk-bestellartikel { display: flex; align-items: center; gap: 12px; padding: 8px 0; border-top: 1px solid #D5D9D9; }
.tmk-bestellbild { flex: none; width: 48px; height: 48px; overflow: hidden; border-radius: 6px; background: #F3F4F4; }
.tmk-bestellbild img { display: block; width: 48px; height: 48px; object-fit: cover; }
.tmk-knoepfe { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.tmk-bestellaktionen { margin-bottom: 18px; }
.tmk-aktion, a.tmk-aktion {
	display: inline-block;
	padding: 10px 14px;
	background: #fff !important;
	border: 1px solid #6C5CE7 !important;
	border-radius: 8px;
	color: #2D2360 !important;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none !important;
	box-shadow: none !important;
	cursor: pointer;
}
.tmk-aktion:hover { background: #F3F1FF !important; }
.tmk-aktion.tmk-haupt, a.tmk-aktion.tmk-haupt { background: #6C5CE7 !important; color: #fff !important; }
.tmk-aktion.tmk-haupt:hover { background: #2D2360 !important; }
.tmk-aktion:disabled { opacity: .6; cursor: default; }
.tmk-fallstatus { margin: 10px 0 0; padding: 10px 14px; background: #F3F1FF; border: 1px solid #E4DFFB; border-radius: 8px; font-size: 15px; }
.tmk-seiten { display: flex; justify-content: space-between; gap: 8px; }
.tmk-dialog { width: min(520px, calc(100vw - 24px)); max-height: calc(100dvh - 24px); padding: 0; background: #fff; border: 0; border-radius: 12px; color: #1E1550; }
.tmk-dialog::backdrop { background: rgba(30, 21, 80, .45); }
.tmk-dialog form { padding: 18px; }
.tmk-dialogkopf { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.tmk-dialogkopf h3 { margin: 0; font-size: 21px; color: #2D2360; }
.tmk-zu { flex: none; width: 40px; height: 40px; padding: 0; background: #fff !important; border: 1px solid #E4DFFB !important; border-radius: 10px; color: #2D2360 !important; font-size: 24px; line-height: 1; box-shadow: none !important; cursor: pointer; }
.tmk-feldname, .tmk-artikelwahl legend { display: block; margin: 12px 0 4px; padding: 0; font-size: 15px; font-weight: 700; }
.tmk-pflicht { color: #B3261E; }
.tmk-artikelwahl { margin: 0; padding: 0; border: 0; }
.tmk-check { display: flex; align-items: flex-start; gap: 8px; padding: 6px 0; font-size: 15px; font-weight: 400; }
.tmk-check input { flex: none; width: 18px; height: 18px; margin: 2px 0 0; }
.tmk-dialog textarea, .tmk-dialog select, .tmk-widerrufform input[type="text"], .tmk-widerrufform input[type="email"], .tmk-widerrufform textarea { display: block; width: 100%; box-sizing: border-box; padding: 9px 12px; border-radius: 8px; }
.tmk-fotos { display: block; width: 100%; padding: 8px 0; font-size: 15px; }
.tmk-dialog .tmk-klein { margin: 2px 0 0; }
.tmk-fotofehler { margin: 4px 0 0; color: #B3261E; font-weight: 600; }
.tmk-senden { width: 100%; margin-top: 16px; padding: 12px; text-align: center; }
.tmk-widerrufseite { max-width: 560px; }
.tmk-pdflink { margin: 14px 0 0; font-size: 15px; color: #565959; }
.tmk-pdflink a { color: #6C5CE7; font-weight: 700; }
.tmk-honig { position: absolute; left: -9999px; }
.tmk-bestaetigt { padding: 16px; background: #F3F1FF; border: 1px solid #E4DFFB; border-radius: 10px; }
.tmk-bestaetigt h2 { margin: 0 0 6px; font-size: 21px; color: #2D2360; }
.tmk-bestaetigt p { margin: 0; }

/* Felder und Linien im ganzen Shop gut sichtbar */
input[type="text"], input[type="search"], input[type="email"], input[type="tel"], input[type="number"]:not(.tmm-menge input), input[type="password"], select, textarea, .select2-selection {
	border: 1.5px solid #7D8499 !important;
	background: #fff !important;
	color: #1E1550 !important;
}
input::placeholder, textarea::placeholder { color: #5B6175 !important; opacity: 1 !important; }
input:not(.tmm-menge input):focus, select:focus, textarea:focus {
	border-color: #6C5CE7 !important;
	box-shadow: 0 0 0 2px rgba(108, 92, 231, .2) !important;
	outline: none !important;
}

.woocommerce table.shop_table tr > th, .woocommerce table.shop_table tr > td,
.cart_totals table tr > th, .cart_totals table tr > td,
.woocommerce-checkout-review-order-table tr > th, .woocommerce-checkout-review-order-table tr > td {
	border-bottom: 1px solid #9CA2B3 !important;
}
.woocommerce table.shop_table thead th { border-bottom: 2px solid #5B6175 !important; }
#cart-drawer .woocommerce-mini-cart-item, #cart-drawer p.total { border-color: #9CA2B3 !important; }
html body ul.products li.product.loop-entry.type-product { border-color: #A9AFBE !important; }
