/*=============== GOOGLE FONTS ===============*/
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;600&family=Titan+One&display=swap");

/*=============== VARIABLES CSS ===============*/
:root {
  --header-height: 3.5rem;

  /*========== Colors ==========*/
  /*Color mode HSL(hue, saturation, lightness)*/
  /*--first-color: hsl(30, 70%, 40%);*/
  --first-color: #FF9800;
  /*--first-color-dark: hsl(30, 80%, 34%);*/
  --first-color-dark: hsl(30, 20%, 95%);
  --first-color-darken: hsl(30, 90%, 28%);
  --next-section-background-color: #FFA500;
  /* Mittleres Braun (#C19A6B) */
  /*--second-color: hsl(39, 100%, 50%);
  --second-color-dark: hsl(39, 100%, 47%);*/
  --second-color: hsl(25, 29%, 27%);
  --button-text-color: hsl(36, 100%, 50%);
  /*--white-color: hsl(0, 0%, 100%);*/
  --white-color: hsl(25, 29%, 27%);
  --shadow-img: drop-shadow(0 12px 24px hsla(0, 0%, 0%, .4));
  --shadow-circle: 0 12px 24px hsla(0, 0%, 0%, .4);
  --shadow-button: 0 -4px 8px hsla(0, 0%, 0%, .3);
  --shadow-card: 0 -8px 24px hsla(0, 0%, 0%, .3);
  --shadow-text: 0 2px 4px var(--first-color-darken);

  /*========== Font and typography ==========*/
  /*.5rem = 8px | 1rem = 16px ...*/
  --body-font: "Poppins", sans-serif;
  --second-font: "Titan One", sans-serif;
  --biggest-font-size: 3.5rem;
  --h1-font-size: 1.5rem;
  --h2-font-size: 1.25rem;
  --h3-font-size: 1rem;
  --normal-font-size: .938rem;
  --small-font-size: .813rem;

  /*========== Font weight ==========*/
  --font-regular: 400;
  --font-semi-bold: 600;

  /*========== z index ==========*/
  --z-tooltip: 10;
  --z-fixed: 100;
}

/*========== Responsive typography ==========*/
@media screen and (min-width: 1150px) {
  :root {
    --biggest-font-size: 5.5rem;
    --h1-font-size: 2.5rem;
    --h2-font-size: 1.8rem;
    --h3-font-size: 1.25rem;
    --normal-font-size: 1rem;
    --small-font-size: .875rem;
  }
}

/*Upselling*/
/* Popup Overlay */
.upselling-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 500px;
    background-color: #fff;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    z-index: 1000;
    padding: 20px;
    box-sizing: border-box;
    text-align: center; /* Zentriere den Inhalt */
    display: flex;
    flex-direction: column; /* Inhalte vertikal anordnen */
    justify-content: space-between;
    gap: 20px; /* Abstand zwischen den Abschnitten */
    overflow: hidden; /* Verhindert, dass Inhalte über das Popup hinausragen */
}

/* Schließen-Button oben rechts */
.upselling-popup .close-popup {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 20px;
    font-weight: bold;
    color: #333;
    cursor: pointer;
    background: none;
    border: none;
    outline: none;
}

.upselling-popup .close-popup:hover {
    color: #ff0000;
}

/* Überschrift */
.upselling-popup h3 {
    margin-bottom: 15px;
    font-size: 1.5rem;
    text-align: center;
}

/* Carousel */
.recommendations-carousel {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    margin: 0 -10px; /* Negativer Rand, um Padding am Anfang/Ende auszugleichen */
    padding: 10px; /* Innenabstand für den Carousel-Bereich */
    scrollbar-width: thin;
    scrollbar-color: #ccc transparent;
}

.recommendations-carousel::-webkit-scrollbar {
    height: 8px;
}

.recommendations-carousel::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 4px;
}

.recommendations-carousel::-webkit-scrollbar-track {
    background: transparent;
}

.recommendation-item {
    flex: 0 0 120px;
    text-align: center;
    background: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 10px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.recommendation-item img {
    width: 100%;
    height: 80px;
    object-fit: contain;
    border-radius: 6px;
}

.recommendation-item p {
    font-size: 0.85rem;
    margin: 5px 0;
}

.recommendation-item .price {
    font-weight: bold;
    color: #333;
}

.recommendation-item button {
    background-color: #ff8c00; /* Orange */
    color: white;
    font-size: 14px;
    font-weight: bold;
    border: none;
    border-radius: 6px;
    padding: 8px 12px;
    cursor: pointer;
    transition: background 0.3s ease-in-out;
	width: 80%;
}

.recommendation-item button:hover {
    background-color: #e67e22; /* Dunkleres Orange */
}

/* Stil für den Haken nach dem Hinzufügen */
.recommendation-item button.added {
    background-color: #2ecc71; /* Grün */
    color: white;
    font-weight: bold;
}


/* Aktionen unten */
.popup-actions {
    display: flex;
    flex-direction: column; /* Buttons vertikal anordnen */
    gap: 10px;
}

.popup-actions button {
    width: 100%; /* Buttons über die gesamte Breite */
    font-size: 0.9rem;
    padding: 10px;
    border-radius: 5px;
    cursor: pointer;
}

.popup-actions button:first-child {
    background-color: #28a745;
    color: #fff;
    border: none;
}

.popup-actions button:first-child:hover {
    background-color: #218838;
}

.popup-actions button:last-child {
    background-color: #f8f9fa;
    color: #333;
    border: 1px solid #ddd;
}

.popup-actions button:last-child:hover {
    background-color: #e2e6ea;
}



/* Stil für das Softdrink-Dropdown */
.upselling-dropdown {
    width: 140px;  /* Kleinere Breite */
    height: 35px;  /* Kleinere Höhe */
    font-size: 14px;
    padding: 5px;
    border: 2px solid #3498db; /* Blaue Umrandung */
    border-radius: 6px;
    background: white;
    color: #333;
    appearance: none;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

/* Hover- & Fokus-Effekte für das Dropdown */
.upselling-dropdown:hover,
.upselling-dropdown:focus {
    border-color: #2980b9;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
}

/* Container für das Dropdown und den Button */
.upselling-action-container {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: center;
    margin-top: 10px;
}




@media (max-width: 768px) {
    .upselling-popup .close-popup {
        top: 5px; /* Reduzierter Abstand für kleinere Bildschirme */
        right: 5px;
        font-size: 18px; /* Kleinere Schriftgröße */
    }

    .upselling-popup h3 {
        margin-top: 25px; /* Platz für den Schließen-Button schaffen */
    }
}



/*Style aus der Ursprünglichen kunde.php */
  @import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;600&family=Titan+One&display=swap");

        body {
            font-family: Arial, sans-serif;
            background-color: #f4f4f4;
            margin: 0;
            padding: 0;
        }
        .header {
            background-color: #FF9800;
            color: hsl(25, 29%, 27%);
            padding: 20px;
            text-align: center;
            position: relative;
			font: 200 1.0rem "Titan One", sans-serif;
        }
		

		
        .cart-icon {
            position: absolute;
            top: 20px;
            right: 20px;
            font-size: 24px;
            cursor: pointer;
        }
		
		.fixed-cart-bar {
    display: none; /* Verstecke den fixierten Warenkorb */
}
        .cart-header {
            text-align: center;
            font-size: 24px;
            margin-bottom: 20px;
            position: relative; /* Ermöglicht die Positionierung des Schließen-Kreuzes */
        }
        .close-cart {
            position: absolute;
            top: 0;
            right: 10px;
            font-size: 28px;
            font-weight: bold;
            color: #333;
            cursor: pointer;
        }
        .container {
            max-width: 1200px;
            margin: 20px auto;
            padding: 20px;
            //background: #fff;
            //box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
        }
        .products {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-around;
        }
        .product {
            background: #fff;
            border: 1px solid #ddd;
            border-radius: 10px;
            padding: 15px;
            margin: 10px;
			margin-bottom: 20px;
            text-align: center;
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
            width: 250px;
			display: flex;
			flex-direction: column;
			justify-content: space-between;
        }
		
        .product img {
            max-width: 100%;
			height: 150px; /* Feste Höhe für das Produktbild */
			object-fit: cover; /* Bild zuschneiden, um es proportional zu halten */
            border-radius: 10px;
            margin-bottom: 10px;
        }
		
		.product-info {
			text-align: center;
			flex-grow: 1;
			display: flex;
			flex-direction: column;
			justify-content: flex-start;
			margin-bottom: 10px;
		}
		
		
		
		.product-info h3 {
    font-size: 16px;
    line-height: 1.2;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal; /* Erlaubt Zeilenumbrüche */
    margin-bottom: 10px; /* Abstand unter dem Titel */
}
		
		.product-description {
    font-size: 14px;
    color: #555;
	line-height: 1.2; /* Verkleinerter Zeilenabstand für Beschreibung */
    margin-bottom: 10px; /* Abstand zwischen Beschreibung und Allergien */
    white-space: normal; /* Zeilenumbruch erlauben */
}

.product-allergies {
    font-size: 12px;
    color: #a00;
    margin-bottom: 10px; /* Abstand zwischen Allergien und Preis */
}
		
		.price-add {
			display: flex;
			flex-direction: column;
			justify-content: flex-end; /* Stellt sicher, dass der Preis am unteren Ende des Containers ausgerichtet ist */
		}
		
		/*Allergieninfo*/
		
		/*#allergy-info-btn {
			background-color: hsl(30, 90%, 28%); /* Button Hintergrundfarbe 
			color: white; /* Textfarbe 
			border: none; /* Kein Rahmen 
			padding: 10px 15px; /* Innenabstand 
			border-radius: 5px; /* Abgerundete Ecken 
			cursor: pointer; /* Zeiger-Icon bei Hover 
			position: absolute; /* Position im Header 
			top: 25px; /* Abstand von oben 
			left: 10px; /* Abstand von links 
			font-size: 14px; /* Schriftgröße 
		}

		#allergy-info-btn:hover {
			background-color: hsl(35, 94%, 28%);  Hintergrundfarbe bei Hover 
		}*/
		
		.modal {
			display: none; /* Standardmäßig verborgen */
			position: fixed; /* Bleibt an Ort und Stelle */
			z-index: 1; /* Vor anderen Elementen */
			left: 0;
			top: 0;
			width: 100%; /* Vollständige Breite */
			height: 100%; /* Vollständige Höhe */
			overflow: auto; /* Scrollen bei Bedarf */
			background-color: rgba(0, 0, 0, 0.5); /* Halbtransparentes Schwarz */
			animation: fadeIn 0.3s ease;
		}
		
		@keyframes fadeIn {
			from { opacity: 0; }
			to { opacity: 1; }
		}

		.modal-content {
			background-color: #fefefe;
			margin: 15% auto; /* Zentrieren */
			padding: 20px;
			border: 1px solid #888;
			width: 80%; /* Breite des Modals */
		}

		.close {
			color: #aaa;
			float: right; /* Rechts oben */
			font-size: 28px;
			font-weight: bold;
		}

		.close:hover,
		.close:focus {
			color: black;
			text-decoration: none;
			cursor: pointer;
		}
		
		
		@media (max-width: 600px) {
			#allergy-info-btn {
				position: static; /* Ändert die Position auf statisch für kleinere Bildschirme */
				margin: 10px 0; /* Füge etwas Abstand hinzu */
				width: 100%; /* Button nimmt die volle Breite ein */
			}
			
			.modal {
				top: 100px;
				height: 90%; /* Vollständige Höhe */
			}
		}



		/*für allergien*/

               
        .product button {
            padding: 10px 20px;
            background-color: #FF9800; /* Originalfarbe des Buttons */
            color: #fff;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            font-size: 16px;
            transition: background-color 0.3s ease; /* Sanfter Übergang */
        }
        .product button:hover {
            background-color: #218838; /* Etwas dunklerer Grünton beim Hover */
        }
		
		
        .cart-overlay {
            position: fixed;
            top: 0;
            right: 0;
            width: 300px;
            height: 100%;
            background: #f4f4f4;
            box-shadow: -2px 0px 10px rgba(0, 0, 0, 0.2);
            transform: translateX(100%);
            transition: transform 0.3s ease-in-out;
            z-index: 999;
            padding: 20px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }
        .cart-overlay.active {
            transform: translateX(0);
        }
        .cart-header {
            text-align: center;
            font-size: 24px;
            margin-bottom: 20px;
        }
        .cart-items {
            flex-grow: 1;
            overflow-y: auto;
        }
        .cart-item {
			display: flex;
			flex-direction: column; /* Ändere die Richtung der Flexbox auf Spalte */
			align-items: center;
			justify-content: space-between;
			padding: 10px;
			border-bottom: 1px solid #ddd;
			margin-bottom: 10px;
			background-color: #fff;
			border-radius: 5px;
			box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
		}
       .cart-item img {
    width: 120px;  /* Erhöhe die Breite des Bildes */
    height: 120px; /* Erhöhe die Höhe des Bildes */
    object-fit: cover;  /* Verhindert Verzerrungen und füllt das Bild vollständig aus */
    border-radius: 5px;
    margin-bottom: 10px; /* Abstand zum darunterliegenden Inhalt */
}

		
        .cart-item h4 {
    font-size: 16px;
    line-height: 1.2;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
		
.cart-item p {
    margin: 5px 0;
    font-size: 14px;
    line-height: 1.2;
    white-space: normal;
    word-wrap: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
}


        .cart-item button {
            padding: 5px;
            background-color: #dc3545;
            color: #fff;
            border: none;
            border-radius: 5px;
            cursor: pointer;
        }
        .cart-footer {
    text-align: center;
    padding: 5px; /* Starker Rückgang des inneren Abstands */
    font-size: 12px; /* Kleinere Schriftgröße für eine kompakte Darstellung */
}

.cart-footer p {
    margin: 3px 0; /* Reduzierter Abstand zwischen den Textzeilen */
    font-size: 12px; /* Kleinere Schrift für die Summenangaben */
}

.cart-footer button {
    padding: 6px 12px; /* Stärker reduzierter Abstand für den Button */
    font-size: 18px; /* Kleinere Schriftgröße für den Button */
    margin-bottom: 10px; /* Weniger Abstand am unteren Rand */
    background-color: #28a745;
    color: #fff;
    border: none;
    border-radius: 5px;
    cursor: pointer;
	transition: background-color 0.3s ease;
}


.cart-footer button:hover {
    background-color: #218838; /* Neue Farbe beim Hover */
}



		
		.cart-overlay {
			width: 600px; /* Erhöht die Breite des Warenkorbs */
		}

		

		.cart-item-content {
       width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center; /* Zentriert den Inhalt horizontal */
    text-align: center;  /* Zentriert den Text innerhalb des Elements */
}

		.cart-item-actions {
			 display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 10px; /* Abstand zwischen Text und Buttons */
		}

		.cart-item-actions button {
			padding: 5px 10px;
			font-size: 14px;
			margin-left: 5px;
			border: none;
			border-radius: 5px;
			cursor: pointer;
		}

		.cart-item-actions .quantity-buttons button {
			background-color: #ff9800;
			color: #fff;
		}

		.cart-item-actions .quantity-buttons button:hover {
			background-color: #0056b3;
		}

		.cart-item-actions .remove-button {
			background-color: #dc3545;
			color: #fff;
		}

		.cart-item-actions .remove-button:hover {
			background-color: #c82333;
		}
		.remove-button {
			margin-left: 10px;
			font-size: 20px;
		}
	
		.cart-info {
			padding: 10px;
			border-bottom: 1px solid #ddd;
			margin-bottom: 10px;
		}

		.mbv-info {
			display: flex;
			align-items: center;
			margin-bottom: 5px;
		}

		.mbv-info .type-icon {
			font-size: 24px;
			margin-right: 8px;
			color: #FF9800;
		}

		.delivery-info-text {
			font-size: 14px;
			color: #333;
		}
		
		button.disabled {
			background-color: #ccc; /* Grau */
			cursor: not-allowed; /* Zeige einen nicht klickbaren Cursor */
}



		/* Stile für das Bezahlformular */
		
		
		#stadtDropdown{
			width: 100%;
            padding: 5px;
            border: 1px solid #ddd;
            border-radius: 5px;
		}
			.cart-info {
    margin-bottom: 5px; /* Reduzierter Abstand zwischen den Texten zur Liefergebühr und dem Mindestbestellwert */
		}
			
		
			
		#stadtauswahl{
		
		
}

		
        .checkout-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.5);
            display: none;
            justify-content: center;
            align-items: center;
            z-index: 1000;
        }
        .checkout-form {
            background: #fff;
            padding: 20px;
            border-radius: 10px;
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
            width: 100%;
            max-width: 500px;
			max-height: 80vh; /* Maximal 80% der Höhe des Viewports */
			box-sizing: border-box; /* Padding in die Breite und Höhe einrechnen */
            position: relative;
			overflow-y: auto; /* Scrollen erlauben, falls die Inhalte zu groß werden */
        }
        .checkout-form h2 {
            margin-top: 0;
            font-size: 24px;
        }
        .checkout-form label {
            display: block;
            margin-bottom: 10px;
        }
        .checkout-form input {
            width: 100%;
            padding: 10px;
            margin-bottom: 15px;
            border: 1px solid #ddd;
            border-radius: 5px;
        }
        .checkout-form button {
            background-color: #28a745;
            color: #fff;
            border: none;
            padding: 10px;
            border-radius: 5px;
            cursor: pointer;
            font-size: 16px;
            width: 100%;
        }
        .checkout-form button:hover {
            background-color: #218838;
        }
        .checkout-form .close-form {
            position: absolute;
            top: 10px;
            right: 10px;
            font-size: 24px;
            cursor: pointer;
        }

		.checkout-form textarea {
    width: 100%;
    padding: 10px;
    margin-bottom: 15px;
    border: 1px solid #ddd;
    border-radius: 5px;
    resize: vertical; /* Benutzer kann die Höhe anpassen */
}

