/* =============================================================================
   Gemeinsame Styles für den Checkout-Flow (warenkorb.php, rechnungsdaten.php,
   zahlung.php) – nur auf diesen drei Seiten eingebunden.
   ========================================================================== */

/* ===== Fortschrittsbalken (Warenkorb / Rechnungsdaten / Zahlung) ===== */
.checkout-steps {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
}
.checkout-steps li {
    flex: 1;
    text-align: center;
    padding: 1rem 0.5rem;
    background: #e9ecef;
    color: #6c757d;
    font-weight: 700;
    font-size: 1.25rem;
    position: relative;
}
/* Chevron zwischen den Schritten (Bootstrap-Icon statt CSS-Dreieck) */
.checkout-steps li:not(:last-child)::after {
    content: "\f285";
    font-family: "bootstrap-icons";
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    position: absolute;
    top: 50%;
    right: -0.5em;
    transform: translateY(-50%);
    font-size: 8rem;
    color: #e9ecef;
    z-index: 2;
}
.checkout-steps li.active {
    background: #111;
    color: #fff;
}
.checkout-steps li.active::after {
    color: #111;
}
@media (max-width: 575.98px) {
    .checkout-steps li {
        font-size: 0.75rem;
        padding: 0.6rem 0.25rem;
    }
    .checkout-steps li:not(:last-child)::after {
        font-size: 3.8rem;
        right: -0.4em;
    }
}

/* ===== Bestellübersicht rechts (rechnungsdaten.php + zahlung.php) ===== */
.order-item {
    border-top: 1px solid #dee2e6;
}
.order-detail {
    background: #f1f3f5;
    font-size: 0.9rem;
}
.order-detail div {
    padding: 0.15rem 0;
}

/* Zahlung: PayPal-Buttons ausgegraut, solange AGB und Datenschutz nicht bestätigt sind */
.paypal-wrap .paypal-sperre {
    display: none;
    position: absolute;
    inset: 0;
    z-index: 10;
    cursor: not-allowed;
}

.paypal-wrap.paypal-gesperrt #paypal-button-container {
    opacity: .4;
    filter: grayscale(1);
    transition: opacity .15s, filter .15s;
}

.paypal-wrap.paypal-gesperrt .paypal-sperre {
    display: block;
}

/* ===== Warenkorb (warenkorb.php): Positions-Karten ===== */
.cart-empty {
    padding: 3rem 1rem;
    text-align: center;
    color: #6c757d;
}

/* Positions-Karten */
.cart-item {
    position: relative;
    background: #fff;
    border: 1px solid #e9ecef;
    border-radius: 0.75rem;
    padding: 1.25rem 1.5rem;
    margin-bottom: 1rem;
}
.cart-item.cart-item-alt {
    background: #f8f9fa;
}
.cart-item .cart-item-head {
    font-weight: 700;
    font-size: 1.05rem;
    padding-right: 2rem;   /* Platz für den Entfernen-Button oben rechts */
}
.cart-item .cart-teilnehmer-name {
    font-size: 0.9rem;
    color: #495057;
    margin: 0.35rem 0 0.5rem;
}
.cart-item .cart-teilnehmer-name .bi { color: #adb5bd; margin-right: 0.35rem; }
.cart-item .cart-remove-btn {
    position: absolute;
    top: 1.1rem;
    right: 1.25rem;
    font-size: 1rem;
    line-height: 1;
}
.cart-item .cart-preis-zeile {
    display: flex; justify-content: flex-end; align-items: center;
    margin-top: 0.75rem; padding-top: 0.75rem;
    border-top: 1px solid rgba(0, 0, 0, .06);
}
.cart-detail dl { margin-bottom: 0; }
.cart-detail dt { font-weight: 600; color: #495057; }
.cart-detail dd { margin-bottom: 0.5rem; }

/* ===== Rechnungsdaten (rechnungsdaten.php): Teilnehmer-übernehmen-Button ===== */
/* Teilnehmer-Übernehmen-Button */
.tn-btn {
    display:inline-flex; align-items:center; gap:0.45rem;
    padding:0.4rem 0.8rem; border:2px solid var(--bs-primary); border-radius:0.5rem;
    background:#fff; color:var(--bs-primary); cursor:pointer; font-size:0.9rem; font-weight:600;
}
.tn-btn:hover { background:rgba(var(--bs-primary-rgb), .08); }

/* ===== Anfangs ausgeblendete Fehler-/Hinweisboxen (vorher style="display:none"); das Skript blendet sie
   per style.display = 'block' / 'none' ein bzw. aus ===== */
#gutscheinFehler,
#landHinweis {
    display: none;
}

/* Zahlung: Button "Buchung kostenlos abschließen" ausgegraut, bis AGB und Datenschutz bestätigt sind */
.gutschein-buchen-gesperrt {
    opacity: .4;
    filter: grayscale(1);
    cursor: not-allowed;
}
