/* 6dates Promotion — Self-Service + Badges (dunkel/pink #D20F41). */
.sixd-promo{margin:28px 0;}
.sixd-promo h3{color:#fff;font-family:Candal,system-ui,sans-serif;margin:0 0 8px;}
.sixd-promo__balance{color:rgba(255,255,255,.8);font-size:14px;margin:0 0 14px;}
.sixd-promo__balance a{color:#ff5b86;}
.sixd-promo__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;}
.sixd-promo__card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:6px;}
.sixd-promo__card.is-active{border-color:#1faa59;}
.sixd-promo__head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;}
.sixd-promo__name{color:#fff;font-weight:700;}
.sixd-promo__state{color:#1faa59;font-size:12px;white-space:nowrap;}
.sixd-promo__desc{color:rgba(255,255,255,.62);font-size:13px;margin:0;}
.sixd-promo__price{color:#ff5b86;font-weight:700;margin:4px 0 0;}
.sixd-promo__price span{color:rgba(255,255,255,.5);font-weight:400;font-size:12px;}
.sixd-promo__voucher{display:block;color:rgba(255,255,255,.6);font-size:12px;margin:8px 0 6px;}
.sixd-promo__voucher input{width:100%;margin-top:3px;}
.sixd-promo__btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;}
.sixd-promo__btns .sixd-btn{flex:1 1 auto;font-size:13px;}
.sixd-btn--ghost{background:transparent;border:1px solid #D20F41;color:#fff;}
.sixd-promo__hint{color:rgba(255,255,255,.5);font-size:12px;margin-top:12px;}

/* Badges (Verzeichnis-Karte + Profil-Detail) */
.sixd-promo-badge{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;margin:0 4px 4px 0;line-height:1.4;}
.sixd-promo-badge--top{background:#D20F41;color:#fff;}
.sixd-promo-badge--hl{background:rgba(255,91,134,.18);color:#ff5b86;border:1px solid #ff5b86;}
.sixd-promo-badge--fast{background:rgba(31,170,89,.16);color:#46c97f;border:1px solid #46c97f;}

/* Hervorgehobene Karte (Rahmen) */
.sixd-card--promo{outline:2px solid #D20F41;outline-offset:-2px;box-shadow:0 6px 22px rgba(210,15,65,.25);}

/* --- Bezahl-Modal (guthaben-bewusst) --- */
.sixd-pay{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;}
.sixd-pay__ov{position:absolute;inset:0;background:rgba(0,0,0,.6);}
.sixd-pay__card{position:relative;z-index:1;width:min(420px,92vw);max-height:90vh;overflow:auto;background:linear-gradient(160deg,#1d0c11,#14080a);border:1px solid #D20F41;border-radius:18px;padding:22px;color:#fff;box-shadow:0 20px 60px rgba(0,0,0,.6);}
.sixd-pay__x{position:absolute;top:10px;right:12px;background:none;border:none;color:#ffb3c6;font-size:24px;cursor:pointer;line-height:1;}
.sixd-pay__card h3{margin:0 24px 2px 0;font-family:Candal,system-ui,sans-serif;}
.sixd-pay__price{color:#ff5b86;font-weight:700;margin:0 0 12px;}
.sixd-pay__price span{color:rgba(255,255,255,.5);font-weight:400;font-size:13px;}
.sixd-pay__bal{color:rgba(255,255,255,.8);font-size:14px;margin:0 0 12px;}
.sixd-pay__short{color:rgba(255,255,255,.72);font-size:14px;margin:0 0 10px;}
.sixd-pay__btn{display:block;width:100%;box-sizing:border-box;text-align:center;cursor:pointer;border-radius:12px;padding:13px 16px;font-size:15px;font-weight:700;border:1px solid #D20F41;background:#D20F41;color:#fff;margin:8px 0;transition:.15s;text-decoration:none;}
.sixd-pay__btn:hover{background:#ef1a52;}
.sixd-pay__btn--ghost{background:transparent;color:#fff;}
.sixd-pay__btn:disabled{opacity:.5;cursor:default;}
.sixd-pay__alt{margin-top:6px;}
.sixd-pay__alt summary{color:rgba(255,255,255,.6);font-size:13px;cursor:pointer;}
.sixd-pay__voucher{width:100%;box-sizing:border-box;margin:10px 0 4px;padding:9px 11px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.3);color:#fff;}
.sixd-pay__qr{display:flex;justify-content:center;background:#fff;border-radius:12px;padding:8px;width:fit-content;margin:10px auto;}
.sixd-pay__h4{margin:0 0 4px;color:#fff;}
.sixd-pay__hint{color:rgba(255,255,255,.6);font-size:13px;}
.sixd-pay__waiting{color:#ffb3c6;font-size:14px;display:flex;align-items:center;gap:8px;justify-content:center;margin-top:10px;}
.sixd-pay__spin{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#D20F41;border-radius:50%;display:inline-block;animation:sixdSpin .8s linear infinite;}
@keyframes sixdSpin{to{transform:rotate(360deg);}}
.sixd-pay__ok{color:#46c97f;font-size:18px;font-weight:700;text-align:center;margin:18px 0 6px;}
.sixd-pay__err{color:#ff6b6b;text-align:center;margin:14px 0;}
.sixd-pay__load{color:rgba(255,255,255,.7);text-align:center;padding:18px 0;}