/* Stelle sicher, dass das Schließen-Symbol immer sichtbar ist */
.close-form {
    position: absolute; /* Fixiert das X-Symbol innerhalb des Containers */
    top: 10px; /* Abstand vom oberen Rand */
    right: 10px; /* Abstand vom rechten Rand */
    cursor: pointer;
    font-size: 24px;
    z-index: 10; /* Stellt sicher, dass es über anderen Elementen bleibt */
}





/* Container für die Radio-Buttons */
.payment-method {
    margin-top: 20px;
    padding: 10px;
    background-color: #f4f4f4; /* Hintergrundfarbe anpassen */
    border-radius: 8px;
}

.payment-method h3 {
    font-size: 1.2em;
    color: #333; /* Überschriftenfarbe */
    margin-bottom: 10px;
}

/* Styling der Radio-Buttons und Labels */
.radio-container {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    font-size: 1em;
    cursor: pointer;
}

/* Verstecke das Standard-Radio-Button-Element */
.radio-container input[type="radio"] {
    display: none;
}

/* Gestalte das Custom-Radio-Button-Element */
.radio-container .checkmark {
    display: inline-block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid #333; /* Farbe des Rahmens */
    margin-right: 10px;
    position: relative;
}

.radio-container input[type="radio"]:checked + .checkmark {
    background-color: #4CAF50; /* Farbe des Buttons wenn ausgewählt */
    border: 2px solid #4CAF50; /* Rahmengröße und Farbe wenn ausgewählt */
}

.radio-container input[type="radio"]:checked + .checkmark::after {
    content: "";
    position: absolute;
    top: 5px;
    left: 5px;
    width: 8px;
    height: 8px;
    background-color: white;
    border-radius: 50%;
}

.error-message {
    margin-top: 10px;
    color: red;
    font-size: 0.9em;
}



		
		/*Google Maps Search Field*/
		.location-input {
			position: relative; /* oder absolute, je nach Layout */
			z-index: 1001; /* höher als der Z-Index des Bezahlformulars */
		}

		/*Google Maps Search Field*/
		
		
		/* Stil für das Getränkedropdown */
.drink-selection-popup select {
    width: 100%; /* Volle Breite des Containers */
    padding: 10px; /* Innenabstand */
    font-size: 16px; /* Schriftgröße */
    border: 1px solid #ccc; /* Randfarbe */
    border-radius: 5px; /* Abgerundete Ecken */
    background-color: #fff; /* Hintergrundfarbe */
    appearance: none; /* Entfernt die Standard-Dropdown-Pfeile für Konsistenz */
    -webkit-appearance: none;
    -moz-appearance: none;
    margin-bottom: 15px; /* Abstand nach unten */
}

/* Optional: Stil für den Bestätigungs- und Schließen-Button */
.drink-selection-popup button {
    background-color: #4CAF50; 
    color: white; /* Weiße Schriftfarbe */
    padding: 10px 20px; /* Innenabstand */
    border: none; /* Kein Rand */
    border-radius: 5px; /* Abgerundete Ecken */
    font-size: 16px; /* Schriftgröße */
    cursor: pointer; /* Zeigt den Zeiger-Cursor an */
    margin-right: 10px; /* Abstand zwischen den Buttons */
}

.drink-selection-popup button:hover {
    background-color: #e68a00; /* Etwas dunkler beim Hover */
}

/* Stil für das Pop-up selbst */
.drink-selection-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    padding: 20px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
    z-index: 1000;
    width: 300px;
    border-radius: 10px; /* Runde Ecken für das Pop-up */
}



/*SOFTDRINKUNTERTEILUNG*/
.dropdown-button {
    background-color: #FFA500; /* gleiche Farbe wie der Standard-Warenkorb-Button */
    border: none;
    color: white;
    padding: 10px 20px;
    font-size: 16px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    transition: background-color 0.3s;
}

.dropdown-button:hover {
    background-color: #e69500; /* etwas dunklere Farbe für Hover */
}

.dropdown-icon {
    margin-left: 8px;
    font-size: 14px; /* kleinerer Pfeil */
    vertical-align: middle;
}

