/* Eingebettete Stripe-Zahlung (components/EingebetteteZahlung.tsx) */
body.zf-offen{overflow:hidden}
.zf-hg{position:fixed;inset:0;z-index:1000;background:rgba(16,20,24,.55);display:flex;align-items:flex-start;justify-content:center;padding:4vh 16px;overflow-y:auto;animation:zf-ein .18s ease-out}
.zf-box{background:var(--panel);border-radius:var(--r);box-shadow:0 24px 64px -24px rgba(16,20,24,.45);width:100%;max-width:560px;padding:20px 20px 16px;position:relative}
.zf-kopf{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.zf-kopf h2{font-family:var(--fd);font-size:19px;margin:2px 0 0;line-height:1.25}
.zf-zu{flex:none;width:40px;height:40px;border-radius:999px;border:1px solid var(--line);background:var(--panel);font-size:24px;line-height:1;color:var(--fg2);cursor:pointer}
.zf-zu:hover{background:var(--panel2)}
.zf-stripe{min-height:200px}
.zf-fuss{margin:12px 2px 0;text-align:center}
.zf-lade-box{display:flex;align-items:center;justify-content:center;gap:10px;min-height:260px;color:var(--fg2);font-size:15px}
.zf-spin{width:20px;height:20px;border-radius:50%;border:2.5px solid var(--mint);border-top-color:var(--green);animation:zf-dreh .8s linear infinite}
.zf-erfolg{text-align:center;padding:16px 4px 8px}
.zf-erfolg h3{font-family:var(--fd);font-size:20px;margin:12px 0 6px}
.zf-erfolg p{color:var(--fg2);max-width:420px;margin:0 auto 16px;line-height:1.5}
.zf-haken{width:56px;height:56px;margin:0 auto;border-radius:50%;background:var(--mint);color:var(--green);font-size:30px;font-weight:700;display:flex;align-items:center;justify-content:center}
.zf-erfolg.warte .zf-haken{background:var(--ad);color:var(--adtxt)}
.zf-lade{display:block;margin-top:6px}
@keyframes zf-dreh{to{transform:rotate(360deg)}}
@keyframes zf-ein{from{opacity:0}to{opacity:1}}
@media (max-width:640px){
  .zf-hg{padding:0;align-items:stretch}
  .zf-box{max-width:none;min-height:100%;border-radius:0;padding:12px 14px calc(16px + env(safe-area-inset-bottom))}
  .zf-kopf{position:sticky;top:0;background:var(--panel);z-index:2;margin:-12px -14px 12px;padding:12px 14px}
}
