/* =========================
   Original-Kadence-Submenus IMMER verstecken
   ========================= */
.header-navigation .header-menu-container ul ul {
  display: none !important;       /* nicht sichtbar */
  visibility: hidden !important;  /* unsichtbar */
  opacity: 0 !important;
  pointer-events: none !important; /* keine Interaktion */
}

/* =========================
   Primary Menu Container
   ========================= */
.primary-menu-container.header-menu-container {
  will-change: auto !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  -webkit-overflow-scrolling: touch;
  position: relative;
}

/* Wrapper freigeben */
#wrapper.site.wp-site-blocks {
  overflow: visible !important;
}

/* Container für das Menü */
body div.primary-menu-container {
  display: flex;
  overflow-x: auto;
  overflow-y: visible;
  padding-right: 60px;
  min-height: 60px;
  height: auto !important;
  width: 100%;
  max-width: 1000px;
  flex-wrap: nowrap;
  justify-content: flex-start !important;
  transition: transform 0.3s ease;
  margin-left: 0px;
}

/* Reserve am Ende */
.primary-menu-container::after {
  content: "";
  display: block;
  width: 80px;
  flex-shrink: 0;
}

/* Erster Menüpunkt links: Platz für Logo */
.primary-menu-container .menu > li:first-child {
  margin-left: 470px;
}

/* Menü selbst */
.primary-menu-container .menu {
  display: flex;
  flex-wrap: nowrap;
  width: max-content;
  margin-left: 0;
  padding-left: 0;
}

/* =========================
   Submenu / Dropdown
   ========================= */
.header-navigation .header-menu-container ul ul {
  display: none;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  z-index: 99999 !important;
  min-width: 220px;
  list-style: none !important;
  padding: 0;
  margin: 0;
  background: #fff; /* Weiße Box, funktioniert */
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
  border-radius: 6px;
}

/* Moved Submenu Container */
.moved-submenu {
  display: block;                       /* wichtig, sonst Balken */
  position: absolute !important;        /* absolute Position vom Script */
  top: 100%;                            /* direkt unter dem Menüpunkt */
  left: 0;                              /* Script überschreibt dynamisch */
  min-width: 220px;                     /* Mindestbreite */
  padding: 0.5em 0;                     /* Höhe der Box */
  margin: 0;
  list-style: none;
  background: rgba(255, 255, 255, 0.85); /* halbtransparent, Glass */
  backdrop-filter: blur(6px);           /* Blur für Glass-Effekt */
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
  border-radius: 6px;
  z-index: 99999;
}

/* Submenu Links */
.moved-submenu li.menu-item > a {
  display: block;
  padding: 0.8em 1.2em;
  color: var(--global-palette4);
  background: transparent;
  text-decoration: none;
  text-transform: none;
  font-size: 15px;
  border-radius: 4px;
  transition: all 0.2s ease-in-out;
}

/* Hover / Active Submenu */
.moved-submenu li.menu-item:hover > a,
.moved-submenu li.menu-item.focus > a,
.moved-submenu li.menu-item.current-menu-item > a {
  color: #fff;
  background: rgba(0,0,0,0.1);
}

/* Trennlinien optional */
.moved-submenu li.menu-item + li.menu-item {
  border-top: 1px solid rgba(0,0,0,0.05);
}

/* Hauptmenü Links */
.header-navigation li.menu-item > a {
  display: block;
  width: auto;
  padding: 0.6em 1em;
  color: var(--global-palette4);
  text-decoration: none;
  font-family: var(--global-body-font-family);
  font-weight: 400;
  font-size: 17px;
  line-height: 1.6;
  transition: all .2s ease-in-out;
  transform: none !important;
}

/* Hover / Active Hauptmenü */
.header-navigation li.menu-item:hover > a,
.header-navigation li.menu-item.focus > a,
.header-navigation li.menu-item.current-menu-item > a {
  color: var(--global-palette9);
  background: var(--global-palette4);
}

/* Hauptmenüeinträge */
body .header-navigation li.menu-item {
  list-style: none !important;
  flex: 0 0 auto !important;
  text-align: center !important;
  cursor: pointer !important;
  display: inline-block !important;
}