/*SOFTDRINKUNTERTEILUNG*/



		
		.accordion {
            width: 100%;
            //border: 1px solid #ddd;
            margin-bottom: 10px;
            border-radius: 5px;
            overflow: hidden;
        }
        .accordion-header {
            background-color: hsl(30, 90%, 28%);
            color: #fff;
            padding: 15px;
            cursor: pointer;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease;
        }
        .accordion-content.show {
            max-height: 10000px; /* Kann angepasst werden */
        }
		
		/* Suchfeld-Container zentrieren */
		.search-container {
			display: flex;
			justify-content: center; /* Zentriert den Container */
			margin: 30px auto; /* Abstand nach oben und unten */
			width: 100%; /* Stellt sicher, dass es den verfügbaren Raum nutzt */
			padding: 0 10px; /* Fügt ein bisschen Puffer hinzu, damit es nicht am Rand klebt */
			box-sizing: border-box; /* Verhindert das Überschreiten der Breite */
		}

		/* Suchfeld-Formular */
		.search-form {
			display: flex;
			align-items: center; /* Zentriert die Elemente vertikal */
			gap: 10px; /* Abstand zwischen den Elementen */
			flex-wrap: wrap; /* Ermöglicht das Umwickeln von Elementen, wenn es eng wird */
			width: 100%; /* Passt sich der Breite des Containers an */
			max-width: 500px; /* Maximale Breite für größere Bildschirme */
		}

		/* Suchfeld-Eingabefeld */
		.search-form input[type="text"] {
			flex: 1; /* Lässt das Eingabefeld den verfügbaren Platz nutzen */
			min-width: 150px; /* Mindestbreite, damit es nicht zu klein wird */
			padding: 10px;
			border: 1px solid #ddd;
			border-radius: 20px; /* Abgerundete Ecken */
			font-size: 16px;
			outline: none;
			box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Sanfter Schatten */
			transition: all 0.3s ease; /* Sanfter Übergang */
		}

		.search-form input[type="text"]:focus {
			border-color: #FF9800; /* Fokusfarbe */
			box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); /* Etwas stärkerer Schatten beim Fokus */
		}

		/* Suchfeld-Buttons */
		.search-button,
		.reset-button {
			padding: 10px 20px;
			background-color: hsl(30, 90%, 28%); /* Hintergrundfarbe des Buttons */
			color: #fff;
			border: none;
			border-radius: 20px; /* Abgerundete Ecken */
			cursor: pointer;
			font-size: 16px;
			text-decoration: none; /* Entfernt die Unterstreichung des Links */
			text-align: center; /* Zentriert den Text */
			transition: background-color 0.3s ease; /* Sanfter Übergang */
			box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Sanfter Schatten */
			flex: 1; /* Macht den Button flexibel */
			max-width: 140px; /* Maximale Breite der Buttons */
		}

		/* Hover-Effekte für Buttons */
		.search-button:hover,
		.reset-button:hover {
			background-color: hsl(30, 80%, 33%); /* Dunklere Farbe beim Hover */
		}

		/* Media Queries für Mobilansicht */
		@media (max-width: 600px) {
			.search-form {
				flex-direction: column; /* Stapelt die Elemente übereinander */
				gap: 15px; /* Abstand zwischen den Elementen */
				align-items: stretch; /* Elemente auf volle Breite strecken */
			}

			.search-form input[type="text"],
			.search-button,
			.reset-button {
				width: 100%; /* Volle Breite nutzen */
				max-width: none; /* Maximale Breite entfernen */
			}
		}
		
		.opening-hours {
			font-size: 11px;
		}
  /*Style aus der Ursprünglichen kunde.php */
  
  /*Test für Anzahl der Elemente im Warenkorb*/
  
.cart-icon {
    font-size: 36px;
    color: black;
    cursor: pointer;
}

.cart-count {
    position: absolute;
    bottom: 12px;  /* Am unteren Rand vom Einkaufswagen */
    right: 62px;   /* Am rechten Rand vom Einkaufswagen */
    background-color: white;
    color: black;
    border-radius: 50%;
    padding: 2px 6px;
    font-size: 15px;
    /*font-weight: bold;*/
    line-height: 1;
    border: 1px solid #ccc;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    min-width: 20px;
    text-align: center;
}

.cart-count {
    display: inline-block;
    transition: transform 0.2s ease;
}

.cart-count.bump {
    transform: scale(1.2);
}



	  /*Test für Anzahl der Elemente im Warenkorb*/


/* CSS für den "bump"-Effekt */
#total-price {
    display: inline-block; /* Wichtig für den Skalierungseffekt */
    transition: transform 0.2s ease;
}

#total-price.bump {
    transform: scale(1.2);
}



/*=============== BASE ===============*/
* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--body-font);
  font-size: var(--normal-font-size);
  background-color: var(--first-color);
  color: var(--white-color);
}

ul {
  list-style: none;
}

a {
  text-decoration: none;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

/*=============== REUSABLE CSS CLASSES ===============*/
.container {
  max-width: 1120px;
  margin-inline: 1.5rem;
}

.grid {
  display: grid;
  gap: 1.5rem;
}

.section {
  padding-block: 5rem 1rem;
}

.section__title {
  font: var(--font-regular) var(--h2-font-size) var(--second-font);
  text-align: center;
  margin-bottom: 1.5rem;
  //text-shadow: var(--shadow-text);
  
}

.section__title_new {
  font: var(--font-regular) var(--h1-font-size) var(--second-font);
  text-align: center;
  margin-bottom: 1.5rem;
  //text-shadow: var(--shadow-text);
}

/* Ende Testbereich*/

.main {
  overflow: hidden;
}


/*=============== HEADER & NAV ===============*/
.header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  background-color: var(--first-color);
  z-index: var(--z-fixed);
  transition: box-shadow .4s;
  box-shadow: inset var(--shadow-card);
}

.nav {
  position: relative;
  height: var(--header-height);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.nav__logo {
  width: 95px;
  height: auto;
}

.nav__close,
.nav__toggle {
  display: flex;
  font-size: 1.5rem;
  cursor: pointer;
}

/* Navigation for mobile devices */
@media screen and (max-width: 1150px) {
  .nav__menu {
    position: fixed;
    left: -100%;
    top: 0;
    background-color: var(--first-color-dark);
    width: 100%;
    height: 100%;
    padding: 7rem 1.5rem 2.5rem 4rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: left .4s;
  }
}

.nav__list,
.nav__social {
  display: flex;
}

.nav__list {
  flex-direction: column;
  row-gap: 3rem;
}

.nav__link {
  color: var(--white-color);
  font-size: var(--h2-font-size);
  font-weight: var(--font-semi-bold);
  transition: color .4s;
}

.nav__link:hover {
  color: var(--second-color);
}

.nav__close {
  position: absolute;
  top: 1.15rem;
  right: 1.5rem;
}

.nav__social {
  column-gap: 1rem;
  align-self: flex-end;
}

.nav__social-link {
  color: var(--white-color);
  font-size: 1.5rem;
  transition: color .4s;
}


.nav__social-link:hover {
  color: var(--second-color);
  transform: translateY(-5px);
  /* HinzugefÃ¼gt */
}

.nav__social-link:active {
  transform: translateY(2px);
  /* HinzugefÃ¼gt */
}

/* Show menu */
.show-menu {
  left: 0;
}

/* Shadow header */
.shadow-header {
  box-shadow: 0 2px 16px hsla(0, 0%, 0%, .15);
}

/* Active link */
.active-link {
  color: var(--second-color);
}


/* Media Query fÃ¼r kleinere BildschirmgrÃ¶Ãen */
@media screen and (max-width: 768px) {
  }


@media screen and (max-width: 480px) {
}

/*=============== BUTTON ===============*/

.cart-methods {
    display: flex;
    justify-content: center; /* Zentriert die Buttons */
    margin-bottom: 20px; /* Abstand nach unten */
}

.cart-methods button {
    background-color: white; /* Hintergrundfarbe */
    color: black; /* Schriftfarbe */
    border: 2px solid black;; /* Kein Rahmen */
    padding: 10px 20px; /* Innenabstand */
    margin: 0 10px; /* Abstand zwischen den Buttons */
    cursor: pointer; /* Zeigt den Cursor an */
    font-size: 16px; /* Schriftgröße */
    border-radius: 5px; /* Abgerundete Ecken */
    transition: background-color 0.3s, color 0.3s; /* Übergangseffekt für die Hintergrundfarbe */
}

.cart-methods button.active {
    background-color: black; /* Hintergrundfarbe für den aktiven Button */
    color: white; /* Schriftfarbe für den aktiven Button */
    border: 7px solid black; /* Schwarzer Rand für den aktiven Button */
}


/*.cart-methods button:hover {
    background-color: #333; /* Dunklerer Hintergrund bei Hover */
}




.button {
  background-color: var(--second-color);
  /*color: var(--white-color); */
  color: var(--button-text-color);
  font-weight: var(--font-semi-bold);
  padding: .75rem 2rem;
  border-radius: 4rem;
  box-shadow: inset var(--shadow-button);
  transition: transform 0.2s, box-shadow 0.2s;
  /* HinzugefÃ¼gt */
}

.button:hover {
  transform: translateY(-5px);
  /* HinzugefÃ¼gt */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  /* Optional fÃ¼r zusÃ¤tzlichen Effekt */
}

.button:active {
  transform: translateY(2px);
  /* HinzugefÃ¼gt */
  box-shadow: inset var(--shadow-button);
  /* Optional fÃ¼r zusÃ¤tzlichen Effekt */
}

.button__ghost {
  background-color: transparent;
  box-shadow: none;
  border: 3px solid var(--second-color);
  color: var(--white-color);
}

.button__ghost:hover {
  transform: translateY(-5px);
  /* HinzugefÃ¼gt */
}

.button__ghost:active {
  transform: translateY(2px);
  /* HinzugefÃ¼gt */
}

/*=============== KONTAKT ===============*/
.kontakt__container {
  position: relative;
  /*background-color: var(--first-color-darken);*/
  background-color: var(--first-color-darken);
  padding-top: 3.5rem;
  border-radius: 3rem;
  box-shadow: inset var(--shadow-card);
  overflow: hidden;
  color: var(--first-color-dark);
}


.kontakt__content {
  padding-top: 1rem;
  row-gap: 3rem;
}

.kontakt__data {
  text-align: center;
}

.kontakt__title {
  font: var(--font-regular) var(--h2-font-size) var(--second-font);
  margin-bottom: .5rem;
}

.kontakt__social {
  display: flex;
  justify-content: center;
  column-gap: .75rem;
}

.kontakt__social a:hover {
  transform: translateY(-5px);
  /* HinzugefÃ¼gt */
  color: hsl(0, 1%, 47%);
}

.kontakt__social a:active {
  transform: translateY(2px);
  /* HinzugefÃ¼gt */
  box-shadow: inset var(--shadow-button);
  /* Optional fÃ¼r zusÃ¤tzlichen Effekt */
}

.kontakt__social a {
  color: var(--first-color-dark);
  font-size: 1.5rem;
}


.kontakt__info {
  color: inherit;
  /* Erbt die Farbe vom Ã¼bergeordneten Element */
  text-decoration: none;
  /* Entfernt die Standard-Unterstreichung */
  font-size: inherit;
  /* Erbt die SchriftgrÃ¶Ãe vom Ã¼bergeordneten Element */
}

.kontakt__info:hover {
  text-decoration: underline;
  /* Optional: fÃ¼gt beim Hover eine Unterstreichung hinzu */
}

.kontakt__img {
  width: 200px;
  justify-self: center;
  filter: var(--shadow-img);
}

/*=============== FOOTER ===============*/
.footer {
  padding-block: 3rem 2rem;
}

.footer__container {
  row-gap: 2rem;
}

.footer__logo {
  color: var(--white-color);
  font: var(--h1-font-size) var(--second-font);
  justify-self: center;
  text-shadow: var(--shadow-text);
}

.footer__logo:hover {
  transform: translateY(-5px);
  /* HinzugefÃ¼gt */
  color: var(--second-color);
}

.footer__logo:active {
  transform: translateY(2px);
  /* HinzugefÃ¼gt */
  box-shadow: inset var(--shadow-button);
  /* Optional fÃ¼r zusÃ¤tzlichen Effekt */
}

.footer__content {
  grid-template-columns: repeat(2, max-content);
  justify-content: center;
  row-gap: 3.5rem;
}


.footer__copy {
  grid-column: 1/3;
  text-align: center;
}

.footer__link {
  color: var(--white-color);
  transition: color .4s;
}

.footer__link:hover {
  color: var(--second-color);
}


