/* ==========================================================================
   FALKENTHAL MODERN SHOP UI/UX UPGRADE (presale.css - v1.8.5)
   Farb-, Geometrie- & Kontrastneutral: Respektiert 100 % der Veranstalter-Farben,
   Logos, Bootstrap-Input-Groups sowie helle UND dunkle Veranstalter-Hintergründe!
   ========================================================================== */

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    line-height: 1.6;
}

/* 1. MODERNE CARDS & PANELS IM TICKETSHOP (Native Pretix-Rahmenfarben bleiben erhalten!) */
.panel {
    border-radius: 8px;
    box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.04);
    overflow: hidden;
}

.panel-heading {
    padding: 13px 18px;
    font-weight: 600;
}

/* 2. BUTTONS, EINGABEFELDER & MENGENAUSWAHL (ADAPTIVE RAHMEN FÜR LIGHT & DARK THEMES) */
.btn {
    border-radius: 6px;
    font-weight: 600;
    transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

/* Sekundäre Buttons & Mengenauswahl-Buttons ([-][+]) behalten auf hellen UND dunklen
   Veranstalter-Hintergründen beim Hover immer einen klaren, sichtbaren Rahmen! */
.btn-default {
    border: 1px solid rgba(128, 128, 128, 0.35);
    border-color: color-mix(in srgb, currentColor 25%, transparent);
}

.btn-default:hover,
.btn-default:focus,
.btn-default:active {
    border-color: rgba(128, 128, 128, 0.55) !important;
    border-color: color-mix(in srgb, currentColor 42%, transparent) !important;
    background-color: rgba(128, 128, 128, 0.08);
    background-color: color-mix(in srgb, currentColor 6%, transparent);
}

/* Standalone-Eingabefelder (außerhalb von .input-group) dezent abrunden */
.form-control:not(.input-group .form-control) {
    border-radius: 6px;
}

.form-control {
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

/* Mengenauswahl ([-][ 0 ][+]) und andere Bootstrap .input-group Elemente
   exakt bündig auf einer Linie und mit durchgehend sichtbaren Rahmen halten */
.input-group .form-control {
    border-radius: 0;
}

.input-group > .form-control:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-addon:first-child {
    border-top-left-radius: 6px;
    border-bottom-left-radius: 6px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group > .form-control:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-addon:last-child {
    border-top-right-radius: 6px;
    border-bottom-right-radius: 6px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

/* 3. KALENDER & EVENT-KACHELN IN REIHEN */
.event-calendar td.has-events {
    border-radius: 6px;
}

.subevent-list .subevent-row {
    border-radius: 8px;
}

/* 4. WARENKORB & HINWEISBOXEN (INKL. TESTMODUS-BANNER MIT LINKEM ICON-BALKEN) */
.cart-row {
    padding: 12px 8px;
}

.alert {
    border-radius: 6px;
    overflow: hidden;
}

/* ==========================================================================
   6. FOOTER & PLATTFORM-RECHTSTEXTE (ADAPTIV IN SHOP & WIDGET-IFRAME)
   ========================================================================== */
footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin-top: 40px;
    padding-bottom: 24px;
}

footer nav ul {
    margin-bottom: 0;
    padding-left: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 16px;
}

footer nav ul li a {
    font-weight: 500;
}

.falkenthal-platform-bar {
    width: 100%;
    margin-top: 14px;
    padding-top: 16px;
    border-top: 1px solid rgba(128, 128, 128, 0.2);
    border-top-color: color-mix(in srgb, currentColor 15%, transparent);
    font-size: 12px;
    color: inherit;
    opacity: 0.78;
    text-align: center;
    line-height: 1.6;
}

.falkenthal-platform-bar .falkenthal-platform-info {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 4px 0;
    max-width: 100%;
    padding: 0 8px;
}

.falkenthal-platform-bar .ft-brand {
    font-weight: 600;
    color: inherit;
    letter-spacing: 0.02em;
}

.falkenthal-platform-bar a {
    color: inherit !important;
    text-decoration: none !important;
    font-weight: 500;
    opacity: 0.92;
    transition: opacity 0.15s ease, text-decoration 0.15s ease;
}

.falkenthal-platform-bar a:hover,
.falkenthal-platform-bar a:focus {
    opacity: 1;
    text-decoration: underline !important;
}

.falkenthal-platform-bar .ft-sep {
    margin: 0 6px;
    opacity: 0.55;
}

/* Garantierte Sichtbarkeit der Plattform-Pflichtangaben im eingebetteten Pretix-Widget (Checkout-iFrame) */
.is-iframe footer,
body.iframe footer,
body[data-iframe] footer {
    display: flex !important;
    visibility: visible !important;
    margin-top: 20px;
    padding-bottom: 14px;
}

.is-iframe .falkenthal-platform-bar,
body.iframe .falkenthal-platform-bar,
body[data-iframe] .falkenthal-platform-bar {
    display: block !important;
    visibility: visible !important;
}

@media (max-width: 767px) {
    .falkenthal-platform-bar {
        font-size: 11px;
    }
    .falkenthal-platform-bar .ft-sep {
        margin: 0 4px;
    }
}