/* Optional: Suchsymbol rechts */
.menu-search-icon {
  position: absolute;
  right: 20px;
  top: 15px;
  z-index: 100000;
}

/* =========================
   Scrollbar ausblenden
   ========================= */
.primary-menu-container::-webkit-scrollbar {
  display: none;
}
.primary-menu-container {
  scrollbar-width: none; /* Firefox */
}


/* =========================
   Restliche Site
   ========================= */
.grid-cols {
    row-gap: 5px;
}

div.woocommerce-tabs.wc-tabs-wrapper {
    display: none;
}

span.wc-gzd-additional-info.shipping-costs-info {
    display: none;
}

fieldset select.kt-no-select2 {
    display: none;
}

/* Bereinigte Version ohne :where() */
.wp-block-columns,
.kt-inside-inner-col .wp-block-columns,
html .wp-block,
.editor-styles-wrapper .block-editor-block-list__block.wp-block-columns {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
}


/*--------------------------------
* Produktkarte(n) Wrapper li
*--------------------------------*/
ul.products li.entry.loop-entry
{
	position: relative;
	overflow: hidden;
}

/*--------------------------------
* Produktkarte(n)
*--------------------------------
.productCard
{
	position: relative;
	overflow: hidden;
	user-select: none;
/*	transition: none !important; 
}
*/

.productCard {
  border: 1px solid #ddd;
  border-radius: 20px; /* gleiche Rundung wie vorher */
  overflow: hidden; /* verhindert abgeschnittene Schatten */
  box-shadow: inset 0 0 0 1px #ddd;
  transition: box-shadow 0.2s ease;
}
.productCard:hover {
  box-shadow: inset 0 0 0 1px #ddd, 0 4px 12px rgba(0, 0, 0, 0.1);
}


/*--------------------------------
* Produktkarten: Inhaltsbereich
*--------------------------------*/
.kt-inside-inner-col
{
	z-index: 2;
}

.header-navigation .header-menu-container ul ul.sub-menu
{
	background: rgba(20, 20, 20, 0.7);
}
.header-navigation .header-menu-container ul ul li.menu-item:hover
{
background: rgba(20, 20, 20, 0.6);
}

.wc-add-to-cart-icon.wc-add-to-cart-no-text .add_to_cart_button.text_replaceable, .wc-add-to-cart-icon.wc-add-to-cart-no-text .single_add_to_cart_button .single_add_to_cart_button:before
{
	padding: 0 18px 0 18px;
	height:44px;
}

a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart.text_replaceable::before
{
	left: 27px;
}

.woocommerce div.product form.cart div.quantity {
	float: left;
	margin: 0 4px 0 0;
	display: flex;
	align-items: center;
}

button.single_add_to_cart_button{
	margin: 0 0 0 4px;
	height: 48px;
}

select#pa_schaerfe {
/*margin-top: 36px;*/
}

.product p.wc-gzd-additional-info
{
	display: none;
}

span.posted_in
{
	display: none;
}

/* Nur auf das ProductImage im Loop Template anwenden */
.kwt-image-wrap.kwt-image-loop.productImage {
    border-top-right-radius: 20px;
    overflow: hidden; /* wichtig, sonst bleibt das Bild eckig */
}

.kwt-image-wrap.kwt-image-loop.productImage img {
    border-top-right-radius: 20px;
}

/* Hintergrund der Produktkarte transparent machen */
.productCard {
    background: transparent !important;
}

.quantity.spinners-added {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 4px; /* Abstand zwischen den Elementen */
    width: auto; /* oder eine feste Breite, z. B. 120px */
}

.quantity.spinners-added input[type="number"] {
    width: 40px;
    text-align: center;
}

.quantity.spinners-added button {
    width: 30px;
    height: 30px;
    padding: 0;
    flex-shrink: 0;
}

/* Kadence Spaltenblock */
.wp-block-kadence-column {
    background-color: transparent !important;
}

/* WooCommerce Produktbereich */
.woocommerce-page,
.woocommerce,
.woocommerce ul.products,
.woocommerce div.product {
    background-color: transparent !important;
}

/* Allgemeine Templatebereiche */
.site-content,
.content-area,
.entry-content {
    background-color: transparent !important;
}

/* Optional: Box-Schatten entfernen */
.wp-block-kadence-column,
.woocommerce ul.products li.product {
    box-shadow: none !important;
}