/*=============== SCROLL BAR ===============*/
::-webkit-scrollbar {
  width: .6rem;
  background-color: hsl(170, 50%, 30%);
}

::-webkit-scrollbar-thumb {
  width: .6rem;
  background-color: hsl(170, 50%, 20%);
}

::-webkit-scrollbar-thumb:hover {
  background-color: hsl(170, 50%, 15%);
}

/*=============== SCROLL UP ===============*/
.scrollup {
  position: fixed;
  right: 1rem;
  bottom: -50%;
  background-color: var(--first-color-dark);
  color: var(--white-color);
  box-shadow: inset var(--shadow-button);
  display: inline-flex;
  padding: 6px;
  font-size: 1.25rem;
  border-radius: .25rem;
  z-index: var(--z-tooltip);
  transition: bottom .4s, transform .4s;
}

.scrollup:hover {
  transform: translateY(-.5rem);
}

/* Show Scroll Up */
.show-scroll {
  bottom: 3rem;
}




/*PIZZEN*/

/* Popup-Styling */
#size-selection-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    padding: 20px;
    border-radius: 10px;
    max-width: 400px;
    width: 90%;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
    z-index: 1000;
}

#size-selection-popup h2 {
    font-size: 18px;
    margin-bottom: 10px;
    text-align: center;
}

#size-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-height: 300px;
    overflow-y: auto;
}

#size-selection-popup button {
    display: inline-block;
    padding: 10px 20px;
    margin: 10px 5px 0;
    font-size: 14px;
    cursor: pointer;
    border: none;
    border-radius: 5px;
}

#confirm-size {
    background-color: #4CAF50;
    color: white;
}

#close-size-popup {
    background-color: #f44336;
    color: white;
}

/*ZUTATEN*/


/* Verstecke das Popup und das Overlay standardmäßig */
#popup-overlay, #zutaten-popup {
    display: none;
}

#popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5); /* Halbdurchsichtiger Hintergrund */
    z-index: 999; /* Über allem anderen */
}

#zutaten-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    padding: 20px;
    border-radius: 10px;
    max-width: 400px;
    width: 90%;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
    z-index: 1000; /* Höher als das Overlay */
}

#zutaten-popup h2 {
    font-size: 18px;
    margin-bottom: 10px;
    text-align: center;
}

#zutaten-list {
    display: flex;
    flex-direction: column;
    gap: 10px; /* Platz zwischen den Checkboxen */
    max-height: 300px;
    overflow-y: auto; /* Scrollbar für den Zutatenbereich */
}

#zutaten-popup button {
    display: inline-block;
    padding: 10px 20px;
    margin: 10px 5px 0;
    font-size: 14px;
    cursor: pointer;
    border: none;
    border-radius: 5px;
}

#confirm-zutaten {
    background-color: #4CAF50; /* Grüner Bestätigungsbutton */
    color: white;
}

#close-popup {
    background-color: #f44336; /* Roter Schließenbutton */
    color: white;
}

/*=============== BREAKPOINTS ===============*/
/* For small devices */
/* vorher 520px */
@media screen and (max-width: 600px) {
	
	.message {
        font-size: 0.9em;
        margin: 0.2em 0;
    }
	.error-message {
		margin-top: 4px; /* Minimaler Abstand über den Fehlermeldungen */
		margin-bottom: 8px; /* Geringer Abstand unter den Fehlermeldungen */
	}
    .success-message {
        color: green;
    }


	button {
		margin-top: 10px; /* Weniger Abstand oberhalb des Buttons */
		margin-bottom: 10px; /* Weniger Abstand unterhalb des Buttons */
		padding: 8px 16px; /* Kleinere Button-Größe, falls gewünscht */
	}
	
    .button-group {
        margin-top: 0.5em;
    }

	#sms-send-button { /* ID oder Klasse deines Buttons */
		margin-bottom: 15px; /* Abstand unter dem Button */
	}
	
  .container {
    margin-inline: 1rem;
  }



  .section__title {
    font-size: var(--h2-font-size);
  }

  .footer__content {
    grid-template-columns: 1fr;
    justify-items: center;
    row-gap: 1.5rem;
  }

  .footer__copy {
    grid-column: 1;
  }
  
  .header {
	font: 200 0.5rem "Titan One", sans-serif;
  }
  
  /*Cart settings*/
  
  .cart-icon {
    font-size: 18px;
  }
  .cart-count {
    bottom: 75px;  
    right: 41px;   
    font-size: 10px;
  }
  
  .cart-overlay {
            position: fixed;
            top: 0.5px;
            width: 320px;
        }
      
        
		.cart-item {
        display: flex;
        flex-direction: column; /* Setzt alle Elemente untereinander */
        padding: 10px;
        margin-bottom: 10px;
        border-bottom: 1px solid #ccc; /* Optional: eine Trennlinie */
    }
	
	.cart-item-content, .cart-item-actions {
        display: flex;
        justify-content: space-between; /* Teilt den verfügbaren Platz gleichmäßig auf */
        align-items: center;
        width: 100%;
    }


		.cart-item-content {
			flex-grow: 1;
			display: flex;
			flex-direction: column;
			justify-content: center;
		}

		.cart-item h4 {
		font-size: 14px; /* Reduziere die Schriftgröße für Mobilgeräte */
        margin: 0;
        text-align: left;
        word-wrap: break-word; /* Lässt den Text automatisch umbrechen */
		}
		
		/* Buttons für Menge und Löschfunktion in einer Reihe zentrieren */
    .cart-item-actions {
        flex-direction: row; /* Setzt die Buttons in eine Reihe */
        margin-top: 10px; /* Abstand zwischen dem Text und den Buttons */
    }



		.cart-item p {
			margin: 5px 0;
			font-size: 10px;
		}

		.cart-item-actions button {
        padding: 8px 10px;
        font-size: 12px;
        margin-left: 5px; /* Abstand zwischen den Buttons */
    }
	
.quantity-buttons {
    display: flex;
    align-items: center;
    gap: 5px;
}

.quantity-buttons button {
    font-size: 16px;
    padding: 5px 10px;
}

.quantity-buttons span {
     margin: 0 5px;
    font-size: 16px;
    text-align: center;
    width: 30px;
}
		
		/* Container für alle Aktions-Buttons inklusive Papierkorb */
.cart-item-actions {
    display: flex;
    justify-content: center; /* Zentrales Ausrichten der Buttons */
    align-items: center; /* Alle Buttons und Elemente auf einer Linie halten */
    margin-top: 10px;
    gap: 15px; /* Platz zwischen Menge-Buttons und Papierkorb-Button */
}

/* Papierkorb-Button */
.cart-item-actions .delete-btn {
    font-size: 20px; /* Größe des Papierkorb-Buttons anpassen */
    margin-left: 10px; /* Abstand zwischen den Menge-Buttons und dem Papierkorb-Button */
    align-self: center; /* Vertikal ausrichten */
}
		
	 #zutaten-popup {
        width: 90%;  /* Mache das Popup schmaler auf mobilen Geräten */
        left: 50%;   /* Horizontale Zentrierung */
        top: 50%;    /* Vertikale Zentrierung */
        transform: translate(-50%, -50%); /* Exakte Zentrierung */
        z-index: 1000; /* Über andere Inhalte */
    }

    #popup-overlay {
        z-index: 999; /* Unter dem Popup */
    }
}
	
@media screen and (max-width: 600px) {
  select {
    -webkit-appearance: none; /* Entfernt das native Dropdown-Styling auf mobilen Geräten */
    -moz-appearance: none;
    appearance: none;
    font-size: 14px; /* Schriftgröße anpassen */
    padding: 10px; /* Innenabstand */
    background-color: #fff; /* Hintergrundfarbe */
    color: #000; /* Schriftfarbe auf Schwarz setzen */
    border: 1px solid #ccc; /* Rahmen */
    border-radius: 5px; /* Abgerundete Ecken */
    width: 100%; /* Breite des Dropdowns */
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1); /* Leichter Schatten */
    background-position: right 10px center; /* Position des Pfeils */
    background-size: 12px 8px; /* Größe des Icons */
  }

  /* Optional: Container um das Dropdown herum zentrieren */
  .dropdown-container {
    display: flex;
    justify-content: center; /* Horizontales Zentrieren */
    align-items: center; /* Vertikales Zentrieren */
  }


#liefertermin {
    font-family: inherit; /* Gleiche Schrift wie der Rest */
    font-size: 16px;
    color: #333;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 4px;
    width: 100%;
    box-sizing: border-box;
    transition: border-color 0.3s;
}
* Placeholder-Text styling */
#liefertermin::placeholder {
    color: #aaa;
    opacity: 1; /* Sicherstellen, dass es in allen Browsern sichtbar ist */
}

/* Hover- und Fokus-Effekte für bessere Benutzererfahrung */
#liefertermin:hover {
    border-color: #888;
}

#liefertermin:focus {
    outline: none;
    border-color: #5b9bd5;
    box-shadow: 0 0 5px rgba(91, 155, 213, 0.3);
}

.kontakt__container {
  position: relative;
  /*background-color: var(--first-color-darken);*/
  background-color: var(--first-color-darken);
  padding-top: 3.5rem;
  border-radius: 3rem;
  box-shadow: inset var(--shadow-card);
  overflow: hidden;
  color: var(--first-color-dark);
}


.kontakt__content {
  padding-top: 1rem;
  row-gap: 3rem;
}

.kontakt__data {
  text-align: center;
}

.kontakt__title {
  font: var(--font-regular) var(--h2-font-size) var(--second-font);
  margin-bottom: .5rem;
}

.kontakt__social {
  display: flex;
  justify-content: center;
  column-gap: .75rem;
}

.kontakt__social a:hover {
  transform: translateY(-5px);
  /* HinzugefÃ¼gt */
  color: hsl(0, 1%, 47%);
}

.kontakt__social a:active {
  transform: translateY(2px);
  /* HinzugefÃ¼gt */
  box-shadow: inset var(--shadow-button);
  /* Optional fÃ¼r zusÃ¤tzlichen Effekt */
}

.kontakt__social a {
  color: var(--first-color-dark);
  font-size: 1.5rem;
}


.kontakt__info {
  color: inherit;
  /* Erbt die Farbe vom Ã¼bergeordneten Element */
  text-decoration: none;
  /* Entfernt die Standard-Unterstreichung */
  font-size: inherit;
  /* Erbt die SchriftgrÃ¶Ãe vom Ã¼bergeordneten Element */
}

.kontakt__info:hover {
  text-decoration: underline;
  /* Optional: fÃ¼gt beim Hover eine Unterstreichung hinzu */
}

.kontakt__img {
  width: 200px;
  justify-self: center;
  filter: var(--shadow-img);
  margin-bottom: -30px;
  right: 1rem;
}
}
/* Popup-Stil */
.zutaten-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 400px;
    max-height: 80vh;
    overflow-y: auto;
    padding: 20px;
    background-color: white;
    border-radius: 8px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.3);
    z-index: 1000;
}

/* Tab-Buttons */
.tab-buttons {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}

.tab-button {
    flex: 1;
    padding: 8px;
    background-color: white;
    color: #604939;
    border: 2px solid #604939; 
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
    transition: background-color 0.3s, color 0.3s;
    border-radius: 5px;
    box-sizing: border-box; /* Sicherstellen, dass Border in die Breite einbezogen wird */
	    box-shadow: 0 0 0 2px #604939; /* Umrandung simuliert durch box-shadow */

}

.tab-button.active {
    background-color: #604939;
    color: white;
    border: 2px solid #604939;
}




