<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Kurscha Ticketshop</title>
	<atom:link href="https://tickets.kurscha.de/feed/" rel="self" type="application/rss+xml" />
	<link>https://tickets.kurscha.de</link>
	<description>Tickets für unsere kommenden Events</description>
	<lastBuildDate>Thu, 12 Feb 2026 05:51:50 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.3</generator>

<image>
	<url>https://tickets.kurscha.de/wp-content/uploads/2024/11/cropped-Unbenannt-1-32x32.jpg</url>
	<title>Kurscha Ticketshop</title>
	<link>https://tickets.kurscha.de</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Tickets kaufen</title>
		<link>https://tickets.kurscha.de/tickets/</link>
					<comments>https://tickets.kurscha.de/tickets/#respond</comments>
		
		<dc:creator><![CDATA[admin-wd365]]></dc:creator>
		<pubDate>Fri, 17 Oct 2025 12:13:51 +0000</pubDate>
				<category><![CDATA[Tickets]]></category>
		<guid isPermaLink="false">https://tickets.kurscha.de/?p=4395534</guid>

					<description><![CDATA[]]></description>
										<content:encoded><![CDATA[<p><div class="et_pb_section et_pb_section_0 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_0">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_0  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_code et_pb_code_0">
				
				
				
				
				<div class="et_pb_code_inner"><!-- 💎 Eleganter Warenkorb-Header -->
<div class="custom-cart-header">
  <h1>Tickets kaufen</h1>
</div>

<style>
/* --- Basis Layout --- */
.custom-cart-header {
  text-align: center;
  margin: 20px auto 40px auto;
  max-width: 1000px;
}

/* --- Desktop (edel mit Glow & Rahmen) --- */
.custom-cart-header h1 {
  background: linear-gradient(180deg, #111 0%, #1b1b1b 100%);
  color: #d4af37;
  font-family: "Poppins", sans-serif;
  font-size: 2.3rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  border: 1px solid rgba(212,175,55,0.3);
  border-radius: 12px;
  box-shadow: 0 0 25px rgba(212,175,55,0.25);
  padding: 1.2rem;
  margin: 0 auto;
  width: 100%;
  transition: all 0.3s ease;
}

/* Hover-Effekt mit sanftem Goldleuchten */
.custom-cart-header h1:hover {
  box-shadow: 0 0 35px rgba(212,175,55,0.4);
  color: #f5d76e;
}

/* --- Mobile Ansicht (modern, ohne Hintergrund) --- */
@media (max-width: 768px) {
  .custom-cart-header h1 {
    background: transparent;
    border: none;
    border-bottom: 2px solid #d4af37;
    border-radius: 0;
    box-shadow: none;
    color: #f5d76e;
    font-size: 1.9rem;
    padding: 0.5rem 0 0.8rem 0;
  }
}
</style>
</div>
			</div><div class="et_pb_module et_pb_code et_pb_code_1">
				
				
				
				
				<div class="et_pb_code_inner"><section class="ticket-info-new">
  <div class="wrap">
    <h2>🎟️ So einfach kommst du zu deinem Ticket</h2>
    <p class="lead">Wähle deine Veranstaltung, reserviere deine Plätze und sichere dir dein Ticket bequem online – ganz ohne Warteschlange.</p> 

    <!-- 💛 Schritte -->
    <div class="steps">
      <div class="step">
        <div class="circle">1</div>
        <h3>Veranstaltung wählen</h3>
        <p>Suche deine Lieblingsveranstaltung aus der Liste aus.</p> 
      </div>

      <div class="step">
        <div class="circle">2</div>
        <h3>Tisch & Anzahl reservieren</h3>
        <p>Wähle deinen gewünschten Tischbereich und gib die gewünschte Ticketanzahl an.</p> 
      </div>

      <div class="step">
        <div class="circle">3</div>
        <h3>Ticket online buchen</h3>
        <p>Bezahle bequem online oder bei Abholung – dein Ticket kommt direkt per E-Mail.</p> 
      </div>

      <div class="step">
        <div class="circle">4</div>
        <h3>Einlass mit Handy-Ticket</h3>
        <p>Du brauchst dein Ticket nicht auszudrucken – der QR-Code auf dem Handy reicht für den Einlass völlig aus.</p> 
      </div>
    </div>
    



    <!-- 💛 Platzreservierung -->
    <div class="ticket-form">
      <h3>🎟️ Platzreservierung</h3>

      <button id="showPlan" class="divioverlay-4395608">📋 Saalplan ansehen</button>
      <div id="saalplanHinweis">Bitte öffnen Sie zuerst den Saalplan, bevor Sie Kategorie und Tisch wählen.</div>

      <label for="eventSelect">Veranstaltung wählen:</label>
      <select id="eventSelect">
<option value="" selected disabled>Bitte auswählen</option>
<option value="Büttenabend 2026">Büttenabend 2026</option>
<option value="Weiberfastnacht 2026">Weiberfastnacht 2026</option>
<option value="Karneval der Masken 2026">Karneval der Masken 2026</option>
<option value="Rosenmontag 2026">Rosenmontag 2026</option>
      </select>

      <div id="catWrap" style="display:none;">
        <label for="categorySelect">Kategorie wählen:</label>
        <select id="categorySelect">
<option value="" selected disabled>Bitte Kategorie wählen</option>
        </select>
        <div id="categoryPrice" style="color:#d4af37;font-size:0.9rem;text-align:right;margin-top:.2em;"></div>
      </div>

      <div id="tableGroup">
        <label for="tableSelect">Tisch auswählen:</label>
        <select id="tableSelect" disabled>
<option value="">Bitte zuerst Veranstaltung wählen</option>
        </select>
      </div>

      <label>Anzahl Tickets:</label>
      <div class="ticket-quantity" id="qtyBox">
        <button id="minusBtn">−</button>
        <input type="number" id="ticketCount" value="1" min="1" max="1">
        <button id="plusBtn">+</button>
      </div>

      <div id="ticketStockInfo"></div>
      <div id="priceInfo"></div>

      <button id="showTicketInfo" class="submit" disabled>Jetzt buchen</button>
    </div>

    <!-- Modal -->
    <div class="modal-overlay" id="successModal">
      <div class="modal-box">
        <h4>✅ Ticket hinzugefügt!</h4>
        <p id="modalText"></p> 
        <div class="modal-buttons">
          <a href="/warenkorb" class="cart">🛒 Zum Warenkorb</a>
          <a href="#" class="close" id="closeModal">Weiter einkaufen</a>
        </div>
      </div>
    </div>

    <!-- Ticketkategorien -->
    <h2>💰 Ticketkategorien & Preise</h2>
    <table class="ticket-table">
      <thead>
        <tr>
          <th>Veranstaltung</th>
          <th>Vorverkaufsrabatt (bis 31.12.2025)</th>
          <th>Ab 01.01.2026 / Abendkasse</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td>Büttenabend</td>
          <td>Kat. 1 – 22 € / Kat. 2 – 20 €</td>
          <td>Kat. 1 – 23 € / Kat. 2 – 21 €</td>
        </tr>
        <tr>
          <td>Weiberfastnacht</td>
          <td>Kat. 1 – 22 € / Kat. 2 – 20 €</td>
          <td>Kat. 1 – 23 € / Kat. 2 – 21 €</td>
        </tr>
        <tr>
          <td>Karneval der Masken</td>
          <td>15 €</td>
          <td>17 €</td>
        </tr>
        <tr>
          <td>Rosenmontag</td>
          <td>7 €</td>
          <td>7 €</td>
        </tr>
      </tbody>
    </table>
    <p class="hint">💡 <strong>Tipp:</strong> Der Vorverkaufsrabatt gilt nur bis einschließlich 31. Dezember 2025!</p> 

<!-- ℹ️ Allgemeine Informationen -->
<h2>ℹ️ Allgemeine Informationen zum Ticketverkauf</h2>

<div class="accordion">
  <div class="accordion-item">
    <button class="accordion-header">
      <span class="icon">🎟️</span>
      Digitale und Ausgedruckte Tickets
    </button>
    <div class="accordion-content">
      <p>Deine Tickets werden digital (QR-Code am Handy) oder ausgedruckt beim Einlass gescannt. 
      Bitte sorge dafür, dass der QR-Code gut lesbar ist.</p> 
    </div>
  </div>

  <div class="accordion-item">
    <button class="accordion-header">
      <span class="icon">🪑</span>
      Sitzplatzbuchung
    </button>
    <div class="accordion-content">
      <p>Für den Büttenabend und die Weiberfastnacht ist eine Tischplatzbuchung erforderlich. 
      Die Buchung garantiert einen Platz am Tisch, aber keine spezielle Sitznummer.</p> 
    </div>
  </div>

  <div class="accordion-item">
    <button class="accordion-header">
      <span class="icon">🎫</span>
      Hinweise zum Eintritt
    </button>
    <div class="accordion-content">
      <p><strong>Eintritt ab 16 Jahren:</strong> Für Besucher ab 16 Jahren ist ein „Muttizettel“ 
      (Erziehungsbeauftragung) erforderlich, unterschrieben von einem Erziehungsberechtigten.</p> 
    </div>
  </div>

  <div class="accordion-item">
    <button class="accordion-header">
      <span class="icon">💳</span>
      Zahlungsmöglichkeiten
    </button>
    <div class="accordion-content">
      <p>Wir bieten folgende Zahlungsarten an:<br />
      • Überweisung an unser Konto<br />
      • Zahlung bei Abholung im Vereinshaus<br />
      Deine Tickets erhältst du direkt nach Zahlung per E-Mail.</p> 
    </div>
  </div>

  <div class="accordion-item">
    <button class="accordion-header">
      <span class="icon">👤</span>
      Warum registrieren?
    </button>
    <div class="accordion-content">
      <p>Mit einem Benutzerkonto hast du jederzeit Zugriff auf deine Tickets, 
      kannst sie erneut herunterladen und deine Bestellungen bequem verwalten.</p> 
    </div>
  </div>
</div>

<div class="notice">
  ⚠️ <strong>Wichtiger Hinweis:</strong> Die Buchung garantiert dir einen Platz an einem Tisch, 
  jedoch keine spezielle Sitznummer.
</div>

<!-- Akkordeon-Funktion -->
<script>
document.addEventListener("DOMContentLoaded", () => {
  const items = document.querySelectorAll(".accordion-item");
  items.forEach(item => {
    const header = item.querySelector(".accordion-header");
    header.addEventListener("click", () => {
      // Nur ein Akkordeon gleichzeitig öffnen
      items.forEach(i => {
        if (i !== item) i.classList.remove("active");
      });
      item.classList.toggle("active");
    });
  });
});
</script>

<style>
/* --- Akkordeon Stil im gold-schwarzen Design --- */
.accordion {
  max-width: 900px;
  margin: 1.5em auto 0;
  display: flex;
  flex-direction: column;
  gap: 1em;
  text-align: left;
}

.accordion-item {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(212,175,55,0.25);
  border-radius: 10px;
  overflow: hidden;
  transition: all .3s ease;
}

.accordion-header {
  width: 100%;
  background: transparent;
  color: #d4af37;
  font-size: 1.05rem;
  font-weight: 600;
  padding: 1.1em 1.4em;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.accordion-header .icon {
  margin-right: .6em;
  font-size: 1.2rem;
}

.accordion-header::after {
  content: "▾";
  color: #d4af37;
  font-size: 1.2rem;
  transition: transform .3s;
}

.accordion-item.active .accordion-header::after {
  transform: rotate(180deg);
}

.accordion-content {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  padding: 0 1.4em;
  color: #ccc;
  font-size: 0.95rem;
  line-height: 1.5;
  transition: all .4s ease;
}

.accordion-item.active .accordion-content {
  max-height: 400px;
  opacity: 1;
  padding-bottom: 1.2em;
}

.accordion-item:hover {
  border-color: rgba(212,175,55,0.4);
  box-shadow: 0 0 10px rgba(212,175,55,0.25);
}
</style>

    <!-- Preislogik -->
    <script>
      document.addEventListener('DOMContentLoaded', () => {
        const eventSel = document.getElementById('eventSelect');
        const catWrap = document.getElementById('catWrap');
        const categorySelect = document.getElementById('categorySelect');
        const categoryPrice = document.getElementById('categoryPrice');
        const tableSelect = document.getElementById('tableSelect');

        categoryPrice.textContent = "";

        eventSel.addEventListener('change', () => {
          const event = eventSel.value;
          const today = new Date();
          const cutoff = new Date('2026-01-01');
          let preise = {};

          if (event === "Büttenabend 2026" || event === "Weiberfastnacht 2026") {
            if (today < cutoff) {
              preise = { kat1: 22, kat2: 20 };
            } else {
              preise = { kat1: 23, kat2: 21 };
            }
            catWrap.style.display = 'block';
            categorySelect.innerHTML = `
<option value="" selected disabled>Bitte Kategorie wählen</option>
<option value="Kat 1">Kategorie 1 – ${preise.kat1} €</option>
<option value="Kat 2">Kategorie 2 – ${preise.kat2} €</option>
            `;
            categoryPrice.textContent = `💰 ${
              today < cutoff ? "Vorverkauf" : "Regulär"
            }: Kat. 1 = ${preise.kat1} €, Kat. 2 = ${preise.kat2} €`;
          } else if (event === "Karneval der Masken 2026") {
            catWrap.style.display = 'none';
            categoryPrice.textContent = "💰 Einheitspreis: 15 €";
          } else if (event === "Rosenmontag 2026") {
            catWrap.style.display = 'none';
            categoryPrice.textContent = "💰 Einheitspreis: 7 €";
          }
          tableSelect.disabled = false;
        });
      });
    </script>
  </div>
</section>

<style>
.ticket-info-new {
  background:#111;
  color:#eee;
  padding:4em 1.5em;
  border-top:1px solid rgba(212,175,55,0.25);
  font-family:"Poppins",sans-serif;
}
.ticket-info-new .wrap {
  max-width:900px;
  margin:0 auto;
  text-align:center;
}
.ticket-info-new h2 {
  color:#d4af37;
  margin:1.8em 0 0.6em;
  font-size:1.6rem;
}
.ticket-info-new .lead {
  color:#ccc;
  font-size:1rem;
  margin-bottom:2em;
}

/* === Schritte-Bereich (2×2 Grid) === */
.steps {
  display:grid;
  gap:2em;
  grid-template-columns:repeat(2, 1fr);
  max-width:800px;
  margin:0 auto 3em;
}
@media(max-width:768px){
  .steps{grid-template-columns:1fr;}
}
.step {
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(212,175,55,0.3);
  border-radius:10px;
  padding:1.5em;
  transition:all .25s ease;
}
.step:hover {
  transform:translateY(-4px);
  border-color:rgba(212,175,55,0.6);
  box-shadow:0 0 10px rgba(212,175,55,0.2);
}
.circle {
  width:40px;height:40px;
  background:#d4af37;color:#111;
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 0.8em;
  font-weight:700;
}
.step h3 {
  font-size:1.1rem;
  color:#fff;
  margin-bottom:0.4em;
}
.step p {
  color:#ccc;
  font-size:0.95rem;
  line-height:1.4;
}
  
  .ticket-hinweis {
  background: #ffffff;
  color: #111;
  max-width: 800px;
  margin: 2.5em auto;
  padding: 1em 1.4em;
  border-radius: 6px;
  font-size: 0.95rem;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0,0,0,0.25);
}

.ticket-hinweis a {
  color: #b08a00;
  font-weight: 600;
  text-decoration: none;
}

.ticket-hinweis a:hover {
  text-decoration: underline;
}


/* --- Rest bleibt unverändert --- */
/* Ticketformular, Tabellen, Info-Grids, Notice ... */

</style>
</div>
			</div><div class="et_pb_module et_pb_code et_pb_code_2">
				
				
				
				
				<div class="et_pb_code_inner">

<style>
  .soldout-box {
  max-width: 900px;
  margin: 3em auto;
  background: #111;
  border: 2px solid #d4af37;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 0 25px rgba(212,175,55,0.35);
  text-align: center;
}

.soldout-image {
  width: 50%;
  height: auto;
  display: block;
}

.soldout-text {
  padding: 5px;
  font-size: 0.9rem;
  color: #fff;
  line-height: 1.9;
}

.soldout-text strong {
  color: #ff4d4d;
  font-size: 1.2rem;
  padding: 5px
}

.soldout-text a {
  color: #d4af37;
  font-weight: 600;
  text-decoration: none;
}

.soldout-text a:hover {
  text-decoration: underline;
}

</style>
</div>
			</div><div class="et_pb_module et_pb_code et_pb_code_3">
				
				
				
				
				<div class="et_pb_code_inner"><script>
document.addEventListener("DOMContentLoaded", function() {

    /* ======================================
       VORVERKAUF DAUERHAFT BEENDET
       ====================================== */

    const wrapper = document.querySelector(".ticket-info-new .wrap");
    const form = document.querySelector(".ticket-form");

    /* ===== Banner einfügen ===== */

    if(wrapper){

        const banner = document.createElement("div");
        banner.className = "ticket-closed-banner";
        banner.innerHTML = `
            ⚠️ <strong>Der Vorverkauf ist beendet.</strong><br />
            Tickets sind ausschließlich an der Abendkasse erhältlich.
        `;

        wrapper.prepend(banner);
    }

    /* ===== Formular deaktivieren ===== */

    if(form){
        form.style.opacity = "0.35";
        form.style.pointerEvents = "none";
    }

    const inputs = document.querySelectorAll(
        ".ticket-form select, .ticket-form input, .ticket-form button"
    );

    inputs.forEach(el => el.disabled = true);

});
</script>

<style>
.ticket-closed-banner {
    background: linear-gradient(135deg, #b30000, #800000);
    color: #fff;
    padding: 1.3em;
    margin-bottom: 2em;
    border-radius: 8px;
    font-size: 1.1rem;
    text-align: center;
    box-shadow: 0 0 25px rgba(255,0,0,0.5);
}
</style>


<style>
.ticket-countdown-banner {
    background: linear-gradient(135deg, #d4af37, #8f6b00);
    color: #111;
    padding: 1.1em;
    margin-bottom: 2em;
    border-radius: 8px;
    font-weight: 600;
    font-size: 1.05rem;
    text-align: center;
    box-shadow: 0 0 20px rgba(212,175,55,0.4);
}

.ticket-closed-banner {
    background: linear-gradient(135deg, #b30000, #800000);
    color: #fff;
    padding: 1.3em;
    margin-bottom: 2em;
    border-radius: 8px;
    font-size: 1.1rem;
    text-align: center;
    box-shadow: 0 0 25px rgba(255,0,0,0.5);
}
</style>
</div>
			</div>
			</div>
				
				
				
				
			</div>
				
				
			</div><div class="et_pb_section et_pb_section_1 et_section_regular" >
				
				
				
				
				<span class="et_pb_background_mask"></span>
				
				<div class="et_pb_row et_pb_row_1">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_1  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_code et_pb_code_5">
				
				
				
				
				<div class="et_pb_code_inner"><style>
.ticket-form {
  max-width:480px;margin:0 auto;
  background:linear-gradient(180deg,#111,#1b1b1b);
  color:#fff;padding:1.5em;border-radius:12px;
  box-shadow:0 4px 15px rgba(0,0,0,.3);
  border:1px solid rgba(212,175,55,.2);
  font-family:"Poppins",sans-serif;
}
.ticket-form h3{text-align:center;color:#d4af37;font-size:1.4rem;margin-bottom:1em;}
.ticket-form label{display:block;margin-top:.8em;font-weight:500;}
.ticket-form select,.ticket-form input{
  width:100%;padding:.9em;margin-top:.4em;border:none;border-radius:8px;
  font-size:1rem;background:#222;color:#fff;
}
.ticket-form option[disabled]{color:#777}
.ticket-quantity{display:flex;align-items:center;justify-content:space-between;
  background:#222;border-radius:8px;margin-top:.4em;opacity:.5;pointer-events:none;
  transition:all .3s ease;}
.ticket-quantity.active{opacity:1;pointer-events:auto;box-shadow:0 0 12px rgba(245,215,110,.5);}
.ticket-quantity button{width:46px;height:46px;border:none;
  background:linear-gradient(90deg,#d4af37,#f5d76e);color:#111;font-size:1.4rem;
  font-weight:bold;border-radius:8px;cursor:pointer;transition:all .3s ease;}
.ticket-quantity button:hover{transform:scale(1.1);box-shadow:0 0 15px rgba(212,175,55,.6);}
.ticket-quantity input{width:100%;text-align:center;border:none;background:transparent;
  color:#fff;font-size:1rem;font-weight:600;padding:.6em 0;}
.ticket-form button.submit{width:100%;margin-top:1.2em;padding:1em;
  background:linear-gradient(90deg,#d4af37,#f5d76e);color:#111;font-weight:bold;
  cursor:pointer;border:none;border-radius:10px;font-size:1.05rem;
  transition:all .3s ease;box-shadow:0 0 12px rgba(212,175,55,.4);}
.ticket-form button.submit:hover:not(:disabled){transform:scale(1.03);
  box-shadow:0 0 25px rgba(245,215,110,.8);}
.ticket-form button.submit:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;}
#priceInfo,#ticketStockInfo{color:#f5d76e;text-align:center;font-style:italic;font-size:.9rem;margin-top:.4em;}
.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.7);
  display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;
  transition:all .4s ease;z-index:9999;}
.modal-overlay.active{opacity:1;pointer-events:auto;}
.modal-box{background:#111;border:1px solid #d4af37;border-radius:12px;padding:2em;text-align:center;
  max-width:380px;width:90%;box-shadow:0 0 25px rgba(212,175,55,.4);}
.modal-box h4{color:#d4af37;margin-bottom:.5em;font-size:1.3rem;}
.modal-box p{color:#eee;font-size:1rem;margin-bottom:1.2em;}
.modal-buttons{display:flex;justify-content:center;gap:1em;}
.modal-buttons a{display:inline-block;padding:.7em 1.4em;border-radius:8px;font-weight:bold;text-decoration:none;transition:all .3s ease;}
.modal-buttons a.cart{background:linear-gradient(90deg,#d4af37,#f5d76e);color:#111;}
.modal-buttons a.close{background:#222;border:1px solid #555;color:#fff;}
.modal-buttons a.cart:hover{box-shadow:0 0 15px rgba(245,215,110,.8);}
.modal-buttons a.close:hover{background:#333;}
#showPlan{
  display:none;width:100%;margin-bottom:1em;
  background:linear-gradient(90deg,#d4af37,#f5d76e);color:#111;font-weight:bold;
  border:none;border-radius:8px;padding:10px 20px;cursor:pointer;transition:all .3s ease;
}
#showPlan:hover{transform:scale(1.05);box-shadow:0 0 15px rgba(212,175,55,.6);}
#saalplanHinweis{
  display:none;text-align:center;color:#d4af37;font-style:italic;
  font-size:.95rem;margin-bottom:.8em;animation:fadeIn .6s ease forwards;
}
@keyframes fadeIn{from{opacity:0;transform:translateY(-5px);}to{opacity:1;transform:translateY(0);}}
 /* === Premium-Highlight für Formularcontainer === */
.ticket-form {
  position: relative;
  background: radial-gradient(circle at 50% 0%, rgba(255,235,130,0.08) 0%, rgba(17,17,17,1) 100%);
  border: 1px solid rgba(212,175,55,0.5);
  border-radius: 16px;
  box-shadow:
    0 0 25px rgba(212,175,55,0.15),
    0 0 55px rgba(212,175,55,0.10),
    inset 0 0 8px rgba(255,255,255,0.05);
  transition: all 0.4s ease;
  animation: deepGlow 6s ease-in-out infinite;
  z-index: 3;
}

/* sanfter pulsierender Gold-Halo */
@keyframes deepGlow {
  0%, 100% {
    box-shadow:
      0 0 25px rgba(212,175,55,0.18),
      0 0 60px rgba(212,175,55,0.10),
      inset 0 0 8px rgba(255,255,255,0.05);
    transform: scale(1);
  }
  50% {
    box-shadow:
      0 0 45px rgba(212,175,55,0.35),
      0 0 90px rgba(212,175,55,0.25),
      inset 0 0 10px rgba(255,255,255,0.08);
    transform: scale(1.01);
  }
}

/* goldene Glanzkante mit Lichtreflex */
.ticket-form::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 16px;
  padding: 1.5px;
  background: linear-gradient(145deg,
    rgba(255,230,150,0.8),
    rgba(212,175,55,0.6),
    rgba(255,255,255,0.08),
    rgba(212,175,55,0.5)
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  filter: blur(0.3px);
}

/* Hover-Effekt – Lift & verstärkter Schimmer */
.ticket-form:hover {
  transform: translateY(-5px);
  box-shadow:
    0 0 60px rgba(212,175,55,0.45),
    0 0 120px rgba(212,175,55,0.35),
    inset 0 0 12px rgba(255,255,255,0.10);
}

/* Titel im Formular leicht leuchtend */
.ticket-form h3 {
  color: #f5d76e;
  text-align: center;
  text-shadow: 0 0 10px rgba(245,215,110,0.4);
  margin-bottom: 1.2em;
  font-size: 1.4rem;
  letter-spacing: 0.5px;
}

/* Optional: kleine Lichtreflex-Animation an der Oberkante */
.ticket-form::after {
  content: "";
  position: absolute;
  top: 0; left: 50%;
  transform: translateX(-50%);
  width: 80%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(255,240,180,0.6), transparent);
  animation: shimmerLine 5s linear infinite;
}

@keyframes shimmerLine {
  0% { opacity: 0; transform: translateX(-50%) scaleX(0.3); }
  50% { opacity: 1; transform: translateX(-50%) scaleX(1); }
  100% { opacity: 0; transform: translateX(-50%) scaleX(0.3); }
}

</style>
</div>
			</div><div class="et_pb_module et_pb_code et_pb_code_6">
				
				
				
				
				<div class="et_pb_code_inner"><script>
document.addEventListener("DOMContentLoaded",function(){
  const eventSel=document.getElementById('eventSelect');
  const catWrap=document.getElementById('catWrap');
  const catSel=document.getElementById('categorySelect');
  const catPrice=document.getElementById('categoryPrice');
  const tableSel=document.getElementById('tableSelect');
  const qtyBox=document.getElementById('qtyBox');
  const qtyInput=document.getElementById('ticketCount');
  const plus=document.getElementById('plusBtn');
  const minus=document.getElementById('minusBtn');
  const priceInfo=document.getElementById('priceInfo');
  const buyBtn=document.getElementById('showTicketInfo');
  const modal=document.getElementById('successModal');
  const modalText=document.getElementById('modalText');
  const closeModal=document.getElementById('closeModal');
  const showPlan=document.getElementById('showPlan');
  const hinweis=document.getElementById('saalplanHinweis');
  const stockInfo=document.getElementById('ticketStockInfo');

  let eventType="",cat=0,price=0,stocks={},prices={},saalplanGesehen=false;

  function updateBtnState(){
    const ready=(eventType && ((eventType.indexOf("Bütten")>=0 || eventType.indexOf("Weiber")>=0)
      ? (saalplanGesehen && cat>0 && tableSel.value) : true));
    buyBtn.disabled=!ready;
    qtyBox.classList.toggle("active",ready);
  }

  function updatePriceDisplay(){
    const qty=parseInt(qtyInput.value)||1;
    const total=price*qty;
    priceInfo.textContent=(price>0)?(`Gesamtpreis: ${total.toFixed(2)} € (${qty} × ${price.toFixed(2)} €)`):"";
    updateBtnState();
  }

  function openModal(text){
    modalText.textContent=text;
    modal.classList.add("active");
  }

  closeModal.addEventListener("click",function(e){
    e.preventDefault();
    modal.classList.remove("active");
    setTimeout(()=>location.reload(),400);
  });

  // === Veranstaltungsauswahl ===
  eventSel.addEventListener('change',function(e){
    eventType=e.target.value;
    catWrap.style.display="none";
    catPrice.textContent="";
    tableSel.innerHTML='<option value="">Bitte zuerst Veranstaltung wählen</option>';
    tableSel.disabled=true;
    saalplanGesehen=false;
    showPlan.style.display="none";
    hinweis.style.display="none";

    if(eventType==="Büttenabend 2026" || eventType==="Weiberfastnacht 2026"){
      showPlan.style.display="block";
      hinweis.style.display="block";
      // === Saalplan-Link dynamisch anpassen ===
      showPlan.onclick=function(){
        const url=(eventType==="Büttenabend 2026")
          ? "https://tickets.kurscha.de/wp-content/uploads/2025/11/Buettenabend_2026_kats.webp"
          : "https://tickets.kurscha.de/wp-content/uploads/2025/11/Weiberfastnacht_2026_kats.webp";
        window.open(url,"_blank");
        saalplanGesehen=true;
        hinweis.style.display="none";
        catWrap.style.display="block";
        updateBtnState();
      };

      buyBtn.disabled=true;
      qtyBox.classList.remove("active");
      catSel.innerHTML=
        '<option value="" disabled selected>Bitte Kategorie wählen</option>'+
        '<option value="1">Kategorie 1 – 23 €</option>'+
        '<option value="2">Kategorie 2 – 21 €</option>';
    } else {
      // === einfache Veranstaltungen (Rosenmontag, Karneval) ===
      price=(eventType==="Rosenmontag 2026"?7:(eventType==="Karneval der Masken 2026"?15:0));
      qtyBox.classList.add("active");
      qtyBox.style.opacity="1";
      qtyBox.style.pointerEvents="auto";
      qtyInput.max=99;
      qtyInput.value=1;
      stockInfo.textContent="";
      tableSel.disabled=true;
      tableSel.innerHTML='<option value="">(keine Tischauswahl erforderlich)</option>';
      buyBtn.disabled=false;
      updatePriceDisplay();
    }
  });

  // === Kategorieauswahl ===
  catSel.addEventListener('change',function(){
    cat=parseInt(catSel.value);
    price=(cat===1?23:(cat===2?21:0));
    catPrice.textContent="Preis: "+price.toFixed(2)+" € / Ticket";
    updateBtnState();

    if(eventType==="Büttenabend 2026" || eventType==="Weiberfastnacht 2026"){
      tableSel.disabled=true;
      tableSel.innerHTML='<option>Lade verfügbare Tische…</option>';

      fetch('/wp-admin/admin-ajax.php?action=get_tickets&event='+encodeURIComponent(eventType))
        .then(res=>res.json())
        .then(function(data){
          tableSel.innerHTML="";
          
          const optInnen=document.createElement("optgroup");
          optInnen.label="── Innenraum ──";
          const optGalerie=document.createElement("optgroup");
          optGalerie.label="── Galerie ──";
          const optEmpore=document.createElement("optgroup");
          optEmpore.label="── Empore ──";

          // --- Tischgruppen & Kategorie-Zuordnung ---
          const galerie=[50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65];
          const empore=[66,67,68,69,70,71];
          const kat1=[ // PK1
            1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,  // Innenraum PK1
            50,51,52,53,54,55,58,59,60,61,62,63,                // Galerie PK1
            66,67,68,69,70,71                                   // Empore PK1
          ];
          const kat2=[ // PK2
            21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,
            56,57,64,65
          ];

          // --- Optionen erzeugen ---
          data.forEach(function(p){
            const match=p.name.match(/Tisch\s+(\d+)/i);
            const nr=match?parseInt(match[1]):null;
            if(!nr)return;

            const inKat1=(cat===1 && kat1.includes(nr));
            const inKat2=(cat===2 && kat2.includes(nr));
            if(!inKat1 && !inKat2)return;

            const opt=document.createElement('option');
            opt.value=p.id;
            opt.textContent=p.name+" ("+p.stock+" verfügbar)";
            opt.dataset.nr=nr; // für Sortierung
            stocks[p.id]=p.stock;
            prices[p.id]=parseFloat(p.price||price);

            if(empore.includes(nr)) optEmpore.appendChild(opt);
            else if(galerie.includes(nr)) optGalerie.appendChild(opt);
            else optInnen.appendChild(opt);
          });

          // --- Sortierung innerhalb jeder Gruppe (absteigend) ---
          function sortGroup(group){
            const options=Array.from(group.children);
            options.sort((a,b)=>parseInt(a.dataset.nr)-parseInt(b.dataset.nr));
            options.forEach(o=>group.appendChild(o));
          }
          [optInnen,optGalerie,optEmpore].forEach(g=>sortGroup(g));

          // --- Gruppen anhängen ---
          if(optInnen.children.length>0)tableSel.appendChild(optInnen);
          if(optGalerie.children.length>0)tableSel.appendChild(optGalerie);
          if(optEmpore.children.length>0)tableSel.appendChild(optEmpore);

          tableSel.disabled=false;
        })
        .catch(()=>tableSel.innerHTML='<option>Fehler beim Laden der Tische</option>');
    }
  });

  // === Tischauswahl ===
  tableSel.addEventListener('change',function(){
    const id=tableSel.value;
    updateBtnState();
    qtyBox.classList.add("active");
    if(id){
      price=prices[id]||price;
      const stock=stocks[id]||1;
      qtyInput.max=stock;
      if(parseInt(qtyInput.value)>stock){qtyInput.value=stock;}
      stockInfo.textContent="Noch "+stock+" Ticket"+(stock===1?"":"s")+" verfügbar.";
      updatePriceDisplay();
    }
  });

  // === Mengensteuerung ===
  plus.addEventListener('click',function(e){
    e.preventDefault();
    const max=parseInt(qtyInput.max)||99;
    const val=parseInt(qtyInput.value)||1;
    if(val<max){qtyInput.value=val+1;updatePriceDisplay();}
  });

  minus.addEventListener('click',function(e){
    e.preventDefault();
    const val=parseInt(qtyInput.value)||1;
    if(val>1){qtyInput.value=val-1;updatePriceDisplay();}
  });

  qtyInput.addEventListener('input',function(){
    const max=parseInt(qtyInput.max)||99;
    let val=parseInt(qtyInput.value)||1;
    if(val>max)val=max;
    if(val<1)val=1;
    qtyInput.value=val;
    updatePriceDisplay();
  });

  // === Jetzt buchen ===
  buyBtn.addEventListener('click',async function(e){
    e.preventDefault();
    const qty=parseInt(qtyInput.value)||1;
    let productId=null;

    if(eventType==="Büttenabend 2026" || eventType==="Weiberfastnacht 2026"){
      productId=tableSel.value;
      if(!productId){openModal("Bitte zuerst einen Tisch auswählen.");return;}
    }else{
      const res=await fetch('/wp-admin/admin-ajax.php?action=get_tickets&event='+encodeURIComponent(eventType));
      const data=await res.json();
      if(!data.length){openModal("Kein Ticketprodukt gefunden.");return;}
      productId=data[0].id;
    }

    const formData=new FormData();
    formData.append("product_id",productId);
    formData.append("quantity",qty);

    try{
      const res=await fetch("/?wc-ajax=add_to_cart",{method:"POST",body:formData});
      if(res.ok){
        openModal(`🎉 ${qty} Ticket(s) hinzugefügt (${(price*qty).toFixed(2)} € gesamt).`);
      }else{
        openModal("Fehler beim Hinzufügen in den Warenkorb.");
      }
    }catch(err){
      console.error(err);
      openModal("Unerwarteter Fehler beim Hinzufügen.");
    }
  });
});
</script>
</div>
			</div><div class="et_pb_module et_pb_code et_pb_code_7">
				
				
				
				
				<div class="et_pb_code_inner"><script>
// --- Zusatz-Code zum Ausblenden aller Tische mit 0 verfügbaren Plätzen ---
document.addEventListener("DOMContentLoaded", function(){

    const tableSel = document.getElementById('tableSelect');

    // Wenn sich die Optionen ändern (also nachdem fetch() die Liste geladen hat)
    const observer = new MutationObserver(function(){
        hideSoldOutTables();
    });

    observer.observe(tableSel, { childList: true, subtree: true });

    function hideSoldOutTables(){
        const opts = tableSel.querySelectorAll("option");

        opts.forEach(opt => {
            const text = opt.textContent;

            // Prüft z. B.: "(0 verfügbar)"
            const match = text.match(/\((\d+)\s+verfügbar\)/i);

            if(match){
                const free = parseInt(match[1]);

                // Wenn 0 Plätze → ausblenden
                if(free === 0){
                    opt.style.display = "none";   
                }
            }
        });
    }
});
</script>
</div>
			</div>
			</div>
				
				
				
				
			</div>
				
				
			</div></p>
]]></content:encoded>
					
					<wfw:commentRss>https://tickets.kurscha.de/tickets/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Karneval der Masken</title>
		<link>https://tickets.kurscha.de/buettenabend-2/</link>
					<comments>https://tickets.kurscha.de/buettenabend-2/#respond</comments>
		
		<dc:creator><![CDATA[admin-wd365]]></dc:creator>
		<pubDate>Sat, 12 Oct 2024 19:47:50 +0000</pubDate>
				<category><![CDATA[Büttenabend]]></category>
		<category><![CDATA[Tickets]]></category>
		<guid isPermaLink="false">http://tickets.kurscha.de/?p=502</guid>

					<description><![CDATA[Der Karneval der Masken steht kurz bevor, und die Vorfreude steigt! ✨???????? Schon bald verwandelt sich die Stadthalle Bad Blankenburg wieder in eine bunte, fröhliche Arena voller Lachen, Musik und guter Laune. Die Büttenredner sind bereit, die Musiker gestimmt und die Kostüme glitzern schon im Scheinwerferlicht. ???? Freut euch auf einen Abend voller Humor, abwechslungsreicher [&#8230;]]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group alignfull is-content-justification-center is-layout-constrained wp-container-core-group-is-layout-b073b61b wp-block-group-is-layout-constrained" style="margin-top: 0; margin-bottom: 0; padding: calc( 0.5 * var(--wp--style--root--padding-right, var(--wp--custom--gap--horizontal))) var(--wp--style--root--padding-right, var(--wp--custom--gap--horizontal)) calc( 0.5 * var(--wp--style--root--padding-right, var(--wp--custom--gap--horizontal))) var(--wp--style--root--padding-left, var(--wp--custom--gap--horizontal));">
<div class="wp-block-spacer" style="height: calc( 0.25 * var(--wp--style--root--padding-right, var(--wp--custom--gap--horizontal)));" aria-hidden="true"> </div>



<div class="wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-bde74fcd wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis: 160px;">
<figure class="wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex"></figure>
</div>



<div class="wp-block-column is-vertically-aligned-center is-content-justification-left is-layout-constrained wp-container-core-column-is-layout-8c890d92 wp-block-column-is-layout-constrained">
<p><strong>Der Karneval der Masken steht kurz bevor, und die Vorfreude steigt! ✨????????</strong></p>



<p>Schon bald verwandelt sich die <strong>Stadthalle Bad Blankenburg</strong> wieder in eine bunte, fröhliche Arena voller Lachen, Musik und guter Laune. Die Büttenredner sind bereit, die Musiker gestimmt und die Kostüme glitzern schon im Scheinwerferlicht. ????</p>



<p>Freut euch auf einen Abend voller Humor, abwechslungsreicher Programmpunkte und natürlich auch auf ein paar überraschende Momente. Bringt eure Freunde mit, packt eure gute Laune ein, und lasst uns gemeinsam die Tradition des Büttenabends feiern! ????</p>



<p>Wie immer findet die Veranstaltung in der <strong>Stadthalle Bad Blankenburg</strong> statt.</p>


<hr class="wp-block-separator has-alpha-channel-opacity" />


<p>Hier könnt ihr eure Tickets sichern:</p>


<p class="product woocommerce add_to_cart_inline " style="border:none;"><a href="https://tickets.kurscha.de/?post_type=product&#038;p=14" aria-describedby="woocommerce_loop_add_to_cart_link_describedby_14" data-quantity="true" class="button product_type_simple" data-product_id="14" data-product_sku="" aria-label="Lese mehr über &#8222;Karneval der Masken&#8220;" rel="nofollow" data-success_message="">Weiterlesen</a>	<span id="woocommerce_loop_add_to_cart_link_describedby_14" class="screen-reader-text">
			</span>
</p>


<p> Datum der Veranstaltung: 11. März 2026 12:22 </p>



<p>&nbsp;</p>



<p>Wir sehen uns auf der Bühne oder im Publikum, denn eins ist sicher: Der Büttenabend verbindet und bringt uns alle zum Lachen! ????????????</p>
</div>
</div>



<div class="wp-block-spacer" style="height: calc( 0.25 * var(--wp--style--root--padding-right, var(--wp--custom--gap--horizontal)));" aria-hidden="true"> </div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://tickets.kurscha.de/buettenabend-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Büttenabend</title>
		<link>https://tickets.kurscha.de/buettenabend/</link>
					<comments>https://tickets.kurscha.de/buettenabend/#respond</comments>
		
		<dc:creator><![CDATA[admin-wd365]]></dc:creator>
		<pubDate>Sat, 12 Oct 2024 19:22:33 +0000</pubDate>
				<category><![CDATA[Büttenabend]]></category>
		<category><![CDATA[Tickets]]></category>
		<guid isPermaLink="false">http://tickets.kurscha.de/?p=494</guid>

					<description><![CDATA[]]></description>
										<content:encoded><![CDATA[<div class="et_pb_section et_pb_section_2 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_2">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_2  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_0  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><div class="wp-block-group alignfull" style="margin-top: 0; margin-bottom: 0; padding: calc( 0.5 * var(--wp--style--root--padding-right, var(--wp--custom--gap--horizontal))) var(--wp--style--root--padding-right, var(--wp--custom--gap--horizontal)) calc( 0.5 * var(--wp--style--root--padding-right, var(--wp--custom--gap--horizontal))) var(--wp--style--root--padding-left, var(--wp--custom--gap--horizontal));">
<div class="wp-block-columns alignwide">
<p>&nbsp;</p>
<p></p>
<div class="wp-block-column is-vertically-aligned-center is-content-justification-left is-layout-constrained wp-container-core-column-is-layout-8c890d92 wp-block-column-is-layout-constrained">
<p><strong>Der Büttenabend steht kurz bevor, und die Vorfreude steigt! ✨????????</strong></p>
<p></p>
<p>Schon bald verwandelt sich die <strong>Stadthalle Bad Blankenburg</strong> wieder in eine bunte, fröhliche Arena voller Lachen, Musik und guter Laune. Die Büttenredner sind bereit, die Musiker gestimmt und die Kostüme glitzern schon im Scheinwerferlicht. ????</p>
<p></p>
<p>Freut euch auf einen Abend voller Humor, abwechslungsreicher Programmpunkte und natürlich auch auf ein paar überraschende Momente. Bringt eure Freunde mit, packt eure gute Laune ein, und lasst uns gemeinsam die Tradition des Büttenabends feiern! ????</p>
<p></p>
<p>Wie immer findet die Veranstaltung in der <strong>Stadthalle Bad Blankenburg</strong> statt.</p>
<p></p>
<p></p>
<hr class="wp-block-separator has-alpha-channel-opacity" />
<p></p>
<p>Hier könnt ihr eure Tickets sichern:</p>
<p></p>
<p>            <button class="tc_seating_map_button" data-seating-map-id="410" data-show_legend="true" data-button_title="Wähle deinen Sitzplatz" data-subtotal_title="Zwischensumme" data-cart_title="zum Warenkorb">Wähle deinen Sitzplatz</button>
            
</p>
<p><p> Datum der Veranstaltung: 11. März 2026 12:22 </p>
</p>
<p></p>
<p></p>
<p>Wir sehen uns auf der Bühne oder im Publikum, denn eins ist sicher: Der Büttenabend verbindet und bringt uns alle zum Lachen! ????????????</p>
<p></p>
</div>
<p></p>
</div>
<p><!-- /wp:post-content --></p>
<p><!-- wp:spacer {"height":"calc( 0.25 * var(\u002d\u002dwp\u002d\u002dstyle\u002d\u002droot\u002d\u002dpadding-right, var(\u002d\u002dwp\u002d\u002dcustom\u002d\u002dgap\u002d\u002dhorizontal)))"} --></p>
<div class="wp-block-spacer" style="height: calc( 0.25 * var(--wp--style--root--padding-right, var(--wp--custom--gap--horizontal)));" aria-hidden="true"> </div>
<p><!-- /wp:spacer --></p>
</div>
<p><!-- /wp:group --></p></div>
			</div>
			</div>
				
				
				
				
			</div>
				
				
			</div>]]></content:encoded>
					
					<wfw:commentRss>https://tickets.kurscha.de/buettenabend/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