/* === MG Modal – Layout & Alignment (klassisch, Snippets-Pro freundlich) === */

/* Container-Basis */
.mg-delivery-selector {
  font-family: inherit;
  line-height: 1.35;
}

/* Labels */
.mg-delivery-selector label {
  display: inline-block;
  margin: 0 0 4px;
  font-weight: 600;
}

/* Einheitliche Eingaben: Selects & Textfelder */
.mg-delivery-selector select,
.mg-delivery-selector input[type="text"] {
  width: 320px;        /* ggf. 280–360px anpassen */
  max-width: 100%;
  padding: 8px 10px;
  font: inherit;
  line-height: 1.3;
  box-sizing: border-box;
}

/* ORDDD-spezifische Inputs innerhalb des Modals */
.mg-delivery-selector .orddd_delivery_date input[type="text"],
.mg-delivery-selector .orddd_time_slot select {
  width: 320px;
  max-width: 100%;
  padding: 8px 10px;
  font: inherit;
  line-height: 1.3;
  box-sizing: border-box;
}

/* Hinweistext (eingeloggt) */
.mg-delivery-selector #mg-loggedin-hint {
  margin: 6px 0 0;
  color: #555;
  font-size: 0.95em;
}

/* Ergebnisbereich (Zone/Mindestwert) */
.mg-delivery-selector #mg-zone-result {
  margin-top: 10px;
}

.mg-delivery-selector #mg-zone-result div {
  margin: 2px 0;
}

/* Übernehmen-Button + Busy-State */
.mg-delivery-selector .button#mg-apply-zone {
  margin-top: 10px;
  min-width: 160px;
}

.mg-delivery-selector .button#mg-apply-zone.is-busy {
  opacity: 0.7;
  pointer-events: none;
  position: relative;
}

/* Spinner im Busy-State */
.mg-delivery-selector .button#mg-apply-zone.is-busy::after {
  content: '';
  position: absolute;
  right: 10px;
  top: 50%;
  width: 14px;
  height: 14px;
  margin-top: -7px;
  border: 2px solid #fff;
  border-top-color: transparent;
  border-radius: 50%;
  animation: mg-spin 0.8s linear infinite;
}

/* Spinner-Animation (klassisch) */
@keyframes mg-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* ORDDD Kalender im Modal minimal kleiner für bessere Passform */
.mg-delivery-selector .ui-datepicker,
.mg-delivery-selector .orddd-datepicker {
  font-size: 0.95em;
}

/* Woo Blocks: Text-Inputs im Modal anpassen (falls enger) */
.mg-delivery-selector .wc-block-components-text-input input {
  width: 320px;
}

/* Optional: Dropdown-Pfeile konsistenter (falls Theme variabel ist) */
.mg-delivery-selector select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* Optional: kleine Kantenrundung für Inputs */
.mg-delivery-selector select,
.mg-delivery-selector input[type="text"] {
  border-radius: 4px;
}

/* Optional: Fokus-Outline leicht sichtbar */
.mg-delivery-selector select:focus,
.mg-delivery-selector input[type="text"]:focus {
  outline: 2px solid rgba(0, 0, 0, 0.1);
  outline-offset: 1px;
}

/*
mg-modal Anpassungen:
*/

#ui-datepicker-div, .datepick-popup, .datepick {
  z-index: 100000 !important;
}

.orddd_lite_field_note {
    display: none !important;
}


/* ========== MG-Modal Trigger: dauerhaft sichtbar, mittig unten (fixed) ========== */

/* Basis: Button-Optik + feste Positionierung unten mittig */
.kb-modal-trigger[data-target="mg-modal"],
[data-modal-open="mg-modal"] {
  position: fixed !important;
  left: 50% !important;
  bottom: 20px !important;
  transform: translateX(-50%) !important;

  background: #111 !important;
  color: #fff !important;
  border-color: #111 !important;

  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  white-space: nowrap;

  padding: 10px 16px;
  min-height: 40px;
  border-radius: 8px;

  box-shadow: 0 6px 18px rgba(0,0,0,.18) !important;
  z-index: 9999; /* hoch genug, aber unter Off-Canvas/Overlays */

  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: none !important;
}