/* Tab-Inhalte */
.tab-content {
    display: none;
}

.tab-content.active {
    display: block;
}

/* Abstände zwischen Checkboxen */
#zutaten-list div, #sossen-list div {
    margin-bottom: 8px;
}

#zutaten-list label, #sossen-list label {
    font-size: 15px;
    display: flex;
    align-items: center;
    gap: 8px; /* Abstand zwischen Checkbox und Text */
}

.scroll-hint {
    display: none; /* Standardmäßig ausgeblendet */
    text-align: center;
    color: #333;
    font-size: 14px;
    margin-top: 10px;
    margin-bottom: 10px;
    font-weight: bold;
    transition: opacity 0.3s;
}


/* Kostenanzeige */
#additional-costs {
    margin-top: 15px;
    font-size: 14px;
}

/* Button-Stil */
.button-group {
    display: flex;
    justify-content: space-between;
    margin-top: 15px;
}

.confirm-btn, .close-btn {
    padding: 10px 20px;
    font-size: 16px;
    font-weight: bold;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.confirm-btn {
    background-color: #28a745;
    color: white;
}

.confirm-btn:hover {
    background-color: #218838;
}

.close-btn {
    background-color: #dc3545;
    color: white;
}

.close-btn:hover {
    background-color: #c82333;
}


@media (min-width: 600px) {
  .anfahrt__map {
    width: 100%;
    height: 400px;
  }
  .header {
	font: 200 0.7rem "Titan One", sans-serif;
  }
  /*.cart-icon {
    font-size: 23px;
  }
  .cart-count {
    bottom: 25px;  
    right: 48px;   
    font-size: 10px;
  }*/
}

/* For medium devices */
@media screen and (min-width: 540px) {

  .kontakt {
    display: grid;
    grid-template-columns: 450px;
    justify-content: center;
  }
}

/* For large devices */
@media screen and (min-width: 1150px) {
  .container {
    margin-inline: auto;
  }

  .section {
    padding-block: 7rem 2rem;
  }

  .section__title {
    margin-bottom: 2rem;
  }

  .nav {
    height: calc(var(--header-height) + 2rem);
  }

  .nav__toggle,
  .nav__close {
    display: none;
  }

  .nav__link {
    font-size: var(--normal-font-size);
  }

  .nav__menu {
    display: flex;
    column-gap: 3rem;
    align-items: center;
  }

  .nav__list {
    flex-direction: row;
    column-gap: 4rem;
  }

  /* Kontakt-Abschnitt*/

  .kontakt {
    display: block;
  }

  .kontakt__container {
  position: relative;
  background-color: var(--first-color-darken);
  padding-top: 3.5rem;
  padding-bottom: 0;
  border-radius: 3rem;
  box-shadow: inset var(--shadow-card);
  color: var(--first-color-dark);
  overflow: hidden;
}

  .kontakt__content {
    grid-template: 330px / 360px 320px;
    justify-content: center;
    align-items: flex-start;
    column-gap: 10rem;
    padding-top: 2rem;
  }

  .kontakt__data {
    text-align: initial;
    grid-template: max-content / repeat(2, max-content);
    gap: 3rem 2rem
  }

  .kontakt__title {
    margin-bottom: .75rem;
  }

  .kontakt__social {
    justify-content: initial;
  }

  .kontakt__img {
    width: 320px;
    transform: translateY(9rem);
  }

 
  .footer {
    padding-block: 5rem 3rem;
  }

  .footer__container {
    row-gap: 3rem;
  }

  .scrollup {
    right: 3rem;
  } 
}


/*CHECKOUT-VALIDIERUNG*/
/* Fehler- und Erfolgsmeldungen */
    .message {
        font-size: 0.9em;
        margin: 0.2em 0;
    }
	.error-message {
		margin-top: 4px; /* Minimaler Abstand über den Fehlermeldungen */
		margin-bottom: 8px; /* Geringer Abstand unter den Fehlermeldungen */
	}
    .success-message {
        color: green;
    }


	button {
		margin-top: 10px; /* Weniger Abstand oberhalb des Buttons */
		margin-bottom: 10px; /* Weniger Abstand unterhalb des Buttons */
		padding: 8px 16px; /* Kleinere Button-Größe, falls gewünscht */
	}
	
    .button-group {
        margin-top: 0.5em;
    }

	#sms-send-button { /* ID oder Klasse deines Buttons */
		margin-bottom: 15px; /* Abstand unter dem Button */
	}

/* Pop-up Stil 
.pwa-popup {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.8);
    color: #fff;
    padding: 1rem;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.2);
    display: none; 
    z-index: 1000;
    text-align: center;
}

.pwa-toggle {
    position: fixed;
    bottom: 0;
    right: 1rem;
    background-color: #007bff;
    color: #fff;
    padding: 0.5rem 1rem;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    display: none; 
    z-index: 1001;
}


.pwa-popup.show {
    display: block;
}

.pwa-toggle.show {
    display: block;
}
*/

/* Advent Popup 

/* Popup Overlay 
.advent-modal {
   display: none;
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background: rgba(0, 0, 0, 0.8);
   display: flex;
   justify-content: center;
   align-items: center;
   z-index: 1000;
}

/* Popup Inhalt 
.advent-modal-content {
   background: white;
   padding: 20px;
   text-align: center;
   border-radius: 15px;
   width: 90%;
   max-width: 400px;
   position: relative;
   animation: zoomIn 0.5s ease;
   box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}

.advent-product-image {
   max-width: 100%;
   border-radius: 10px;
   margin: 10px 0;
}

.close-button {
   position: absolute;
   top: 10px;
   right: 15px;
   font-size: 24px;
   cursor: pointer;
   color: red;
}

/* Emoji Regen Container 
#emoji-container {
   pointer-events: none;
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   z-index: 999;
   overflow: hidden;
}

.emoji {
   position: absolute;
   font-size: 2em;
   animation: fall 5s linear infinite;
   will-change: transform;
}

/* Animation für Popup 
@keyframes zoomIn {
   from {
      transform: scale(0.8);
      opacity: 0;
   }
   to {
      transform: scale(1);
      opacity: 1;
   }
}

/* Animation für Emojis 
@keyframes fall {
   from {
      transform: translateY(-100%);
   }
   to {
      transform: translateY(100%);
   }
}

*/


/* EXTRA BEREICH FÜR KALENDER 

.advent-calendar {
  margin: 20px;
  text-align: center;
}
.calendar-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
}
.calendar-day {
  padding: 20px;
  text-align: center;
  border: 2px solid #ff4500;
  border-radius: 10px;
  cursor: pointer;
  background-color: #fff;
  color: #000;
}
.calendar-day.past {
  background-color: #ddd;
  color: #999;
  cursor: not-allowed;
}
.calendar-day.current {
  background-color: #ffcc00;
  font-weight: bold;
}
.calendar-day:hover {
  background-color: #ff4500;
  color: #fff;
}
*/

/*CSS FÜR DIE PRODUKTKACHEL DES PRODUKTS IM ANGEBOT

.advent-highlight {
  border: 3px solid #ff4500;
  background: url("images/holiday-bg.png");
  background-size: cover;
  padding: 10px;
  color: white;
}

*/

.highlight-price {
  color: #999 !important;
  text-decoration: line-through !important;
}

.original-price {
  color: #d9534f !important;
  font-weight: bold !important;
  font-size: 1.5em !important;
  animation: pulse 1s infinite alternate !important;
}


@keyframes pulse {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.1);
    }
}

@media (max-width: 768px) {
  .highlight-price {
    color: #999 !important;
  }
  .original-price {
    color: #d9534f !important;
  }
}

/*Style aus Index.php ausgelagert*/

		.confirmation-message {
			position: fixed;
			top: 10%;
			left: 50%;
			width: 340px; /* Breite festlegen */
			transform: translate(-50%, -50%);
			padding: 12px 24px;
			background-color: #fff; /* Weiss */
			color: #5A3E2B; /* Dunkles Braun für Kontrast */
			border-radius: 8px;
			font-size: 16px;
			font-weight: bold;
			box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.15);
			z-index: 5000;
		}

		.confirmation-message .close-btn {
			position: absolute;
			top: -12px;
			right: -5px;
			cursor: pointer;
			font-weight: bold;
			color: #D97706; /* Passendes Orange */
			background: none;
			border: none;
			font-size: 25px;
			transition: color 0.8s ease-in-out;
		}

		.confirmation-message .close-btn:hover {
			color: #A35604; /* Dunkleres Orange für Hover-Effekt */
		}


		
		 /* Stil für das Bestätigungsmodal */
		#confirmationModal.confirmation-modal {
			display: none;
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			background: rgba(0, 0, 0, 0.5);
			justify-content: center;
			align-items: center;
			z-index: 5000;
		}

		#confirmationModal .confirmation-modal-content {
			background-color: #fff;
			padding: 20px;
			border-radius: 8px;
			text-align: center;
			width: 300px;
			box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
		}

		#confirmationModal .confirmation-modal-header {
			font-size: 18px;
			margin-bottom: 15px;
			font-weight: bold;
		}

		#confirmationModal .confirmation-modal-buttons {
			display: flex;
			justify-content: space-around;
			margin-top: 20px;
		}

		#confirmationModal .confirmation-modal-button {
			padding: 8px 15px;
			border: none;
			border-radius: 5px;
			cursor: pointer;
			font-size: 14px;
			transition: background-color 0.3s;
		}

		#confirmationModal .confirmation-modal-button.confirm {
			background-color: #4CAF50;
			color: white;
		}

		#confirmationModal .confirmation-modal-button.confirm:hover {
			background-color: #45a049;
		}

		#confirmationModal .confirmation-modal-button.cancel {
			background-color: #f44336;
			color: white;
		}

		#confirmationModal .confirmation-modal-button.cancel:hover {
			background-color: #e53935;
		}
		
		/*Dropdown*/
		.product-dropdown {
			bottom: 0;
			width: 100%;
		}

		.product-dropdown label {
			display: block;
			font-weight: bold;
			margin-bottom: 5px;
		}

		.product-dropdown select {
			width: 100%;
			padding: 10px 20px;
			background-color: #FF9800; /* Gleiche Hintergrundfarbe wie Button im geschlossenen Zustand */
			color: #fff;
			border: none;
			border-radius: 5px;
			font-size: 16px;
			cursor: pointer;
			transition: background-color 0.3s ease; /* Sanfter Übergang */
		}

		/* Hintergrundfarbe ändern, wenn das Dropdown geöffnet ist */
		.product-dropdown select:focus {
			background-color: #fff;
			color: #000; /* Textfarbe ändern, wenn geöffnet */
			border: 1px solid #FF9800; /* Optional: Rand hinzufügen beim Öffnen */
		}
		
		/* Overlay Hintergrund */
		/* Für geschlossen Meldung */
		.popup-overlay {
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			background: rgba(0, 0, 0, 0.5);
			display: flex;
			justify-content: center;
			align-items: center;
			z-index: 999;
		}

		/* Popup-Inhalt */
		.popup-content {
			background-color: #fff;
			padding: 20px;
			width: 300px;
			text-align: center;
			border-radius: 8px;
			box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
		}

		.popup-content h3 {
			margin: 0 0 10px;
			font-size: 1.5em;
			color: #333;
		}

		.popup-content p {
			font-size: 1em;
			color: #555;
			margin-bottom: 20px;
		}

		.popup-content button {
			padding: 10px 20px;
			background-color: #007BFF;
			color: #fff;
			border: none;
			border-radius: 4px;
			cursor: pointer;
			font-size: 1em;
		}

		.popup-content button:hover {
			background-color: #0056b3;
		}
		
		#place-now {
            background-color: gray; 
            color: white;
            cursor: not-allowed;
        }
        #place-now.active {
            background-color: green; 
            cursor: pointer;
        }
			
		
		
