.kkbgvp{max-width:1160px;margin:32px auto 65px;padding:0 16px;color:#142b32}.kkbgvp-head{background:linear-gradient(110deg,#08754e,#10a777);color:#fff;padding:28px 34px;border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.kkbgvp-head h1{color:#fff;margin:6px 0;font-size:32px}.kkbgvp-head p{margin:0}.kkbgvp-head small{font-weight:800;letter-spacing:.12em}.kkbgvp-logout{background:white;color:#08754e!important;padding:10px 16px;border-radius:10px;font-weight:700}.kkbgvp-nav{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.kkbgvp-nav a,.kkbgvp-tiles a{background:#fff;color:#08754e!important;padding:12px 16px;border-radius:10px;border:1px solid #dce8e3;font-weight:700;text-decoration:none}.kkbgvp-panel{background:#fff;padding:24px;border:1px solid #dce8e3;border-radius:16px;margin-top:15px}.kkbgvp-panel h2{margin:0 0 20px}.kkbgvp-panel form{display:grid;gap:16px}.kkbgvp-panel label{display:grid;gap:6px;font-weight:600}.kkbgvp-panel input:not([type=checkbox]),.kkbgvp-panel select{width:100%;padding:11px;border:1px solid #cbdad3;border-radius:8px}.kkbgvp-panel button{justify-self:start;background:#078956;color:#fff;border:0;border-radius:8px;padding:12px 24px;font-weight:700}.kkbgvp-panel .kkbgvp-check{display:inline-flex;align-items:center;margin:5px 12px 5px 0}.kkbgvp-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.kkbgvp-item{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #edf2ef}.kkbgvp-ok{color:#08754e;font-weight:700}@media(max-width:650px){.kkbgvp-head{padding:20px;align-items:flex-start;flex-direction:column}.kkbgvp-panel{padding:16px}}

/* V1.0.3: isolated login screen, no public site changes */
.kkbgvp .kkbgvp-login{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:clamp(22px,4vw,60px);align-items:center;padding:clamp(24px,4vw,54px);border:1px solid #dbe9e1;border-radius:22px;background:linear-gradient(140deg,#f0faf5 0%,#fff 65%);box-shadow:0 18px 48px rgba(10,68,45,.08)}
.kkbgvp-login-intro{min-width:0}.kkbgvp-login-eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;color:#08764b}.kkbgvp-login-intro h1{font-size:clamp(27px,3vw,43px);line-height:1.16;color:#133a2c;margin:16px 0}.kkbgvp-login-intro p{font-size:16px;line-height:1.7;color:#52665b;max-width:480px}.kkbgvp-login-benefits{display:flex;flex-direction:column;gap:12px;margin-top:28px;font-size:14px;font-weight:650;color:#176849}
.kkbgvp-login-card{background:#fff;border:1px solid #d9e8de;border-radius:18px;padding:clamp(24px,3vw,36px);box-shadow:0 12px 36px rgba(15,64,44,.08);min-width:0}.kkbgvp-login-icon{width:48px;height:48px;border-radius:14px;background:#e7f7ee;display:grid;place-items:center;font-size:22px}.kkbgvp-login-card h2{font-size:26px;color:#143e2d;margin:16px 0 6px}.kkbgvp-login-hint{font-size:14px;color:#63756b;margin:0 0 24px}.kkbgvp-login-card #loginform{display:flex;flex-direction:column;gap:16px;margin:0}.kkbgvp-login-card #loginform p{margin:0}.kkbgvp-login-card #loginform .login-username,.kkbgvp-login-card #loginform .login-password{display:flex;flex-direction:column;gap:7px}.kkbgvp-login-card #loginform label{font-size:14px;font-weight:700;color:#244d39}.kkbgvp-login-card #loginform input.input{display:block;box-sizing:border-box;width:100%;min-height:46px;border:1px solid #b9d2c4;border-radius:10px;padding:11px 13px;background:#fff;color:#17382a;font:inherit;font-size:16px}.kkbgvp-login-card #loginform input.input:focus{outline:3px solid rgba(15,153,95,.2);border-color:#087d50}.kkbgvp-login-card #loginform .login-remember label{display:inline-flex;align-items:center;gap:9px;font-weight:500}.kkbgvp-login-card #loginform .login-remember input{accent-color:#078c57;width:16px;height:16px}.kkbgvp-login-card #loginform input[type=submit]{width:100%;min-height:48px;background:#087e50;color:white;border:0;border-radius:10px;font-size:15px;font-weight:800;cursor:pointer;transition:background .15s}.kkbgvp-login-card #loginform input[type=submit]:hover{background:#065f3d}.kkbgvp-login-card #loginform input[type=submit]:focus-visible,.kkbgvp-login-help a:focus-visible{outline:3px solid #55b991;outline-offset:3px}.kkbgvp-login-help{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px solid #e9f0eb;padding-top:19px;margin-top:23px}.kkbgvp-login-help a{color:#08764b;text-decoration:none;font-size:13px;font-weight:700}.kkbgvp-login-help a:hover{text-decoration:underline}
@media(max-width:850px){.kkbgvp .kkbgvp-login{grid-template-columns:1fr;gap:24px}.kkbgvp-login-intro p{max-width:none}.kkbgvp-login-benefits{margin-top:14px}}@media(max-width:500px){.kkbgvp .kkbgvp-login{padding:16px;border-radius:14px}.kkbgvp-login-card{padding:20px}.kkbgvp-login-intro h1{font-size:28px}}

/* V1.1 frontend administration shell, scoped to portal only */
body:has(.kkbgvp-app) .kkbgvp{max-width:1440px;width:calc(100% - 24px);padding:0;margin:24px auto 60px}
.kkbgvp-app{display:grid;grid-template-columns:235px minmax(0,1fr);gap:22px;align-items:start}
.kkbgvp-sidebar{background:#fff;border:1px solid #dce8e3;border-radius:16px;padding:18px 12px;display:flex;flex-direction:column;gap:5px;position:sticky;top:18px}
.kkbgvp-sidebar-brand{font-size:20px;font-weight:900;color:#076f48;padding:10px 12px 20px}.kkbgvp-sidebar-brand span{color:#102d23}.kkbgvp-sidebar-brand small{display:block;font-size:12px;font-weight:600;color:#6a7e74;margin-top:3px}
.kkbgvp-sidebar a{display:block;padding:12px 13px;color:#1b4d39!important;border-radius:9px;text-decoration:none;font-weight:700;font-size:14px}.kkbgvp-sidebar a:hover,.kkbgvp-sidebar a.is-active{background:#e7f6ed;color:#066f45!important}.kkbgvp-sidebar-bottom{margin-top:20px;border-top:1px solid #e7eee9;padding-top:10px}
.kkbgvp-workspace{min-width:0}.kkbgvp-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.kkbgvp-module{border:1px solid #dce8e3;border-radius:12px;padding:19px;background:#fff}.kkbgvp-module h3{font-size:17px;margin:12px 0}.kkbgvp-module-symbol{display:inline-grid;place-items:center;background:#e7f6ed;color:#087b50;border-radius:10px;width:37px;height:37px}.kkbgvp-module-status{font-size:12px;color:#63746a}.kkbgvp-module a{font-size:13px;color:#087b50;font-weight:700}.kkbgvp-muted{color:#596d62;line-height:1.6}
@media(max-width:850px){.kkbgvp-app{grid-template-columns:1fr}.kkbgvp-sidebar{position:static;display:flex;flex-direction:row;flex-wrap:wrap}.kkbgvp-sidebar-brand{width:100%;padding-bottom:8px}.kkbgvp-sidebar-bottom{margin:0;border:0;padding:0}.kkbgvp-sidebar a{padding:9px}}

/* V1.1.1: Portal-only layout. Do not alter any public page. */
body:has(.kkbgvp) .kkbg-content-page-hero,body:has(.kkbgvp) .kkbg-content-page-card-head{display:none!important}
body:has(.kkbgvp) .container-fluid > .container{max-width:1540px!important;width:100%!important}
body:has(.kkbgvp) .kkbg-content-page-wrap,body:has(.kkbgvp) .kkbg-content-page-card,body:has(.kkbgvp) .kkbg-content-page-body{width:100%;max-width:none;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body:has(.kkbgvp) .kkbg-content-page-card{overflow:visible!important}
body:has(.kkbgvp) .bg-white.rounded-bottom.bs{background:transparent!important;box-shadow:none!important;padding-top:22px!important}
body:has(.kkbgvp) .kkbgvp{max-width:1480px;width:100%;padding:0 12px;margin:0 auto 64px}
.kkbgvp-app{grid-template-columns:250px minmax(0,1fr);gap:24px}
.kkbgvp-sidebar{padding:22px 13px;border-radius:18px;box-shadow:0 8px 30px rgba(11,68,42,.045)}
.kkbgvp-sidebar-brand{border-bottom:1px solid #e5eee8;margin-bottom:10px;padding:6px 13px 19px}
.kkbgvp-head{border-radius:17px;padding:24px 30px;background:linear-gradient(115deg,#076b48,#0ca572);box-shadow:0 12px 30px rgba(0,102,62,.12)}
.kkbgvp-head h1{font-size:clamp(24px,2.6vw,32px);line-height:1.2;margin:6px 0}.kkbgvp-head p{font-size:14px;opacity:.95}
.kkbgvp-panel{margin-top:20px;border-radius:17px;padding:28px 30px;box-shadow:0 8px 28px rgba(18,65,42,.035)}
.kkbgvp-section-heading h2{margin:5px 0 10px}.kkbgvp-section-heading p{margin:0 0 24px}.kkbgvp-kicker{color:#087a4f;letter-spacing:.11em;font-size:11px;font-weight:800}
.kkbgvp-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:14px}
.kkbgvp-stat{border:1px solid #dfece5;background:#f9fcfa;border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:8px}
.kkbgvp-stat span{font-size:13px;font-weight:700;color:#245742}.kkbgvp-stat strong{font-size:32px;line-height:1.1;color:#075e3e}.kkbgvp-stat small{color:#63766b}
.kkbgvp-info{margin-top:22px;background:#eaf7ef;border-radius:13px;padding:18px 20px;color:#174b35}.kkbgvp-info p{margin:7px 0 0;line-height:1.6}
@media(max-width:850px){.kkbgvp-app{grid-template-columns:1fr}.kkbgvp-head{padding:20px}.kkbgvp-panel{padding:20px}body:has(.kkbgvp) .kkbgvp{padding:0 8px}}

/* V1.1.2: Kurzbeschreibungen der Global-Module */
.kkbgvp-module-description { margin: .3rem 0 .85rem; color: #566b64; font-size: .91rem; line-height: 1.5; }

/* V1.1.2 korrigiert: Hinweisgeber unter jedem Hinweis */
.kkbgvp-hint-author{display:block;margin:10px 0 0!important;font-size:12px!important;font-weight:700;color:#087a4f;letter-spacing:.01em;text-align:right}
.kkbgvp-module .kkbgvp-hint-author{margin-top:2px!important;margin-bottom:12px!important}

/* Version 1.2: eigenständige Modulansichten */
.kkbgvp-module-open{display:inline-flex;margin-top:auto;font-weight:700;color:#087f54;text-decoration:none}.kkbgvp-module-open:hover{text-decoration:underline}.kkbgvp-module-detail{max-width:850px;padding:12px 0 8px}.kkbgvp-module-detail h3{font-size:1.45rem;margin:0 0 8px}.kkbgvp-module-heading{margin-bottom:18px}

/* V1.2.1: actions for reports and news */
.kkbgvp-post-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.kkbgvp-post-actions form{display:inline!important;margin:0}.kkbgvp-panel .kkbgvp-delete-btn{background:#fff;color:#a32929;border:1px solid #dfb4b4;padding:7px 12px;border-radius:8px;font-size:13px;cursor:pointer}.kkbgvp-panel .kkbgvp-delete-btn:hover{background:#fff1f1}.kkbgvp-post-row{align-items:center}@media(max-width:600px){.kkbgvp-post-row{align-items:flex-start;flex-direction:column}}

/* Benutzerverwaltung: klare Auswahlfelder und sichere Aktionen */
.kkbgvp-user-list{border:1px solid #dce8e3;border-radius:12px;overflow:hidden;margin:16px 0 24px}
.kkbgvp-user-list-title{display:flex;justify-content:space-between;background:#f1f8f4;padding:14px 16px;gap:12px}
.kkbgvp-user-row{padding:12px 16px}.kkbgvp-user-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.kkbgvp-user-actions a{font-weight:700;color:#08754e}
.kkbgvp-user-section{border-top:1px solid #dce8e3;padding-top:22px;margin-top:24px}.kkbgvp-user-section form{max-width:680px}
.kkbgvp-users select{display:block!important;appearance:auto!important;-webkit-appearance:menulist!important;background:#fff!important;color:#142b32!important;min-height:45px!important;height:auto!important;max-width:100%;opacity:1!important;visibility:visible!important}
.kkbgvp-user-danger{border:1px solid #e9c5c5;border-radius:12px;padding:20px;background:#fffafa}.kkbgvp-panel .kkbgvp-danger-button{background:#b02d35;color:white}
.kkbgvp-user-danger .kkbgvp-check{display:flex;align-items:flex-start;gap:10px;font-weight:500}.kkbgvp-user-danger .kkbgvp-check input{width:auto;flex:none;margin-top:5px}
@media(max-width:700px){.kkbgvp-user-row{flex-direction:column}.kkbgvp-user-actions{justify-content:space-between}}
/* V1.3: WordPress-/Members-Rollen und Vereinsverwaltung */
.kkbgvp-role-grid{border:1px solid #dce9e3;border-radius:12px;padding:16px;margin:14px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.kkbgvp-role-grid legend{font-weight:700;padding:0 8px}.kkbgvp-role-check,.kkbgvp-cap-grid label{display:flex!important;align-items:center;gap:8px;margin:0!important;font-weight:500!important}.kkbgvp-role-check input,.kkbgvp-cap-grid input{width:auto!important;min-width:16px;height:16px}.kkbgvp-role-links{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}.kkbgvp-role-links a{padding:8px 12px;border:1px solid #dce9e3;border-radius:9px;text-decoration:none}.kkbgvp-cap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:12px;padding:14px;border:1px solid #dce9e3;border-radius:10px;margin-bottom:15px}.kkbgvp-reset-form{margin-top:16px;padding-top:16px;border-top:1px solid #e2ebe7}

/* V1.3.1: polished multiple-role chooser and stable Members navigation */
.kkbgvp-users .kkbgvp-role-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;padding:18px!important;margin:16px 0 20px;min-width:0;background:#f9fcfa;border:1px solid #d5e7dc;border-radius:13px}
.kkbgvp-users .kkbgvp-role-grid legend{display:block!important;float:none!important;width:auto!important;max-width:100%;margin:0 0 6px;padding:0 9px;color:#153f30;font-size:14px;line-height:1.4;font-weight:800;white-space:normal}
.kkbgvp-users .kkbgvp-role-grid .kkbgvp-role-check{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start;gap:9px;min-width:0;margin:0!important;padding:11px 12px;border:1px solid #dcebe2;border-radius:9px;background:#fff;line-height:1.35;cursor:pointer;overflow-wrap:anywhere}
.kkbgvp-users .kkbgvp-role-grid .kkbgvp-role-check:has(input:checked){background:#e6f7ed;border-color:#80c8a2;color:#075b3a;font-weight:700!important}
.kkbgvp-users .kkbgvp-role-grid .kkbgvp-role-check input{flex:0 0 17px!important;width:17px!important;height:17px!important;margin:0!important;accent-color:#078956}
.kkbgvp-users .kkbgvp-role-links a{display:inline-flex;align-items:center;min-height:39px;padding:9px 13px;background:#fff;color:#08754e;border:1px solid #dce9e3;border-radius:9px;font-weight:700;transition:background .15s,border-color .15s}
.kkbgvp-users .kkbgvp-role-links a:hover,.kkbgvp-users .kkbgvp-role-links a:focus-visible{background:#e9f7ef;border-color:#8fcbb0}
.kkbgvp-users #kkbgvp-members{scroll-margin-top:22px}
@media(max-width:800px){.kkbgvp-users .kkbgvp-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.kkbgvp-users .kkbgvp-role-grid{grid-template-columns:1fr}}

/* V1.3.2: Benutzer nach vorhandener WordPress-Hauptrolle in eigenen Fenstern */
.kkbgvp-user-groups{display:grid;gap:14px;margin:18px 0 26px}
.kkbgvp-user-groups-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.kkbgvp-user-groups-heading span{color:#60756c;font-size:.9em}
.kkbgvp-user-group{border:1px solid #dce8e3;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 4px 16px rgba(14,71,47,.045)}
.kkbgvp-user-group>summary{display:flex;align-items:center;gap:12px;padding:16px 18px;background:#f2f8f5;cursor:pointer;list-style:none;font-weight:750;color:#075d3d}
.kkbgvp-user-group>summary::-webkit-details-marker{display:none}
.kkbgvp-user-group>summary:focus-visible{outline:3px solid #20a875;outline-offset:-3px}
.kkbgvp-group-title{flex:1}.kkbgvp-group-count{background:#fff;border:1px solid #d3e5dc;border-radius:999px;padding:4px 10px;font-size:.8em;white-space:nowrap}
.kkbgvp-group-chevron{font-size:1.25em;transition:transform .15s}.kkbgvp-user-group[open] .kkbgvp-group-chevron{transform:rotate(180deg)}
.kkbgvp-group-content .kkbgvp-user-row:last-child{border-bottom:0}
@media(max-width:700px){.kkbgvp-user-group>summary{padding:13px}.kkbgvp-group-count{font-size:.75em}}

/* V1.3.2: Bearbeitungsformular beim direkten Aufruf sichtbar positionieren. */
.kkbgvp-users #benutzer-bearbeiten{scroll-margin-top:24px}

/* V1.3.3: Members-Rolle im Frontend anlegen */
.kkbgvp-new-role{margin-top:24px;border:1px solid #cfe4d8;border-radius:12px;background:#f9fcfa;overflow:hidden}
.kkbgvp-new-role>summary{cursor:pointer;padding:16px 18px;font-weight:800;color:#08754e;background:#edf8f1}
.kkbgvp-new-role>summary:hover{background:#e1f2e8}
.kkbgvp-new-role-body{padding:18px}
.kkbgvp-new-role-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.kkbgvp-new-role-fields label{min-width:0}
.kkbgvp-new-role-warning{font-size:.9rem;color:#805b13}
@media(max-width:650px){.kkbgvp-new-role-fields{grid-template-columns:1fr}}

/* V1.3.4: Passwortverwaltung direkt im Benutzerformular */
.kkbgvp-password-panel{margin:22px 0 14px;padding:18px;border:1px solid #d5e8df;border-radius:12px;background:#f7fbf9}
.kkbgvp-password-panel h4{margin:0 0 8px;color:#075f42}
.kkbgvp-password-panel p{margin:0 0 15px;color:#587366;font-size:.92em}
.kkbgvp-password-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}
.kkbgvp-password-actions button{max-width:100%}
.kkbgvp-password-actions .kkbgvp-secondary{background:#fff;color:#08784f;border:1px solid #bad8c9}

/* V1.3.6: Kategorieordner und chronologische Berichte */
.kkbgvp-report-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:20px 0}
.kkbgvp-report-filters label{flex:1 1 190px;min-width:0;margin:0}
.kkbgvp-report-filters button{flex:0 0 auto}
.kkbgvp-report-count{font-weight:700;color:#08754e;margin:14px 0}
.kkbgvp-report-card{border:1px solid #dbe8e1;border-radius:12px;padding:16px;margin:12px 0;background:#fff}
.kkbgvp-report-top{display:flex;justify-content:space-between;gap:12px;align-items:start}
.kkbgvp-report-top strong{font-size:1.04rem;color:#074d37}
.kkbgvp-report-meta{color:#647a70;font-size:.85rem;margin-top:5px}
.kkbgvp-report-top>a{white-space:nowrap;color:#07844f;font-weight:700}
.kkbgvp-report-bottom{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-top:12px}
.kkbgvp-report-move{display:flex;align-items:end;gap:8px;flex:1 1 300px;flex-wrap:wrap}
.kkbgvp-report-move label{flex:1 1 180px;margin:0}
.kkbgvp-report-move select{width:100%}
.kkbgvp-report-bottom form{margin:0}
@media(max-width:600px){.kkbgvp-report-top{flex-direction:column}.kkbgvp-report-filters button,.kkbgvp-report-move button{width:100%}}

/* V1.3.7: Nur visueller WordPress-Editor, kontrastreiche Werkzeuge. */
.kkbgvp-app .wp-editor-wrap .wp-editor-tabs{display:none!important}
.kkbgvp-app .wp-editor-wrap .wp-editor-container{border:1px solid #b9d5c7;border-radius:0 0 10px 10px;overflow:hidden}
.kkbgvp-app .wp-editor-wrap .mce-toolbar-grp{background:#f0f7f3!important;border-bottom:1px solid #cbded3!important}
.kkbgvp-app .wp-editor-wrap .mce-toolbar .mce-btn{background:#fff!important;border:1px solid #b5d2c1!important;border-radius:6px!important;margin:3px 2px!important;box-shadow:0 1px 2px rgba(0,0,0,.06)!important}
.kkbgvp-app .wp-editor-wrap .mce-toolbar .mce-btn:hover,.kkbgvp-app .wp-editor-wrap .mce-toolbar .mce-btn:focus{background:#d9f2e4!important;border-color:#087c50!important}
.kkbgvp-app .wp-editor-wrap .mce-toolbar .mce-btn.mce-active{background:#c6ead6!important;border-color:#078956!important}
.kkbgvp-app .wp-editor-wrap .mce-toolbar .mce-btn button{background:transparent!important;color:#163b2b!important;padding:5px 7px!important;min-width:27px!important;min-height:28px!important;border:0!important;box-shadow:none!important}
.kkbgvp-app .wp-editor-wrap .mce-toolbar .mce-btn button .mce-ico,.kkbgvp-app .wp-editor-wrap .mce-toolbar .mce-btn button .mce-txt{color:#163b2b!important;text-shadow:none!important;opacity:1!important}
.kkbgvp-app .wp-editor-wrap .mce-toolbar .mce-btn button .mce-caret{border-top-color:#163b2b!important}
.kkbgvp-app .wp-editor-wrap .mce-toolbar .mce-btn button:focus-visible{outline:2px solid #087c50!important;outline-offset:1px}
.kkbgvp-app .wp-editor-wrap .wp-editor-tools{min-height:42px}
@media(max-width:650px){.kkbgvp-app .wp-editor-wrap .mce-toolbar .mce-btn{margin:2px 1px!important}}
