.vip-app{font-family:Arial,sans-serif;max-width:930px;margin:20px auto;color:#10243a}.vip-app *{box-sizing:border-box}.vip-hero,.vip-card{border:1px solid #c9dce8;border-radius:20px;background:#fff;padding:28px;margin:18px 0}.vip-hero{display:flex;gap:20px;align-items:center;background:#eef7fc}.vip-logo{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#1c5e8c;font-size:28px}.vip-kicker,.vip-step{font-weight:700;color:#1c5e8c}.vip-hero h1{font-size:38px;margin:4px 0}.vip-hero p{margin:0;color:#5f7383;font-size:18px}.vip-card h2{font-size:30px;margin:8px 0 14px}.vip-card h3{font-size:23px;margin:6px 0}.vip-lead{font-size:18px;line-height:1.55}.vip-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px;align-items:center}.vip-actions form{margin:0}.vip-btn{display:inline-block;border:2px solid #1c5e8c;background:#fff;color:#0f5077;border-radius:12px;padding:14px 20px;font-weight:800;text-decoration:none;cursor:pointer;font-size:15px}.vip-primary{background:#1c5e8c;color:#fff}.vip-danger{border-color:#a52b2b;color:#8d1f1f}.vip-card label{display:block;font-weight:700;margin:16px 0}.vip-card input,.vip-card textarea,.vip-card select{display:block;width:100%;margin-top:7px;border:1px solid #b7cfdd;border-radius:10px;padding:14px;font-size:18px;background:#fff}.vip-notice{padding:14px 18px;border-radius:12px;margin:16px 0}.vip-ok{background:#effaf2;border:1px solid #87c998}.vip-error{background:#fff3f3;border:1px solid #d99}.vip-club{border:1px solid #c9dce8;border-radius:14px;padding:18px;margin:14px 0;background:#fbfdff}.vip-verified{display:inline-block;background:#e8f7ee;border:1px solid #8bc7a1;border-radius:999px;padding:7px 11px;font-weight:700;color:#28643f}.vip-info{background:#eef7fc;border-radius:12px;padding:16px;margin:18px 0}.vip-clubmeta{margin-top:12px;padding-top:12px;border-top:1px solid #d7e5ed;line-height:1.65}.vip-clubmeta a{color:#0f5077}.vip-nav{display:flex;gap:10px;flex-wrap:wrap;background:#eef7fc;border:1px solid #c9dce8;border-radius:14px;padding:12px 16px;margin:18px 0}.vip-nav a{font-weight:800;color:#0f5077;text-decoration:none;padding:8px 10px;border-radius:8px}.vip-nav-primary{background:#1c5e8c!important;color:#fff!important}.vip-club-header{border:2px solid #bad2e1;border-radius:15px;background:#f6fbfe;padding:18px;margin-bottom:22px}.vip-club-header h3{font-size:26px;margin:10px 0 4px}.vip-club-line{font-weight:700;margin:0;color:#526c7d}.vip-origin{margin-top:12px;padding-top:10px;border-top:1px dashed #bdd4e2;font-size:14px;font-weight:700;color:#536f80}.vip-info-body{padding-top:2px}.vip-info-top{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.vip-category{display:inline-block;border-radius:999px;background:#e8f3fa;color:#0f5077;padding:6px 10px;font-weight:800;font-size:14px}.vip-period{font-size:14px;color:#5f7383;font-weight:700}.vip-cover{width:100%;max-height:360px;object-fit:cover;border-radius:14px;margin:10px 0 18px}.vip-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.vip-gallery img{width:100%;height:210px;object-fit:cover;border-radius:12px;border:1px solid #c9dce8}.vip-text{font-size:18px;line-height:1.65}.vip-event{font-size:17px}.vip-own-info{display:grid;grid-template-columns:1fr 130px;gap:16px;border:1px solid #c9dce8;border-radius:14px;padding:16px;margin:14px 0;align-items:start}.vip-own-info>img{width:130px;height:100px;object-fit:cover;border-radius:10px}.vip-own-info .vip-actions{grid-column:1/-1}.vip-fieldset{border:1px solid #c9dce8;border-radius:14px;padding:16px;margin:20px 0}.vip-fieldset legend{font-weight:800;font-size:18px;padding:0 6px}.vip-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.vip-speech{border:1px solid #1c5e8c;background:#eef7fc;color:#0f5077;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer;margin-top:-8px}.vip-speech.is-listening{background:#fff2d8}.vip-file-preview,.vip-edit-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.vip-file-preview img,.vip-edit-gallery img{width:100%;height:150px;object-fit:cover;border-radius:10px;border:1px solid #c9dce8}.vip-edit-gallery form{margin-top:6px}.vip-small-danger{width:100%;border:1px solid #b62e2e;color:#991f1f;background:#fff;border-radius:8px;padding:7px;font-weight:800;cursor:pointer}.vip-preview-card{border:3px solid #1c5e8c}.vip-preview-card[hidden]{display:none!important}
@media(max-width:700px){.vip-app{margin:10px}.vip-hero{padding:20px}.vip-hero h1{font-size:30px}.vip-card{padding:20px}.vip-card h2{font-size:26px}.vip-actions{display:grid;grid-template-columns:1fr}.vip-actions form,.vip-btn{width:100%;text-align:center}.vip-two{grid-template-columns:1fr}.vip-gallery,.vip-file-preview,.vip-edit-gallery{grid-template-columns:1fr 1fr}.vip-gallery img{height:180px}.vip-own-info{grid-template-columns:1fr}.vip-own-info>img{width:100%;height:180px}.vip-nav{display:grid;grid-template-columns:1fr 1fr;text-align:center}.vip-club-header h3{font-size:23px}}
@media(max-width:390px){.vip-gallery,.vip-file-preview,.vip-edit-gallery,.vip-nav{grid-template-columns:1fr}}

/* V002.1 – Kontrastkorrektur Registrierung / Buttons */
.vip-app .vip-card input,
.vip-app .vip-card textarea,
.vip-app .vip-card select {
  color:#10243a !important;
  -webkit-text-fill-color:#10243a !important;
  opacity:1 !important;
}
.vip-app .vip-card input::placeholder,
.vip-app .vip-card textarea::placeholder {
  color:#718493 !important;
  -webkit-text-fill-color:#718493 !important;
  opacity:1 !important;
}
.vip-app .vip-btn.vip-primary,
.vip-app button.vip-btn.vip-primary,
.vip-app a.vip-btn.vip-primary,
.vip-app .vip-btn.vip-primary:visited,
.vip-app .vip-btn.vip-primary:hover,
.vip-app .vip-btn.vip-primary:focus {
  background:#1c5e8c !important;
  border-color:#1c5e8c !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* V002.2 – Formularfelder gegen Theme-/Browser-Dark-Overrides absichern */
.vip-app .vip-card input,
.vip-app .vip-card textarea,
.vip-app .vip-card select,
.vip-app .vip-card input:focus,
.vip-app .vip-card textarea:focus,
.vip-app .vip-card select:focus,
.vip-app .vip-card input:invalid,
.vip-app .vip-card input:valid,
.vip-app .vip-card input[type="url"],
.vip-app .vip-card input[type="email"],
.vip-app .vip-card input[type="text"],
.vip-app .vip-card input[type="password"] {
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#10243a !important;
  -webkit-text-fill-color:#10243a !important;
  caret-color:#10243a !important;
  border-color:#b7cfdd !important;
  box-shadow:none !important;
  -webkit-box-shadow:none !important;
  color-scheme:light !important;
}
.vip-app .vip-card input:-webkit-autofill,
.vip-app .vip-card input:-webkit-autofill:hover,
.vip-app .vip-card input:-webkit-autofill:focus,
.vip-app .vip-card input:-webkit-autofill:active {
  -webkit-text-fill-color:#10243a !important;
  caret-color:#10243a !important;
  -webkit-box-shadow:0 0 0 1000px #ffffff inset !important;
  box-shadow:0 0 0 1000px #ffffff inset !important;
  background-color:#ffffff !important;
  transition:background-color 99999s ease-out 0s;
}
.vip-app .vip-card input::-webkit-credentials-auto-fill-button,
.vip-app .vip-card input::-webkit-contacts-auto-fill-button {
  visibility:hidden;
  pointer-events:none;
}


/* V003 – KI-Redaktionshilfe */
.vip-ai-box{background:#f7fbfe}.vip-ai-box legend{color:#0f5077}.vip-ai-choice select{margin-top:8px}.vip-ai-primary{background:#1c5e8c!important;color:#fff!important;-webkit-text-fill-color:#fff!important}.vip-ai-primary:disabled{opacity:.55;cursor:not-allowed}.vip-ai-status{margin-top:12px;padding:11px 13px;border-radius:10px;background:#eef7fc;color:#526c7d;line-height:1.45}.vip-ai-status.is-error{background:#fff3f3;color:#8d1f1f;border:1px solid #e1b0b0}.vip-ai-status.is-ok{background:#eff8f1;color:#285f3d}.vip-ai-actions{margin-top:12px}


/* V003.1 – robuste Mehrfachbilder und Termin-Uhrzeit */
.vip-image-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 8px}.vip-image-slot{margin:0!important;padding:10px;border:1px dashed #9fc0d4;border-radius:10px;background:#fbfdff}.vip-image-slot span{display:block;font-weight:800;margin-bottom:6px}.vip-image-slot input[type=file]{font-size:14px;padding:10px;margin-top:0}.vip-card input[type=time]{color-scheme:light!important;background:#fff!important;color:#10243a!important;-webkit-text-fill-color:#10243a!important}.vip-card label small{display:block;margin-top:6px;font-weight:400;color:#5f7383}.vip-ai-box select{background:#fff!important;color:#10243a!important}
@media(max-width:700px){.vip-image-slots{grid-template-columns:1fr}}


.vip-club-details{margin-top:14px;border-top:1px solid #d7e5ed;padding-top:12px}.vip-club-details summary{display:block;cursor:pointer;border:2px solid #1c5e8c;border-radius:10px;padding:11px 14px;font-weight:800;color:#0f5077;background:#fff;list-style:none;position:relative;padding-right:42px}.vip-club-details summary::-webkit-details-marker{display:none}.vip-club-details summary:after{content:'▾';position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:20px}.vip-club-details[open] summary:after{content:'▴'}.vip-club-details .vip-clubmeta{margin-top:10px;padding:14px;background:#fff;border:1px solid #d7e5ed;border-radius:10px}.vip-club-description{margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #e3edf3}.vip-text p{margin:0 0 1em}.vip-text p:last-child{margin-bottom:0}.vip-text-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0 18px}.vip-paragraph{border:1px solid #1c5e8c;background:#eef7fc;color:#0f5077;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer}.vip-text-tools span{font-size:14px;color:#5f7383;line-height:1.45}.vip-preview-card .vip-text p{margin:0 0 1em}
@media(max-width:700px){.vip-club-details summary{font-size:16px;padding:13px 42px 13px 14px}.vip-text-tools{display:grid;grid-template-columns:1fr}.vip-paragraph{width:100%}}


/* V003.3 – kompakte Bildvorschau */
.vip-app .vip-more-images{
  margin:10px 0 14px;
  padding:9px 12px;
  border:1px solid #c9dce8;
  border-radius:10px;
  background:#f3f9fd;
  color:#31546c;
  font-size:.95rem;
  font-weight:700;
}
.vip-app .vip-preview-gallery img{
  width:100%;
  max-height:520px;
  object-fit:cover;
}


/* V003.4 – Vereinssuche & Filter */
.vip-club-search{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:14px;align-items:end;margin:20px 0 12px;padding:18px;border:1px solid #c9dce8;border-radius:14px;background:#f7fbfe}.vip-club-search label{margin:0!important}.vip-club-search label>span{display:block;font-weight:800;margin-bottom:7px}.vip-club-search input,.vip-club-search select{margin-top:0!important}.vip-club-search-actions{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap;margin-top:2px}.vip-club-results{margin:12px 0 18px;color:#526c7d}.vip-pagination{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:20px;padding-top:18px;border-top:1px solid #d7e5ed}.vip-pagination span{font-weight:800;color:#526c7d}.vip-club-directory{scroll-margin-top:20px}
@media(max-width:760px){.vip-club-search{grid-template-columns:1fr}.vip-club-search-actions{grid-column:auto;display:grid;grid-template-columns:1fr}.vip-club-search-actions .vip-btn{width:100%;text-align:center}.vip-pagination{display:grid;grid-template-columns:1fr;text-align:center}.vip-pagination .vip-btn{width:100%;text-align:center}}


/* V003.5 – Schnellzugriff statt einzelner Start-Box */
.vip-quick-access{border:1px solid #c9dce8;border-radius:18px;background:#eef7fc;padding:20px;margin:18px 0}.vip-quick-access h2{font-size:24px;margin:0 0 14px;color:#10243a}.vip-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vip-quick-link{display:flex;align-items:center;gap:12px;min-height:72px;padding:14px 16px;border:2px solid #1c5e8c;border-radius:14px;background:#fff;color:#0f5077!important;-webkit-text-fill-color:#0f5077!important;text-decoration:none!important;font-weight:800;line-height:1.3}.vip-quick-link:hover,.vip-quick-link:focus{background:#f7fbfe;color:#0f5077!important;-webkit-text-fill-color:#0f5077!important}.vip-quick-icon{font-size:24px;flex:0 0 auto}.vip-quick-access,.vip-card#vip-infos{scroll-margin-top:20px}
@media(max-width:700px){.vip-quick-access{padding:18px}.vip-quick-access h2{font-size:23px}.vip-quick-grid{grid-template-columns:1fr}.vip-quick-link{min-height:68px;font-size:17px}}

/* V004 – Vereinslogo & Vereinsverwaltung */
.vip-club-main{display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center}.vip-club-headcopy{min-width:0;width:100%;text-align:center}.vip-club-logo{width:92px;height:92px;object-fit:contain;border-radius:14px;border:1px solid #c9dce8;background:#fff;padding:7px;flex:0 0 auto;margin:0 auto}.vip-club-headcopy .vip-verified{margin-top:10px}.vip-logo-preview{display:block;max-width:180px;max-height:150px;object-fit:contain;border:1px solid #c9dce8;border-radius:12px;background:#fff;padding:8px;margin:8px 0 12px}.vip-fieldset small{display:block;color:#5f7383;line-height:1.45}.vip-card input[type=file]{background:#fff!important;color:#10243a!important;-webkit-text-fill-color:#10243a!important}
@media(max-width:520px){.vip-club-main{align-items:center;text-align:center}.vip-club-logo{width:82px;height:82px}.vip-club-headcopy .vip-verified{font-size:13px}.vip-club-headcopy h3{font-size:21px}}

/* V005 – Entwürfe, Verlängerung, Kalender */
.vip-inline-form{display:inline-flex;margin:0}.vip-draft{border-style:dashed}.vip-extend{font-weight:800}.vip-public-actions{margin-top:22px}.vip-calendar-btn{display:inline-flex;align-items:center;justify-content:center}.vip-own-info .vip-actions form{margin:0}
@media(max-width:700px){.vip-public-actions{display:grid;grid-template-columns:1fr}.vip-public-actions .vip-btn{width:100%;text-align:center}.vip-own-info .vip-actions{display:grid;grid-template-columns:1fr}.vip-own-info .vip-actions .vip-btn,.vip-own-info .vip-actions form,.vip-own-info .vip-actions form button{width:100%}}

/* V006 – Meldungen & Moderation */
.vip-report-box{margin-top:24px;border-top:1px solid #d7e5ed;padding-top:16px}.vip-report-box summary{display:block;cursor:pointer;border:2px solid #b74646;border-radius:12px;padding:12px 15px;background:#fff;color:#8f2525;font-weight:800;list-style:none;position:relative;padding-right:42px}.vip-report-box summary::-webkit-details-marker{display:none}.vip-report-box summary:after{content:'▾';position:absolute;right:15px;top:50%;transform:translateY(-50%)}.vip-report-box[open] summary:after{content:'▴'}.vip-report-inner{margin-top:12px;padding:16px;border:1px solid #e2c2c2;border-radius:12px;background:#fffafa}.vip-report-inner p{margin-top:0}.vip-report-submit{border-color:#b74646!important;color:#8f2525!important;background:#fff!important;-webkit-text-fill-color:#8f2525!important}.vip-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){.vip-report-box summary{font-size:16px;padding:14px 42px 14px 14px}.vip-report-submit{width:100%}}

.vip-detail-back{margin:0 0 14px}.vip-detail-back--bottom{margin:14px 0 0}.vip-detail-back .vip-btn{display:inline-flex;align-items:center;justify-content:center;text-align:center}
@media(max-width:700px){.vip-detail-back .vip-btn{width:100%;box-sizing:border-box}}


/* V006.3 – Vereinskopf: Logo zwingend oben zentriert, darunter Vereinsname */
.vip-app .vip-club-header .vip-club-main{display:grid!important;grid-template-columns:minmax(0,1fr)!important;justify-items:center!important;align-items:start!important;text-align:center!important;gap:10px!important;width:100%!important}
.vip-app .vip-club-header .vip-club-logo{display:block!important;float:none!important;position:static!important;grid-column:1!important;grid-row:auto!important;margin:0 auto 8px!important;width:92px!important;height:92px!important;max-width:92px!important;object-fit:contain!important}
.vip-app .vip-club-header .vip-club-name{display:block!important;float:none!important;position:static!important;width:100%!important;margin:2px 0 2px!important;text-align:center!important;font-size:26px!important;line-height:1.2!important}
.vip-app .vip-club-header .vip-club-line{display:block!important;width:100%!important;margin:0!important;text-align:center!important}
.vip-app .vip-club-header .vip-verified{display:inline-block!important;float:none!important;position:static!important;margin:10px auto 0!important;max-width:100%!important;text-align:center!important}
@media(max-width:520px){.vip-app .vip-club-header .vip-club-logo{width:82px!important;height:82px!important;max-width:82px!important}.vip-app .vip-club-header .vip-club-name{font-size:23px!important}}