@media (max-width: 768px) {

.cart-icon {
        display: none; /* Verstecke den oberen Warenkorb */
    }
.header .cart-count {
	display: none;
}

#pwa-popup {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    max-width: 320px;
    background-color: #ffffff; 
    color: #000000; /* Schwarzer Text */
    border: 2px solid #d3d3d3; 
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    display: none;
    text-align: left; /* Links ausgerichtet */
    font-family: Arial, sans-serif;
    z-index: 10000;
}

#pwa-popup p {
    font-size: 16px;
    margin-bottom: 10px;
    color: #000000; 
    text-align: left; /* Links ausgerichtet */
}

#pwa-popup ul {
    list-style: none;
    padding: 0;
    font-size: 14px;
    color: #000000; 
    text-align: left; /* Links ausgerichtet */
}

#pwa-popup li {
    margin-bottom: 8px;
    color: #000000; 
    text-align: left; /* Links ausgerichtet */
}

#pwa-popup ol {
    list-style-type: decimal;
    padding-left: 20px; /* Einrückung der nummerierten Punkte */
    margin: 0;
    font-size: 14px;
    text-align: left; /* Links ausgerichtet */
}

#pwa-popup ol li {
    margin-bottom: 8px;
    display: flex;
    align-items: center; /* Icons und Text vertikal zentriert */
    color: #000000; 
}

#pwa-popup ol li img {
    margin-right: 8px; /* Abstand zwischen Icon und Text */
}

#pwa-popup u {
    display: inline-block; /* Damit die Unterstreichung korrekt funktioniert */
    margin-bottom: 10px; /* Platz unter der Überschrift */
    font-size: 18px; /* Optional: Schriftgröße anpassen */
    font-weight: bold; /* Optional: Fettschrift */
}

#pwa-popup button {
    background-color: #ffffff; 
    color: #000000; 
    border: 1px solid #000000; 
    padding: 8px 16px;
    border-radius: 8px;
    cursor: pointer;
    margin-top: 15px;
    font-size: 14px;
}

#pwa-toggle-button {
    position: fixed;
    bottom: 85px;
    right: 20px;
    background-color: #ffffff; 
    color: #000000; 
    border: none;
    padding: 10px 20px;
    border-radius: 20px;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    display: none;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    z-index: 1; /* Lege den z-index niedriger als den des Warenkorbs fest */
}

#pwa-popup button:hover,
#pwa-toggle-button:hover {
    background-color: #d3d3d3; 
}

	.cart-overlay {
    z-index: 2000; /* Setze einen hohen z-index-Wert, damit der Warenkorb über dem "App"-Button liegt */
}
.checkout-overlay {
	z-index: 3000;
}

	#zutaten-popup{
	z-index: 3000;
}

	#size-selection-popup{
		z-index: 3000;
}



/* Fixierte Warenkorb-Leiste */
.fixed-cart-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 10px 0;
    z-index: 1000;
    display: flex;
    justify-content: center;
}

/* Warenkorb-Button */
.view-cart-button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #fff;
    color: #000;
    padding: 10px 20px;
    border: none;
    border-radius: 25px;
    cursor: pointer;
    font-size: 1rem;
    font-weight: bold;
    width: 90%;
    max-width: 400px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
}

/* Warenkorb-Button Hover */
.view-cart-button:hover {
    background-color: #e55a00;
}

/* Warenkorb-Icon Container */
.cart-icon-container {
    display: flex;
    align-items: center;
    position: relative;
    margin-right: 10px;
}

.cart-icon-container i {
    font-size: 1.5rem; /* Größe des Warenkorb-Icons */
}

/* Warenkorb-Zähler-Badge */
.cart-count-badge {
    position: absolute;
    top: -9px;
    right: -10px;
    background-color: #ff0000;
    color: #fff;
    font-size: 0.8rem;
    font-weight: bold;
    padding: 2px 6px;
    border-radius: 50%;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* Text-Container für Button */
.cart-text-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 2px;
}

.cart-text-container span:first-child {
    font-size: 0.9rem;
}

.cart-text-container span:last-child {
    font-size: 1.1rem;
    font-weight: bold;
}
.fixed-cart-bar {
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.fixed-cart-bar.hidden {
    opacity: 0;
    visibility: hidden;
}
}

/*
#loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.9);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

.spinner {
  width: 60px;
  height: 60px;
  border: 6px solid #ccc;
  border-top: 6px solid #007bff;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

#loader p {
  margin-top: 20px;
  font-size: 1.2em;
  color: #333;
}
*/

/*Code für Öffnungszeiten*/
/* Clock Modal-Design */
.clock-modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4); /* Dunkler Hintergrund */
}

.clock-modal-content {
  position: fixed;
  bottom: 80px; /* Standard für mobile Geräte */
  left: 20px;
  right: 20px;
  width: auto; /* Vollbreite für mobile Geräte */
  max-width: 400px; /* Begrenze die Breite für größere Bildschirme */
  background-color: #fff;
  padding: 20px;
  border-radius: 12px 12px 0 0; /* Abgerundete Ecken oben */
  box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.2);
  transform: translateY(100%); /* Verstecke es initial außerhalb des Bildschirms */
  animation: slide-up 0.4s forwards;
}

/* Slide-Up Animation */
@keyframes slide-up {
  from {
    transform: translateY(100%); /* Startpunkt: Unterhalb des Bildschirms */
  }
  to {
    transform: translateY(0); /* Endpunkt: Sichtbar */
  }
}

.clock-close-btn {
  float: right;
  font-size: 1.5em;
  cursor: pointer;
}

#clock-opening-times-table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
}

#clock-opening-times-table th,
#clock-opening-times-table td {
  padding: 8px;
  border-bottom: 1px solid #ddd;
}

#clock-opening-times-table .highlight {
  font-weight: bold;
  background-color: #f0f8ff;
}

/* Für Laptops: Modal zentral positionieren */
@media (min-width: 768px) {
  .clock-modal-content {
    position: fixed; /* statt absolute, um es bezogen auf den Viewport zu positionieren */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    
    /* Überschreibungen/Entfernen der mobilen Eigenschaften */
    bottom: auto;    /* damit „bottom: 0“ aus dem Mobile-Teil nicht mehr greift */
    width: 80%;
    max-width: 600px;
    border-radius: 12px;
    animation: none; /* keine Slide-up-Animation am Desktop */
  }
  
  .header-buttons {
	display: flex; /* Flexbox für nebeneinanderliegende Elemente */
	justify-content: center; /* Zentriert die Buttons horizontal */
	align-items: center; /* Zentriert die Buttons vertikal */
	gap: 20px; /* Abstand zwischen den Buttons */
	margin-top: 10px; /* Abstand nach oben */
	}

	#clock, #allergy-info-btn {
		background-color: white; /* Einheitliches Schwarz für beide Buttons */
		color: black; /* Weiße Schrift */
		border: none; /* Kein Rahmen */
		padding: 10px 20px; /* Angenehmer Innenabstand */
		border-radius: 5px; /* Abgerundete Ecken */
		font-size: 14px; /* Einheitliche Schriftgröße */
		cursor: pointer; /* Hand-Cursor bei Hover */
		transition: transform 0.2s ease, background-color 0.3s ease; /* Animation bei Hover */
		width: 150px; /* Einheitliche Breite für beide Buttons */
		text-align: center; /* Zentriert den Text im Button */
	}

	#clock:hover, #allergy-info-btn:hover {
		background-color: #81C784; /* Hover-Farbe: Blau */
		transform: scale(1.05); /* Leichte Vergrößerung bei Hover */
	}
}

/* Für Laptops: Modal zentral positionieren */
@media (max-width: 768px) {

  .header-buttons {
	display: none; /* Flexbox für nebeneinanderliegende Elemente */
  }
}



/* showOrdersPopup */
/* ===============  EINHEITLICHES ORDERS-POPUP  =============== */

.orders-popup {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: #2d2d2d;
    color: white;
    overflow-y: auto;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    transform: translateX(100%); /* Standardmäßig versteckt */
    transition: transform 0.5s ease;
    z-index: 3000;
}

/* Sichtbar-Machen */
.orders-popup--visible {
    transform: translateX(0);
}

/* Schließen-Button */
.orders-popup__close-btn {
    align-self: flex-end;
    padding: 12px 18px;
    background-color: #e74c3c;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 1em;
    transition: background 0.3s ease;
}

.orders-popup__close-btn:hover {
    background-color: #c0392b;
}

/* ===============  EINHEITLICHES ORDERS-POPUP  =============== */

.orders-popup {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: #2d2d2d;
    color: white;
    overflow-y: auto;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    transform: translateX(100%); /* Standardmäßig versteckt */
    transition: transform 0.5s ease;
    z-index: 3000;
}

/* Sichtbar-Machen */
.orders-popup--visible {
    transform: translateX(0);
}

/* Schließen-Button */
.orders-popup__close-btn {
    align-self: flex-end;
    padding: 12px 18px;
    background-color: #e74c3c;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 1em;
    transition: background 0.3s ease;
}

.orders-popup__close-btn:hover {
    background-color: #c0392b;
}

/* =========== EINHEITLICHE ORDER-ELEMENTE ============= */

/* Order-Eintrag */
.orders-popup__order-item {
    background: #fff;
    color: #333;
    padding: 20px;
    margin: 15px;
    border-radius: 12px;
    width: 90%;
    max-width: 400px;
    text-align: center;
    box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.25);
    position: relative;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.orders-popup__order-item:hover {
    transform: translateY(-5px);
    box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.3);
}

/* Order-Titel */
.orders-popup__order-title {
    font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 10px;
}

/* Order-Beschreibung */
.orders-popup__order-details {
    font-size: 1em;
    color: #555;
}

/* Order-Buttons */
.orders-popup__order-btn {
    margin-top: 10px;
    padding: 10px 15px;
    background-color: #3498db;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 1em;
    transition: background 0.3s ease;
}

.orders-popup__order-btn:hover {
    background-color: #2980b9;
}

/*Effekte für Status der Order*/
.status-pending {
    color: orange;
    font-weight: bold;
    animation: blink 1s infinite alternate;
}

@keyframes blink {
    from { opacity: 1; }
    to { opacity: 0.5; }
}

.status-approved {
    color: green;
    font-weight: bold;
}

.status-canceled {
    color: red;
    font-weight: bold;
    text-decoration: line-through;
}


/*ENDE


/*showProfilePopup

.profiles-popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.8);
    color: white;
    overflow-y: auto;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}*/

/* =============== EINHEITLICHES PROFILE-POPUP =============== */

.profiles-popup {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: #2d2d2d;
    color: white;
    overflow-y: auto;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    transform: translateX(100%);
    transition: transform 0.5s ease;
    z-index: 3000;
}

/* Sichtbar-Machen */
.profiles-popup--visible {
    transform: translateX(0);
}

/* Schließen-Button */
.profiles-popup__close-btn {
    align-self: flex-end;
    padding: 10px 16px;
    background-color: #e74c3c;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 1em;
    transition: background 0.3s ease;
}

.profiles-popup__close-btn:hover {
    background-color: #c0392b;
}

/* Profil-Einträge */
.profiles-popup__profile-item {
    background: #f8f8f8;
    color: #333;
    padding: 16px;
    margin: 12px;
    border-radius: 10px;
    width: 90%;
    max-width: 380px;
    text-align: left;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
    position: relative;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.profiles-popup__profile-item:hover {
    transform: translateY(-3px);
    box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.2);
}