/* Inneres Label (Text im Button) dauerhaft weiß */
.kb-modal-trigger[data-target="mg-modal"] .kb-blocks-modal-link-sm,
[data-modal-open="mg-modal"] .kb-blocks-modal-link-sm {
  color: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Hover/Focus/Active identisch zum Normalzustand */
.kb-modal-trigger[data-target="mg-modal"]:hover,
.kb-modal-trigger[data-target="mg-modal"]:focus,
.kb-modal-trigger[data-target="mg-modal"]:active,
[data-modal-open="mg-modal"]:hover,
[data-modal-open="mg-modal"]:focus,
[data-modal-open="mg-modal"]:active {
  background: #111 !important;
  color: #fff !important;
  border-color: #111 !important;
}

/* Häufige Hide-/Utility-Klassen am Button neutralisieren */
.kb-modal-trigger[data-target="mg-modal"].is-hidden,
.kb-modal-trigger[data-target="mg-modal"].kb-hidden,
.kb-modal-trigger[data-target="mg-modal"].kt-hidden,
[data-modal-open="mg-modal"].is-hidden,
[data-modal-open="mg-modal"].kb-hidden,
[data-modal-open="mg-modal"].kt-hidden {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Kadence-Animationsklassen, die Opacity/Transform ändern, neutralisieren */
.kb-modal-trigger[data-target="mg-modal"].is-animate-in-fade,
.kb-modal-trigger[data-target="mg-modal"].is-animate-in-fadeUp,
.kb-modal-trigger[data-target="mg-modal"].is-animate-in-fadeDown,
.kb-modal-trigger[data-target="mg-modal"].is-animate-out-fade,
.kb-modal-trigger[data-target="mg-modal"].is-animate-out-fadeUp,
.kb-modal-trigger[data-target="mg-modal"].is-animate-out-fadeDown,
[data-modal-open="mg-modal"].is-animate-in-fade,
[data-modal-open="mg-modal"].is-animate-in-fadeUp,
[data-modal-open="mg-modal"].is-animate-in-fadeDown,
[data-modal-open="mg-modal"].is-animate-out-fade,
[data-modal-open="mg-modal"].is-animate-out-fadeUp,
[data-modal-open="mg-modal"].is-animate-out-fadeDown {
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
}

/* Wenn der Button in Wrappern mit Animations-/Reveal-Klassen steckt, diese entschärfen */
.kb-modal-linkalign-center .kb-modal-trigger[data-target="mg-modal"],
.kb-blocks-modal-link .kb-modal-trigger[data-target="mg-modal"],
.kt-modal-linkalign-center .kb-modal-trigger[data-target="mg-modal"] {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
}

/* Responsive Breite für kleine Screens (zentriert) */
@media (max-width: 480px) {
  .kb-modal-trigger[data-target="mg-modal"],
  [data-modal-open="mg-modal"] {
    width: 88%;
    max-width: 420px;
    justify-content: center;
    text-align: center;
  }
}

/* iOS Safe-Area (falls nötig): einfach unten mehr Platz geben */
@supports (bottom: env(safe-area-inset-bottom)) {
  .kb-modal-trigger[data-target="mg-modal"],
  [data-modal-open="mg-modal"] {
    bottom: calc(20px + env(safe-area-inset-bottom)) !important;
  }
}

/* Single-Product: bewusst ausblenden (customid-Flow) */
.single-product .kb-modal-trigger[data-target="mg-modal"],
.single-product [data-modal-open="mg-modal"] {
  display: none !important;
}

/* ========== Menu Anpassungen ========== */

/* Sicherstellen, dass Header nach Modal-Schließen nicht invertiert */
body:not(.kadence-modal-open) .site-header,
body:not(.kadence-modal-open) .header-navigation li.menu-item > a {
    background-color: transparent !important;
    color: var(--global-palette4) !important;
}

/* Hover bleibt konsistent */
body:not(.kadence-modal-open) .header-navigation li.menu-item:hover > a {
    color: var(--global-palette9) !important;
    background: var(--global-palette4) !important;
}


/* Overlay soll keine Klicks schlucken */
.productCard .has-overlay,
.productCard .overlay,
.productCard [data-overlay] {
  pointer-events: none;
}
