/* verein.css v1 - Vereinsbonus */
.vb .vb-code{display:inline-flex;flex-direction:column;gap:2px;margin:12px 0;padding:12px 18px;border:2px dashed #c9a24b;border-radius:10px;background:#faf6ee}
.vb .vb-code span{font-size:.8em;letter-spacing:.08em;text-transform:uppercase;opacity:.7}
.vb .vb-code b{font-size:1.6em;letter-spacing:.06em}
.vb .vb-qr img{display:block;max-width:240px;width:100%;height:auto;margin:10px 0;border:1px solid #e3d9c2;border-radius:8px;background:#fff}
.vb .vb-link{font-family:monospace;font-size:.9em;word-break:break-all}
.vb .vb-form{display:grid;gap:12px;max-width:520px;margin:10px 0 20px}
.vb .vb-form label{display:grid;gap:4px;font-weight:600}
.vb .vb-form input{padding:10px 12px;border:1px solid #c9c2b0;border-radius:8px;font:inherit}
.vb .vb-form .vb-check{grid-template-columns:auto 1fr;align-items:start;font-weight:400}
.vb .vb-form .vb-check input{width:auto;margin-top:4px}
.vb .vb-honig{position:absolute;left:-9999px}
.vb .vb-ok{padding:14px 18px;border:1px solid #c9a24b;border-radius:10px;background:#faf6ee}
.vb .vb-fehler{padding:10px 14px;border-left:3px solid #e04e1b;background:#fdf1ec}
.vb-admin{font-family:system-ui,sans-serif;padding:20px;color:#141414}
.vb-admin table{border-collapse:collapse;width:100%;font-size:.9em}
.vb-admin th,.vb-admin td{border:1px solid #ddd;padding:6px 8px;vertical-align:top;text-align:left}
.vb-admin tr.gesperrt td{opacity:.5}
.vb-admin tr.detail td{background:#fafafa;border-top:0}

/* v1.2 - Landingpage nach dem Scan (mobil zuerst) */
.vb .vb-hero{background:linear-gradient(160deg,#152027 0%,#1d2b33 60%,#0e7c86 140%);color:#f6f4ef;border-radius:16px;padding:22px 20px 24px;margin:6px 0 18px;box-shadow:0 12px 32px rgba(0,0,0,.25)}
.vb .vb-hero-kopf h1{font-family:"Playfair Display",Georgia,serif;font-size:1.65rem;line-height:1.2;margin:6px 0 14px;color:#fffdf9}
.vb .vb-kicker{display:inline-block;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:#c9a24b}
.vb .vb-hero-badge{display:flex;align-items:center;gap:14px;background:#e04e1b;color:#fffdf9;border-radius:14px;padding:12px 16px;margin:0 0 14px}
.vb .vb-badge-prozent{font-size:2.2rem;font-weight:800;line-height:1}
.vb .vb-badge-text{font-size:1rem;font-weight:700;line-height:1.25}
.vb .vb-hero-text{color:#c9d3d8;font-size:.98rem;line-height:1.5;margin:0 0 14px}
.vb .vb-hero .vb-code{display:flex;align-items:center;justify-content:space-between;background:#fffdf9;color:#141414;border:0;margin:0 0 12px;padding:12px 16px;border-radius:12px}
.vb .vb-hero .vb-code span{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#555}
.vb .vb-hero .vb-code b{font-size:1.5rem;letter-spacing:.08em}
.vb .vb-btn{display:block;text-align:center;padding:14px 18px;border-radius:999px;font-weight:700;font-size:1.05rem;text-decoration:none;color:#141414;background:linear-gradient(135deg,#ff9a3c,#c9a24b);margin:0 0 10px;box-shadow:0 6px 18px rgba(201,162,75,.35)}
.vb .vb-btn-zweit{background:transparent;color:#f6f4ef;border:1.5px solid #7d939b;box-shadow:none;font-weight:500}
.vb .vb-liste{list-style:none;padding:0;margin:14px 0 0;color:#c9d3d8;font-size:.9rem}
.vb .vb-liste li{padding:6px 0 6px 22px;position:relative;border-top:1px solid rgba(255,255,255,.08)}
.vb .vb-liste li::before{content:"✓";position:absolute;left:2px;color:#c9a24b;font-weight:700}
@media (min-width:720px){.vb .vb-hero{padding:32px 34px}.vb .vb-hero-kopf h1{font-size:2.1rem}.vb .vb-btn{display:inline-block;min-width:260px;margin-right:10px}}