/* Profil-Details */
.profiles-popup__details {
    font-size: 1em;
    color: #444;
    line-height: 1.5;
}

/* Dezente Trennung */
.profiles-popup__separator {
    border-top: 1px solid #ddd;
    margin: 10px 0;
}

/* Design für Punkte */
.profiles-popup__punkte {
    text-align: center;
    font-weight: bold;
    margin-top: 12px;
}


.punkte-text {
    font-size: 2em;
    font-weight: bold;
    background: linear-gradient(45deg, #FFD700, #FFA500);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
    animation: scaleEffect 1.5s infinite alternate ease-in-out;
}

@keyframes scaleEffect {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(1.1);
    }
}




/* Bearbeiten-Icon */
.edit-icon {
    margin-left: 10px;
    font-size: 1.2em;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.edit-icon:hover {
    transform: scale(1.2);
}

/* Adresse bearbeiten */
.adresse-input {
    width: 80%;
    padding: 8px;
    margin-top: 5px;
    border: 1px solid #ccc;
    border-radius: 6px;
}

/* Speichern-Button */
.adresse-save-btn {
    margin-top: 10px;
    padding: 8px 15px;
    background-color: #27ae60;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.3s ease;
}

.adresse-save-btn:hover {
    background-color: #2ecc71;
}

/* Erfolgreiche Speicherung */
.custom-success-message {
    margin-top: 15px;
    padding: 10px;
    background-color: #27ae60;
    color: white;
    border-radius: 6px;
    font-weight: bold;
    animation: fadeIn 0.5s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}



/*ENDE

/* showOffersPopup */
/* Basis-Stile für das Angebote-Popup 
.offers-popup {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: #2d2d2d;
    color: white;
    overflow-y: auto;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    transform: translateX(100%);
    transition: transform 0.5s ease;
    z-index: 9999;
}

/* Sichtbarer Zustand 
.offers-popup--visible {
    transform: translateX(0);
}

/* Close-Button 
.offers-popup__close-btn {
    margin-bottom: 20px;
    padding: 10px 20px;
    cursor: pointer;
}

/* Einzelner Angebots-Eintrag 
.offers-popup__offer-item {
    background: #333;
    padding: 15px;
    margin: 15px;
    border-radius: 10px;
    width: 90%;
    text-align: center;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
    position: relative;
}

/* Bild im Angebots-Eintrag 
.offers-popup__offer-img {
    width: 150px;
    height: 150px;
    border-radius: 10px;
    object-fit: cover;
}

/* Fortschrittsbalken 
.offers-popup__progress {
    width: 100%;
    border-radius: 10px;
}

/* Button zum Einlösen 
.offers-popup__redeem-btn {
    margin-top: 15px;
    padding: 10px 20px;
    background-color: #f39c12;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}*/

/* Global Styles 
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Poppins', sans-serif;
    line-height: 1.6;
    background: linear-gradient(135deg, #a6c0fe, #f68084);
    color: #333;
}*/

/* Angebote Popup */
.offers-popup {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #ff8d00 0%, #dd4700 100%);
    color: white;
    overflow-y: auto;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    transform: translateX(100%);
    transition: transform 0.5s ease;
    z-index: 3000;
}


.offers-popup--visible {
    transform: translateX(0);
}

/* Close-Button */
.offers-popup__close-btn {
    align-self: flex-end;
    padding: 12px 18px;
    background-color: #ad1000;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 1em;
    transition: background 0.3s ease;
}

.offers-popup__close-btn:hover {
    background-color: #c0392b;
}

/* Angebots-Eintrag */
.offers-popup__offer-item {
    background: #fff;
    color: #333;
    padding: 20px;
    margin: 15px;
    border-radius: 12px;
    width: 90%;
    max-width: 400px;
    text-align: center;
    box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.25);
    position: relative;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.offers-popup__offer-item:hover {
    transform: translateY(-5px);
    box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.3);
}

/* Angebots-Bild */
.offers-popup__offer-img {
    width: 100%;
    height: 200px;
    border-radius: 12px;
    object-fit: cover;
    margin-bottom: 15px;
    transition: transform 0.3s ease;
}

.offers-popup__offer-item:hover .offers-popup__offer-img {
    transform: scale(1.05);
}

/* Fortschrittsbalken */
.offers-popup__progress {
    width: 100%;
    height: 12px;
    border-radius: 6px;
    background: #ecf0f1;
    border: 2px solid black;
}

/* Fortschrittsbalken */
.offers-popup__progress {
    width: 100%;
    height: 15px;
    border-radius: 6px;
    background: #ecf0f1;
    border: 2px solid #2c3e50;
    overflow: hidden;
}

.offers-popup__progress::-webkit-progress-bar {
    background-color: #ecf0f1;
    border-radius: 6px;
}

.offers-popup__progress::-webkit-progress-value {
    background: linear-gradient(90deg, #3498db, #2ecc71);
    border-radius: 6px;
    transition: width 0.5s ease-in-out;
}

.offers-popup__progress::-moz-progress-bar {
    background: linear-gradient(90deg, #3498db, #2ecc71);
    border-radius: 6px;
    transition: width 0.5s ease-in-out;
}


/* Einlösen-Button */
.offers-popup__redeem-btn {
    margin-top: 15px;
    padding: 12px 18px;
    background-color: #f39c12;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 1.1em;
    transition: background 0.3s ease;
}

.offers-popup__redeem-btn:hover {
    background-color: #d68910;
}


/* Schloss-Icon (kann auch zentral genutzt werden) */
.schloss-icon {
    position: absolute;
    top: 10px;
    right: 10px;
    height: 30px;
}
/*ENDE

/* showConfirmRedeemPopup */
/* Basis-Stile für das Bestätigungs-Popup */
/*
.confirm-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 20px;
    background-color: rgba(0, 0, 0, 0.9);
    color: white;
    border-radius: 10px;
    text-align: center;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.4);
	z-index: 4000;
}

// Optional: Abstand unterhalb der Nachricht 
.confirm-popup__message {
    margin-bottom: 20px;
}

// Gemeinsame Button-Stile 
.confirm-popup__button {
    margin: 10px;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

// Bestätigungs-Button (grün) 
.confirm-popup__confirm-btn {
    background-color: #27ae60;
    color: white;
}

// Abbrechen-Button (rot) 
.confirm-popup__cancel-btn {
    background-color: #e74c3c;
    color: white;
}*/

/* Modernes Confirm-Popup */
.confirm-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.9);
    width: 90%;
    max-width: 400px;
    padding: 25px;
    background: rgba(0, 0, 0, 0.7); /* Dunkler Hintergrund */;
    backdrop-filter: blur(12px);
    border-radius: 15px;
    text-align: center;
    box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.3);
    z-index: 4000;
    opacity: 0;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

