.vpp-admin-modern{--vpp-red:#b30000;--vpp-dark:#111827;--vpp-muted:#6b7280;--vpp-border:#e5e7eb;--vpp-bg:#f8fafc;max-width:1380px}.vpp-admin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin:1.25rem 0 1.2rem;padding:1.2rem 1.35rem;border-radius:18px;background:linear-gradient(135deg,#fff,#f3f4f6);border:1px solid var(--vpp-border);box-shadow:0 8px 24px rgba(15,23,42,.06)}.vpp-admin-head h1{margin:0;font-size:clamp(1.6rem,2.4vw,2.4rem);line-height:1.15}.vpp-admin-head p{margin:.4rem 0 0;color:var(--vpp-muted);font-size:15px}.vpp-admin-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin:18px 0 24px}.vpp-admin-card{background:#fff;border:1px solid var(--vpp-border);border-radius:18px;padding:18px;box-shadow:0 8px 20px rgba(15,23,42,.05);min-height:105px;overflow-wrap:anywhere}.vpp-admin-card strong{display:block;font-size:2rem;line-height:1.1;color:var(--vpp-dark)}.vpp-admin-card em{display:block;font-style:normal;font-weight:700;margin-top:.35rem}.vpp-admin-card small,.vpp-admin-card span{display:block;color:var(--vpp-muted);margin-top:.25rem}.vpp-kpi{position:relative}.vpp-kpi-icon{position:absolute;right:16px;top:14px;font-size:1.4rem}.vpp-tool-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin:18px 0}.vpp-tool-card{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--vpp-border);border-radius:18px;padding:18px;box-shadow:0 8px 20px rgba(15,23,42,.05);min-height:132px;overflow-wrap:anywhere}.vpp-tool-card h3{margin:0 0 .4rem;font-size:1.1rem}.vpp-tool-card p{margin:.2rem 0 .9rem;color:var(--vpp-muted);line-height:1.45}.vpp-tool-icon{width:42px;height:42px;border-radius:14px;background:#fef2f2;color:var(--vpp-red);display:grid;place-items:center;font-size:1.35rem;flex:0 0 42px}.vpp-admin-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:var(--vpp-red);color:#fff!important;border-radius:10px;padding:.6rem .85rem;font-weight:700;border:0;box-shadow:none}.vpp-admin-button.secondary{background:#fff!important;color:var(--vpp-dark)!important;border:1px solid var(--vpp-border)}.vpp-admin-panel{background:#fff;border:1px solid var(--vpp-border);border-radius:18px;padding:18px;margin:16px 0;box-shadow:0 8px 20px rgba(15,23,42,.05);overflow-wrap:anywhere}.vpp-admin-panel h2{margin-top:0}.vpp-modern-table{border-radius:14px;overflow:hidden;border:1px solid var(--vpp-border)!important}.vpp-modern-table th{background:#f9fafb!important;font-weight:800}.vpp-status-ok{color:#047857;font-weight:800}.vpp-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.vpp-settings-form label{display:block;font-weight:700;margin:.75rem 0;color:#1f2937}.vpp-settings-form input[type=text],.vpp-settings-form input[type=email],.vpp-settings-form input[type=password],.vpp-settings-form input:not([type]),.vpp-settings-form select{display:block;width:100%;max-width:100%;box-sizing:border-box;margin-top:.35rem;padding:.7rem .8rem;border:1px solid #d1d5db;border-radius:10px;background:#fff}.vpp-settings-form input[type=checkbox]{margin-right:.45rem}.vpp-admin-modern .widefat td,.vpp-admin-modern .widefat th{vertical-align:middle;overflow-wrap:anywhere;word-break:normal}.vpp-admin-modern *{box-sizing:border-box}@media(max-width:782px){.vpp-admin-head{display:block}.vpp-admin-button.secondary{margin-top:.8rem}.vpp-tool-card{display:block}.vpp-tool-icon{margin-bottom:.8rem}.vpp-settings-grid{grid-template-columns:1fr}.vpp-admin-cards{grid-template-columns:1fr}}

/* Mitgliederseite 4.0.1 */
.vpp-form-card .vpp-modern-form .vpp-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:18px}.vpp-modern-form label span{display:block;font-weight:650;margin-bottom:6px}.vpp-modern-form input,.vpp-modern-form select{width:100%;max-width:100%;border-radius:10px;border:1px solid #d0d5dd;padding:8px 10px}.vpp-check-row{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0}.vpp-check-row label{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:12px 14px;font-weight:600}.vpp-modern-table th,.vpp-modern-table td{white-space:normal;overflow-wrap:anywhere;word-break:normal;hyphens:auto;vertical-align:middle}.vpp-modern-table .button{white-space:nowrap}


/* VereinsPortal 4.0.2 – einheitliche Oberfläche und Mitglieder-Kursauswahl */
.vpp-admin-panel,.vpp-admin-card,.vpp-tool-card{border-radius:18px;box-shadow:0 10px 28px rgba(15,23,42,.06)}
.vpp-modern-form input,.vpp-modern-form select,.vpp-modern-form textarea{min-height:40px;background:#fff}
.vpp-course-box{background:linear-gradient(135deg,#fff,#f9fafb)}
.vpp-course-multi{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-top:10px}
.vpp-course-chip{display:flex;gap:8px;align-items:flex-start;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px;line-height:1.35;font-weight:600;overflow-wrap:anywhere;hyphens:auto}
.vpp-course-chip input{margin-top:2px;width:auto!important;min-height:auto!important}
.vpp-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 10px;background:#f3f4f6;color:#374151;font-weight:700;font-size:12px;white-space:nowrap}
.vpp-pill.yes{background:#ecfdf5;color:#047857}
.vpp-form-grid label,.vpp-modern-table td,.vpp-modern-table th{overflow-wrap:anywhere;hyphens:auto}
.vpp-admin-modern .button{border-radius:9px}
@media(max-width:782px){.vpp-course-multi{grid-template-columns:1fr}.vpp-modern-table{display:block;overflow-x:auto}.vpp-form-card .vpp-modern-form .vpp-form-grid{grid-template-columns:1fr}}

/* VereinsPortal Pro 4.1 Final – vereinheitlichte Oberflächen */
.vpp-day-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;margin-top:20px}.vpp-day-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 10px 28px rgba(15,23,42,.06);overflow:hidden}.vpp-day-card header{background:#b30000;color:#fff;padding:16px 18px}.vpp-day-card h2,.vpp-day-card h3{margin:0;color:inherit}.vpp-day-card header p{margin:.35rem 0 0;color:#fff;opacity:.92}.vpp-day-list{padding:12px}.vpp-training-row{display:flex;justify-content:space-between;gap:12px;padding:11px 10px;border-bottom:1px solid #f1f5f9;overflow-wrap:anywhere;hyphens:auto}.vpp-training-row:last-child{border-bottom:0}.vpp-training-row small{display:block;color:#6b7280;margin-top:3px}.vpp-add-training{padding:12px 16px;border-top:1px solid #e5e7eb}.vpp-mini-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-top:10px}.vpp-mini-form input,.vpp-mini-form select,.vpp-mini-form textarea{width:100%;border:1px solid #d1d5db;border-radius:9px;padding:7px 9px}.vpp-event-list{display:grid;gap:10px}.vpp-event-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;overflow-wrap:anywhere}.vpp-event-item small{display:block;color:#6b7280;margin-top:4px}.vpp-admin-modern textarea{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:8px 10px}.vpp-admin-modern input,.vpp-admin-modern select,.vpp-admin-modern textarea{overflow-wrap:anywhere}.vpp-admin-modern .vpp-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.vpp-admin-modern .vpp-form-grid label span,.vpp-admin-modern label span{display:block;font-weight:700;margin-bottom:6px}@media(max-width:782px){.vpp-day-grid{grid-template-columns:1fr}.vpp-event-item{display:block}.vpp-mini-form{grid-template-columns:1fr}}


/* VereinsPortal Pro 4.2.1 – interaktive Fahrtkosten & Vorstand-Rechte */
.vpp-travel-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;padding:14px;border:1px solid #e5e7eb;border-radius:14px;background:#f9fafb;margin-top:4px;transition:all .18s ease}
.vpp-travel-fields.is-hidden{display:none}
.vpp-inline-help{grid-column:1/-1;color:#6b7280;font-size:13px;line-height:1.45;background:#fff;border:1px dashed #d1d5db;border-radius:10px;padding:10px 12px}
.vpp-permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-top:10px}
.vpp-permission-box{background:linear-gradient(135deg,#fff,#f9fafb)}
.vpp-modern-table td .description{color:#6b7280}


/* VereinsPortal Pro 4.2.2 – Trainingszeiten wieder als klare Tageskarten */
.vpp-training-board .vpp-training-day-grid,
.vpp-training-day-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(310px,1fr))!important;gap:26px!important;align-items:start!important;margin-top:18px!important}
.vpp-training-day-card{background:#fff!important;border:1px solid #e5e7eb!important;border-radius:22px!important;box-shadow:0 12px 30px rgba(15,23,42,.08)!important;overflow:hidden!important;min-width:0!important}
.vpp-day-head{background:#b30000!important;color:#fff!important;padding:18px 20px!important}
.vpp-day-head h2,.vpp-day-head h3{margin:0!important;color:#fff!important;font-size:1.35rem!important;line-height:1.15!important;overflow-wrap:anywhere!important}
.vpp-day-head p{display:flex!important;flex-wrap:wrap!important;gap:8px 12px!important;margin:8px 0 0!important;color:#fff!important;opacity:.96!important;font-weight:700!important}
.vpp-day-head p span{display:inline-flex!important;background:rgba(255,255,255,.16)!important;border-radius:999px!important;padding:4px 10px!important}
.vpp-day-list{padding:14px!important;display:grid!important;gap:10px!important}
.vpp-training-item{display:block!important;padding:13px 14px!important;border:1px solid #eef2f7!important;border-radius:14px!important;background:#f9fafb!important;overflow-wrap:anywhere!important;hyphens:auto!important}
.vpp-training-main strong{display:block!important;font-size:1rem!important;line-height:1.3!important;color:#111827!important;margin-bottom:4px!important;overflow-wrap:anywhere!important;hyphens:auto!important}
.vpp-training-main small{display:block!important;color:#6b7280!important;line-height:1.35!important;overflow-wrap:anywhere!important;hyphens:auto!important}
.vpp-training-board-admin .vpp-add-training{margin:0 14px 14px!important;border:1px dashed #d1d5db!important;border-radius:14px!important;background:#fff!important;padding:12px 14px!important}
.vpp-training-board-admin .vpp-add-training summary{font-weight:800!important;cursor:pointer!important;color:#b30000!important}
.vpp-training-board-admin details summary{cursor:pointer!important;font-weight:800!important}
.vpp-home-tile .vpp-training-day-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;gap:16px!important}
.vpp-home-tile .vpp-day-head{padding:14px 16px!important}
.vpp-home-tile .vpp-day-head h3{font-size:1.15rem!important}
@media(max-width:782px){.vpp-training-day-grid{grid-template-columns:1fr!important;gap:18px!important}.vpp-day-head p{display:block!important}.vpp-day-head p span{margin:4px 6px 0 0!important}}

/* VereinsPortal 5.0 automatische Seiten */
.vpp-mini-list{display:flex;flex-wrap:wrap;gap:.5rem;margin:.5rem 0 1.25rem}.vpp-mini-list a{display:inline-flex;padding:.45rem .7rem;border-radius:999px;background:#f3f4f6;text-decoration:none;font-weight:600;color:#111827}.vpp-mini-list a:hover{background:#b30000;color:#fff}.vpp-admin-modern,.vpp-admin-modern *{overflow-wrap:anywhere;word-break:normal;hyphens:auto}.vpp-modern-table td,.vpp-modern-table th{vertical-align:top}.vpp-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.vpp-admin-panel{background:#fff;border-radius:14px;padding:1rem 1.25rem;margin:1rem 0;box-shadow:0 6px 18px rgba(0,0,0,.06)}