/* Sichtbar-Machen mit Animation */
.confirm-popup--visible {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

/* Nachricht */
.confirm-popup__message {
    font-size: 1.2em;
    font-weight: bold;
    color: white;
    margin-bottom: 20px;
}

/* Button-Container */
.confirm-popup__buttons {
    display: flex;
    justify-content: center;
    gap: 15px;
}

/* Gemeinsame Button-Stile */
.confirm-popup__button {
    padding: 12px 18px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    font-size: 1em;
    font-weight: bold;
    transition: all 0.3s ease;
}

/* Bestätigungs-Button (grün) */
.confirm-popup__confirm-btn {
    background: linear-gradient(135deg, #27ae60, #2ecc71);
    color: white;
    box-shadow: 0px 4px 8px rgba(39, 174, 96, 0.3);
}

.confirm-popup__confirm-btn:hover {
    background: linear-gradient(135deg, #2ecc71, #27ae60);
    transform: scale(1.05);
}

/* Abbrechen-Button (rot) */
.confirm-popup__cancel-btn {
    background: linear-gradient(135deg, #e74c3c, #c0392b);
    color: white;
    box-shadow: 0px 4px 8px rgba(231, 76, 60, 0.3);
}

.confirm-popup__cancel-btn:hover {
    background: linear-gradient(135deg, #c0392b, #e74c3c);
    transform: scale(1.05);
}


/*Style für login und register*/

/* Allgemeines Styling für Login- und Registrierungs-Pop-ups */
/*
#login-popup,
#register-popup {
    display: none; 
    position: fixed;
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%;
    background: rgba(0, 0, 0, 0.5); 
    z-index: 1000;
    justify-content: center;
    align-items: center;
}

#login-popup .popup-content,
#register-popup .popup-content {
    background: #fff;
    width: 90%;
    max-width: 400px;
    padding: 20px;
    border-radius: 8px;
    text-align: center;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
    position: relative;
    animation: fadeIn 0.3s ease-in-out;
}


#login-popup .close,
#register-popup .close {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 22px;
    cursor: pointer;
    color: #555;
}

#login-popup .close:hover,
#register-popup .close:hover {
    color: #000;
}


#login-popup h2,
#register-popup h2 {
    color: #333;
    margin-bottom: 20px;
}

#login-popup form input,
#register-popup form input {
    width: 100%;
    padding: 12px;
    margin: 8px 0;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 16px;
}

#login-popup form input:focus,
#register-popup form input:focus {
    border-color: #007bff;
    outline: none;
}


#login-popup button,
#register-popup button,
#login-popup input[type="submit"],
#register-popup input[type="submit"] {
    width: 100%;
    padding: 12px;
    border: none;
    border-radius: 5px;
    background: #007bff;
    color: white;
    font-size: 16px;
    cursor: pointer;
    margin-top: 10px;
    transition: 0.3s;
}

#login-popup button:hover,
#register-popup button:hover,
#login-popup input[type="submit"]:hover,
#register-popup input[type="submit"]:hover {
    background: #0056b3;
}


#login-popup .message,
#register-popup .message {
    font-size: 14px;
    margin: 10px 0;
    padding: 10px;
    border-radius: 5px;
}

#login-popup .error-message,
#register-popup .error-message {
    color: #d9534f;
    background: #f2dede;
    border: 1px solid #d9534f;
}

#login-popup .success-message,
#register-popup .success-message {
    color: #28a745;
    background: #d4edda;
    border: 1px solid #28a745;
}

/
#login-popup p,
#register-popup p {
    font-size: 14px;
    margin-top: 15px;
}

#login-popup a,
#register-popup a {
    color: #007bff;
    text-decoration: none;
}

#login-popup a:hover,
#register-popup a:hover {
    text-decoration: underline;
}


@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


@media (max-width: 500px) {
    #login-popup .popup-content,
    #register-popup .popup-content {
        max-width: 90%;
        padding: 15px;
    }
}*/

/* Styling für das User-Icon */
.user-icon {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 40px; /* Größe anpassen */
    height: 40px;
    cursor: pointer;
}

.menu-button {
    position: fixed;
    top: 15px;
    left: 15px;
    background: none;
    border: 2px solid white;
    color: white;
    font-size: 18px;
    font-weight: bold;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
    transition: 0.3s ease-in-out;
}

.menu-button:hover {
    background: rgba(255, 255, 255, 0.2);
    color: #ddd;
}


/* User-Icon bei max-width: 768px ausblenden */
@media (max-width: 768px) {
    .user-icon {
        display: none;
    }
	.menu-button {
        display: none;
    }
}


/*Aus Index media anpassung und login/reg*/
@media (max-width: 769px) {		
		.cart-overlay {
		z-index: 2000; /* Setze einen hohen z-index-Wert, damit der Warenkorb über dem "App"-Button liegt */
		}
		.checkout-overlay {
			z-index: 3000;
		}

			#zutaten-popup{
			z-index: 15000;
		}

			#size-selection-popup{
				z-index: 3000;
		}



		/* Allgemeines Styling für Login- und Registrierungs-Pop-ups */
		#login-popup,
		#register-popup {
			display: none;
			position: fixed;
			top: 0;
			left: 0;
			width: 100vw; /* Volle Bildschirmbreite */
			height: 100vh; /* Volle Bildschirmhöhe */
			/*background: rgba(0, 0, 0, 0.6);*/
			background: #fff;
			z-index: 4000;
			display: flex;
			justify-content: center;
			align-items: center;
			overflow-y: auto; /* Ermöglicht Scrollen, wenn nötig */
		}

		/* Pop-up Inhalt soll maximal die Bildschirmhöhe nutzen */
		#login-popup .popup-content,
		#register-popup .popup-content {
			background: #fff;
			width: 90%;
			max-width: 400px;
			padding: 20px;
			border-radius: 8px;
			text-align: center;
			box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
			position: relative;
			animation: fadeIn 0.3s ease-in-out;
			max-height: 90vh; /* Begrenzung der maximalen Höhe */
			overflow-y: auto; /* Falls der Inhalt zu lang ist */
		}

		/* Schließen-Button */
		#login-popup .close,
		#register-popup .close {
			position: absolute;
			top: 10px;
			right: 15px;
			font-size: 22px;
			cursor: pointer;
			color: #555;
		}

		#login-popup .close:hover,
		#register-popup .close:hover {
			color: #000;
		}

		/* Verhindert, dass der Hintergrund scrollt, wenn das Pop-up geöffnet ist */
		body.popup-open {
			overflow: hidden;
		}

		/* Formularelemente */
		#login-popup h2,
		#register-popup h2 {
			color: #333;
			margin-bottom: 20px;
		}

		#login-popup form input,
		#register-popup form input {
			width: 90%;
			padding: 12px;
			margin: 8px 0;
			border: 1px solid #ddd;
			border-radius: 5px;
			font-size: 16px;
		}

		#login-popup form input:focus,
		#register-popup form input:focus {
			border-color: #007bff;
			outline: none;
		}

		/* Buttons */
		#login-popup button,
		#register-popup button,
		#login-popup input[type="submit"],
		#register-popup input[type="submit"] {
			width: 90%;
			padding: 12px;
			border: none;
			border-radius: 5px;
			/*background: #007bff;*/
			color: white;
			font-size: 16px;
			cursor: pointer;
			margin-top: 10px;
			transition: 0.3s;
		}

		#login-popup button:hover,
		#register-popup button:hover,
		#login-popup input[type="submit"]:hover,
		#register-popup input[type="submit"]:hover {
			background: #0056b3;
		}

		/* Fehlermeldungen */
		#login-popup .message,
		#register-popup .message {
			font-size: 14px;
			margin: 10px 0;
			padding: 10px;
			border-radius: 5px;
		}

		#login-popup .error-message,
		#register-popup .error-message {
			color: #d9534f;
			background: #f2dede;
			border: 1px solid #d9534f;
		}

		#login-popup .success-message,
		#register-popup .success-message {
			color: #28a745;
			background: #d4edda;
			border: 1px solid #28a745;
		}

		/* Link für den Wechsel zwischen Login & Registrierung */
		#login-popup p,
		#register-popup p {
			font-size: 14px;
			margin-top: 15px;
		}

		#login-popup a,
		#register-popup a {
			color: #007bff;
			text-decoration: none;
		}

		#login-popup a:hover,
		#register-popup a:hover {
			text-decoration: underline;
		}

		#login-popup form input,
		#register-popup form input,
		#login-popup button,
		#register-popup button,
		#login-popup input[type="submit"],
		#register-popup input[type="submit"] {
			width: 90%;
			margin: 8px auto; /* Sorgt für zentrierte Elemente mit Abstand */
			display: block; /* Stellt sicher, dass das Element die volle Breite nutzt */
		}


		/* Animation */
		@keyframes fadeIn {
			from {
				opacity: 0;
				transform: translateY(-20px);
			}
			to {
				opacity: 1;
				transform: translateY(0);
			}
		}

		/* Menü-Button oben rechts */
		#menu-btn {
			position: fixed;
			top: 0px;
			right: 15px;
			font-size: 30px;
			color: white;
			padding: 10px 15px;
			cursor: pointer;
			border-radius: 50px;
			z-index: 1001;
		}
	}

	/* Mobile Anpassung: Pop-up soll fast die ganze Breite einnehmen */
	@media (max-width: 770px) {
		#login-popup .popup-content,
		#register-popup .popup-content {
			width: 100%; /* Volle Breite */
			max-width: none; /* Keine Begrenzung */
			height: 100vh; /* Volle Höhe */
			max-height: none; /* Keine Begrenzung */
			border-radius: 0; /* Keine Ecken, damit es aussieht wie eine eigene Seite */
		}
	}
	
	
	
	@media (min-width: 768px) {
		/* Allgemeines Styling für Login- und Registrierungs-Pop-ups */
		#login-popup,
		#register-popup {
			display: none;
			position: fixed;
			top: 0;
			left: 0;
			width: 100vw; /* Volle Bildschirmbreite */
			height: 100vh; /* Volle Bildschirmhöhe */
			background: rgba(0, 0, 0, 0.6);
			z-index: 4000;
			display: flex;
			justify-content: center;
			align-items: center;
			overflow-y: auto; /* Ermöglicht Scrollen, wenn nötig */
		}

		/* Pop-up Inhalt soll maximal die Bildschirmhöhe nutzen */
		#login-popup .popup-content,
		#register-popup .popup-content {
			background: #fff;
			width: 100%;
			top: 10%;
			left: 35%;
			max-width: 400px;
			padding: 20px;
			border-radius: 8px;
			text-align: center;
			box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
			position: relative;
			animation: fadeIn 0.3s ease-in-out;
			max-height: 90vh; /* Begrenzung der maximalen Höhe */
			overflow-y: auto; /* Falls der Inhalt zu lang ist */
		}

		/* Schließen-Button */
		#login-popup .close,
		#register-popup .close {
			position: absolute;
			top: 10px;
			right: 15px;
			font-size: 22px;
			cursor: pointer;
			color: #555;
		}

		#login-popup .close:hover,
		#register-popup .close:hover {
			color: #000;
		}

		/* Verhindert, dass der Hintergrund scrollt, wenn das Pop-up geöffnet ist */
		body.popup-open {
			overflow: hidden;
		}

		/* Formularelemente */
		#login-popup h2,
		#register-popup h2 {
			color: #333;
			margin-bottom: 20px;
		}

		#login-popup form input,
		#register-popup form input {
			width: 90%;
			padding: 12px;
			margin: 8px 0;
			border: 1px solid #ddd;
			border-radius: 5px;
			font-size: 16px;
		}

		#login-popup form input:focus,
		#register-popup form input:focus {
			border-color: #007bff;
			outline: none;
		}

		/* Buttons */
		#login-popup button,
		#register-popup button,
		#login-popup input[type="submit"],
		#register-popup input[type="submit"] {
			width: 90%;
			padding: 12px;
			border: none;
			border-radius: 5px;
			/*background: #007bff;*/
			color: white;
			font-size: 16px;
			cursor: pointer;
			margin-top: 10px;
			transition: 0.3s;
		}

		#login-popup button:hover,
		#register-popup button:hover,
		#login-popup input[type="submit"]:hover,
		#register-popup input[type="submit"]:hover {
			background: #0056b3;
		}

		/* Fehlermeldungen */
		#login-popup .message,
		#register-popup .message {
			font-size: 14px;
			margin: 10px 0;
			padding: 10px;
			border-radius: 5px;
		}

		#login-popup .error-message,
		#register-popup .error-message {
			color: #d9534f;
			background: #f2dede;
			border: 1px solid #d9534f;
		}

		#login-popup .success-message,
		#register-popup .success-message {
			color: #28a745;
			background: #d4edda;
			border: 1px solid #28a745;
		}

		/* Link für den Wechsel zwischen Login & Registrierung */
		#login-popup p,
		#register-popup p {
			font-size: 14px;
			margin-top: 15px;
		}

		#login-popup a,
		#register-popup a {
			color: #007bff;
			text-decoration: none;
		}

		#login-popup a:hover,
		#register-popup a:hover {
			text-decoration: underline;
		}

		#login-popup form input,
		#register-popup form input,
		#login-popup button,
		#register-popup button,
		#login-popup input[type="submit"],
		#register-popup input[type="submit"] {
			width: 90%;
			margin: 8px auto; /* Sorgt für zentrierte Elemente mit Abstand */
			display: block; /* Stellt sicher, dass das Element die volle Breite nutzt */
		}


		/* Animation */
		@keyframes fadeIn {
			from {
				opacity: 0;
				transform: translateY(-20px);
			}
			to {
				opacity: 1;
				transform: translateY(0);
			}
		}
	}
	
	/* Sidebar-Styling */
		#sidebar {
			position: fixed;
			top: 0;
			left: -5000px; /* Startposition außerhalb des Bildschirms */
			width: 100%;
			height: 100%;
			background: #222;
			color: white;
			transition: 0.3s;
			z-index: 3000;
			padding-top: 60px;
		}

		/* Sidebar aktiv */
		#sidebar.active {
			left: 0;
		}

		/* Schließen-Button */
		#close-btn {
			position: absolute;
			top: 15px;
			right: 20px;
			font-size: 24px;
			cursor: pointer;
		}

		/* Menü-Links */
		#sidebar ul {
			list-style: none;
			padding: 0;
			margin: 0;
		}

		#sidebar ul li {
			padding: 15px 20px;
			border-bottom: 1px solid #444;
		}

		#sidebar ul li a {
			color: white;
			text-decoration: none;
			display: block;
		}

		#sidebar ul li a:hover {
			background: #444;
		}

	
	
		.pizza-list {
			list-style: none;
			padding: 0;
		}

		.pizza-list li {
			margin: 10px 0;
		}
		
	/*Erfolgsmeldungen Anmeldungen*/
	.login-success-message {
        display: none;
        position: fixed;
        top: 10%;
        left: 50%;
		z-index: 3000;
        transform: translate(-50%, -50%);
        background-color: #4CAF50;
        color: white;
        padding: 15px 20px;
        border-radius: 5px;
        font-size: 18px;
        text-align: center;
        box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
        opacity: 0;
        transition: opacity 0.5s ease-in-out;
    }

    .login-success-message.show {
        display: block;
        opacity: 1;
    }

    .login-success-message i {
        margin-right: 8px;
        font-size: 22px;
    }
	
	/* Style für deaktivierten Anmelde-Button */
	#register-now {
		background-color: #ccc;
		color: white;
		cursor: not-allowed;
	}

	#register-now.active {
		background-color: #007bff;
		cursor: pointer;
	}
	
	#offers-popup h3 {
		margin-bottom: 20px
	}
	
	/*Delete Account*/
	.delete-account-btn {
		background-color: #e63946; /* Warnrot */
		color: white;
		border: none;
		padding: 10px 20px;
		border-radius: 8px;
		cursor: pointer;
		font-weight: bold;
		font-size: 14px;
		transition: background-color 0.3s ease, transform 0.2s ease;
		margin-top: 10px;
	}

	.delete-account-btn:hover {
		background-color: #d62828;
		transform: scale(1.03);
	}

	.delete-account-btn:active {
		background-color: #b71c1c;
		transform: scale(0.98);
	}
