:root{
    --pp-bg:#1b1a17;
    --pp-bg-top:#141311;
    --pp-card:#26241f;
    --pp-card-hi:#322f28;
    --pp-border:#3c382f;
    --pp-text:#f5efe4;
    --pp-text-muted:#c9c3b4;
    --pp-text-dim:#9b9586;
    --pp-accent:#e2a23b;
    --pp-accent-text:#2b1a05;
    --pp-gutter:16px;
    --pp-max:620px;
    --pp-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
    --pp-radius:16px;
}

/* ---------- Grundgeruest ---------- */
body.pp-app{
    background:var(--pp-bg) !important;
    color:var(--pp-text) !important;
    font-family:var(--pp-font) !important;
    font-size:18px;
    line-height:1.6;
    letter-spacing:.1px;
    -webkit-text-size-adjust:100%;
    -webkit-font-smoothing:antialiased;
    padding-bottom:100px;
    margin-top:0 !important;
    overflow-x:hidden;
}
body.pp-app *{ box-sizing:border-box; }
body.pp-app input,
body.pp-app button,
body.pp-app select,
body.pp-app textarea{ font-family:inherit !important; }

/* Weisse Scroll-Leiste / "Scrubber" ueberall ausblenden */
body.pp-app{ scrollbar-width:none; }
body.pp-app::-webkit-scrollbar{ width:0; height:0; }
body.pp-app *{ scrollbar-width:none; }
body.pp-app *::-webkit-scrollbar{ width:0; height:0; display:none; }
body.pp-app img,
body.pp-app iframe,
body.pp-app video,
body.pp-app pre,
body.pp-app table{ max-width:100%; }

/* GeneratePress-Ballast weg */
body.pp-app .site-header,
body.pp-app .main-navigation,
body.pp-app #right-sidebar,
body.pp-app .sidebar,
body.pp-app .site-info,
body.pp-app .generate-back-to-top,
body.pp-app #wpadminbar{ display:none !important; }

/* Inhaltsspalte */
body.pp-app .site-content,
body.pp-app .content-area,
body.pp-app #primary,
body.pp-app #main{
    width:100% !important;
    max-width:var(--pp-max);
    margin:0 auto !important;
    float:none !important;
    padding:20px var(--pp-gutter) 8px;
}

/* ---------- Topbar ---------- */
body.pp-app .pp-topbar{
    position:sticky; top:0; z-index:500;
    display:flex; align-items:center; justify-content:space-between; gap:12px;
    min-height:58px;
    background:var(--pp-bg-top);
    border-bottom:1px solid var(--pp-border);
    padding:12px max(var(--pp-gutter), calc((100% - var(--pp-max)) / 2));
}
body.pp-app .pp-topbar .pp-logo{
    color:var(--pp-accent);
    font-size:19px; font-weight:700; letter-spacing:.3px;
    text-decoration:none;
}
body.pp-app .pp-topbar .pp-logout{
    color:var(--pp-text-muted);
    font-size:14px; font-weight:600;
    text-decoration:none;
    border:1px solid var(--pp-border);
    border-radius:999px;
    padding:8px 16px;
    white-space:nowrap;
}
body.pp-app .pp-topbar .pp-logout:active{ background:var(--pp-card); }

/* ---------- Typografie ---------- */
body.pp-app h1, body.pp-app h2, body.pp-app h3, body.pp-app h4{
    color:var(--pp-text); font-weight:700; line-height:1.25; letter-spacing:.2px;
}
body.pp-app h1{ font-size:27px; margin:6px 0 16px; }
body.pp-app h2{ font-size:22px; margin:22px 0 12px; }
body.pp-app h3{ font-size:19px; margin:18px 0 10px; }
body.pp-app h4{ font-size:17px; margin:14px 0 8px; }
body.pp-app p{ color:var(--pp-text-muted); font-size:17px; margin:0 0 14px; }
body.pp-app li{ color:var(--pp-text-muted); }
body.pp-app a{ color:var(--pp-accent); text-decoration:none; }
body.pp-app a:hover{ text-decoration:underline; }
body.pp-app strong{ color:var(--pp-text); }
body.pp-app hr{ border:none; border-top:1px solid var(--pp-border); margin:20px 0; }
body.pp-app blockquote{
    border-left:3px solid var(--pp-accent);
    margin:14px 0; padding:4px 0 4px 14px; color:var(--pp-text-muted);
}
body.pp-app :focus-visible{ outline:2px solid var(--pp-accent); outline-offset:2px; }

/* ---------- Buttons (gross, fingerfreundlich) ---------- */
body.pp-app .button,
body.pp-app .wp-block-button__link,
body.pp-app button:not(.pp-bottom-nav a),
body.pp-app input[type=submit],
body.pp-app input[type=button],
body.pp-app a.bp-primary-action{
    display:block;
    background:var(--pp-accent) !important;
    color:var(--pp-accent-text) !important;
    border:none !important;
    border-radius:14px !important;
    font-size:18px !important; font-weight:700 !important;
    text-align:center;
    min-height:54px;
    padding:15px 20px !important;
    width:100%;
    margin:8px 0;
    box-shadow:0 2px 10px rgba(0,0,0,.25);
}
body.pp-app .button:active,
body.pp-app input[type=submit]:active{ transform:translateY(1px); }
body.pp-app .button.outline,
body.pp-app .bp-secondary-action,
body.pp-app .wp-block-button.is-style-outline .wp-block-button__link{
    background:transparent !important;
    color:var(--pp-text) !important;
    border:2px solid var(--pp-border) !important;
    box-shadow:none;
}

/* ---------- Formulare (Login, Kalender, Kommentare) ---------- */
body.pp-app input[type=text],
body.pp-app input[type=email],
body.pp-app input[type=password],
body.pp-app input[type=search],
body.pp-app input[type=tel],
body.pp-app input[type=number],
body.pp-app input[type=date],
body.pp-app input[type=time],
body.pp-app input[type=url],
body.pp-app textarea,
body.pp-app select{
    background:var(--pp-card) !important;
    border:1px solid var(--pp-border) !important;
    border-radius:12px !important;
    color:var(--pp-text) !important;
    font-size:17px !important;
    min-height:52px;
    padding:13px 15px !important;
    width:100% !important;
    margin-bottom:14px;
}
body.pp-app textarea{ min-height:120px; line-height:1.5; }
body.pp-app input:focus,
body.pp-app textarea:focus,
body.pp-app select:focus{
    border-color:var(--pp-accent) !important;
    outline:none;
    background:var(--pp-card-hi) !important;
}
body.pp-app ::placeholder{ color:var(--pp-text-dim); opacity:1; }
body.pp-app label{
    color:var(--pp-text-muted); font-size:15px; font-weight:600;
    display:block; margin-bottom:6px;
}
body.pp-app input[type=checkbox],
body.pp-app input[type=radio]{
    width:24px; height:24px; accent-color:var(--pp-accent);
    vertical-align:-5px; margin-right:10px;
}

/* ---------- BuddyPress Tabs / Filter ---------- */
body.pp-app #buddypress .item-list-tabs ul,
body.pp-app .bp-navs ul,
body.pp-app .component-navigation{
    display:flex; gap:8px; overflow-x:auto;
    list-style:none; padding:2px 0 10px; margin:0 0 16px;
}
body.pp-app #buddypress .item-list-tabs ul li,
body.pp-app .bp-navs ul li{
    background:var(--pp-card); border-radius:999px; white-space:nowrap;
}
body.pp-app #buddypress .item-list-tabs ul li a,
body.pp-app .bp-navs ul li a{
    display:block; padding:11px 18px;
    color:var(--pp-text-muted); font-size:15px; font-weight:600;
}
body.pp-app #buddypress .item-list-tabs ul li.selected,
body.pp-app #buddypress .item-list-tabs ul li.current,
body.pp-app .bp-navs ul li.selected,
body.pp-app .bp-navs ul li.current{ background:var(--pp-accent); }
body.pp-app #buddypress .item-list-tabs ul li.selected a,
body.pp-app #buddypress .item-list-tabs ul li.current a,
body.pp-app .bp-navs ul li.selected a,
body.pp-app .bp-navs ul li.current a{ color:var(--pp-accent-text); }

/* ---------- Listen als Karten (Aktivitaet, Mitglieder, Forum) ---------- */
body.pp-app #buddypress ul.item-list li,
body.pp-app #buddypress .bp-list > li,
body.pp-app .activity-list > li,
body.pp-app .bbp-forums-list > li,
body.pp-app .bbp-topics-list > li,
body.pp-app .bbp-replies-list > li,
body.pp-app li.bbp-forum-info,
body.pp-app li.bbp-topic-title{
    background:var(--pp-card) !important;
    border:none !important;
    border-radius:var(--pp-radius) !important;
    padding:16px !important;
    margin-bottom:12px !important;
    list-style:none;
}
body.pp-app .activity-list .activity-content{ margin-left:0; }
body.pp-app .activity-header,
body.pp-app .activity-meta,
body.pp-app .item-meta,
body.pp-app .bbp-meta,
body.pp-app .activity-time-since{ color:var(--pp-text-dim); font-size:14px; }
body.pp-app .avatar{ border-radius:50% !important; }
body.pp-app #buddypress .activity-avatar img.avatar{ width:48px; height:48px; }

/* bbPress Foren-Tabellen lesbar */
body.pp-app .bbp-body li,
body.pp-app .bbp-header{ color:var(--pp-text-muted); }
body.pp-app .bbp-forum-title,
body.pp-app .bbp-topic-permalink{ font-size:18px; font-weight:700; color:var(--pp-text) !important; }

/* ---------- rtMedia Galerie ---------- */
body.pp-app .rtmedia-list-media{
    display:grid; grid-template-columns:1fr 1fr; gap:12px;
    list-style:none; padding:0;
}
body.pp-app .rtmedia-list-item{
    background:var(--pp-card); border-radius:var(--pp-radius);
    overflow:hidden; margin:0 !important;
}
body.pp-app .rtmedia-list-item img{ width:100%; height:auto; display:block; }
body.pp-app .rtmedia-item-title h4{
    color:var(--pp-text); font-size:14px; font-weight:600;
    padding:10px 12px; margin:0;
}

/* ---------- Tabellen / Kalender ---------- */
body.pp-app table{ background:transparent; border-collapse:collapse; width:100%; }
body.pp-app table, body.pp-app th, body.pp-app td{
    border-color:var(--pp-border) !important; color:var(--pp-text-muted);
}
body.pp-app th{ color:var(--pp-text); }
body.pp-app td, body.pp-app th{ padding:10px; }

/* ---------- Bottom-Navigation ---------- */
body.pp-app .pp-bottom-nav{
    position:fixed; left:0; right:0; bottom:0; z-index:600;
    display:flex; justify-content:space-around; align-items:stretch;
    min-height:76px;
    padding:0 max(0px, calc((100% - var(--pp-max)) / 2));
    padding-bottom:env(safe-area-inset-bottom);
    background:var(--pp-bg-top);
    border-top:1px solid var(--pp-border);
    box-shadow:0 -3px 14px rgba(0,0,0,.4);
}
body.pp-app .pp-bottom-nav a{
    flex:1;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px;
    color:var(--pp-text-dim) !important;
    font-size:12.5px; font-weight:600;
    text-decoration:none !important;
    padding:8px 2px;
}
body.pp-app .pp-bottom-nav a:active{ background:rgba(255,255,255,.05); }
body.pp-app .pp-bottom-nav svg{
    width:26px; height:26px;
    fill:none; stroke:currentColor; stroke-width:1.8;
    stroke-linecap:round; stroke-linejoin:round;
}
/* Aktive Seite in der Nav hervorheben (foolproof: man sieht, wo man ist) */
body.pp-app.home .pp-bottom-nav a:nth-child(1),
body.pp-app.activity .pp-bottom-nav a:nth-child(2),
body.pp-app.members .pp-bottom-nav a:nth-child(3),
body.pp-app.groups .pp-bottom-nav a:nth-child(4),
body.pp-app.my-account .pp-bottom-nav a:last-child{
    color:var(--pp-accent) !important;
}

/* ===================== Feinschliff v4 ===================== */

/* bbPress / WP Editor-Werkzeugleiste: kleine Inline-Buttons statt Riesen-Balken */
body.pp-app .quicktags-toolbar{
    display:flex; flex-wrap:wrap; gap:5px;
    background:var(--pp-bg-top);
    border:1px solid var(--pp-border);
    border-radius:12px 12px 0 0;
    padding:8px;
}
body.pp-app .quicktags-toolbar input.ed_button,
body.pp-app .quicktags-toolbar input[type=button],
body.pp-app .quicktags-toolbar button,
body.pp-app .ed_button,
body.pp-app .wp-switch-editor{
    display:inline-block !important;
    width:auto !important; min-width:0 !important;
    min-height:0 !important; height:auto !important;
    margin:0 !important;
    padding:7px 12px !important;
    font-size:14px !important; font-weight:600 !important;
    line-height:1.2 !important;
    border-radius:8px !important;
    background:var(--pp-card) !important;
    color:var(--pp-text) !important;
    border:1px solid var(--pp-border) !important;
    box-shadow:none !important;
    text-align:center;
}
body.pp-app .quicktags-toolbar input.ed_button:active{ background:var(--pp-card-hi) !important; }

/* Aktivitaet: weisser Aktions-Balken weg, Aktionen als dunkle Pills */
body.pp-app .activity-meta,
body.pp-app .activity-meta.action{
    background:transparent !important;
    display:flex; flex-wrap:wrap; gap:8px;
    margin-top:12px; padding:0 !important;
    border:none !important; box-shadow:none !important;
}
body.pp-app .activity-meta .generic-button{ margin:0; }
body.pp-app .activity-meta .generic-button a,
body.pp-app .activity-meta .generic-button button,
body.pp-app .activity-meta > a{
    display:inline-flex; align-items:center; gap:6px;
    background:var(--pp-card-hi) !important;
    color:var(--pp-text-muted) !important;
    border:1px solid var(--pp-border) !important;
    border-radius:10px !important;
    width:auto !important; min-height:0 !important;
    padding:8px 14px !important;
    font-size:14px !important; font-weight:600 !important;
    box-shadow:none !important; margin:0 !important;
}

/* BuddyPress Gruppen-/Profil-Navigation: saubere Pills, keine weissen Striche */
body.pp-app .bp-navs ul,
body.pp-app .groups-nav ul,
body.pp-app .main-navs ul{
    display:flex; gap:8px; overflow-x:auto;
    list-style:none; margin:0 0 18px; padding:2px 0 10px;
    border:none !important;
}
body.pp-app .bp-navs li,
body.pp-app .groups-nav li,
body.pp-app .main-navs li{
    background:var(--pp-card) !important;
    border:none !important; border-radius:999px !important;
    white-space:nowrap;
}
body.pp-app .bp-navs li a,
body.pp-app .groups-nav li a,
body.pp-app .main-navs li a{
    display:block; border:none !important;
    padding:11px 18px !important;
    color:var(--pp-text-muted) !important;
    font-size:15px !important; font-weight:600 !important;
}
body.pp-app .bp-navs li.current,
body.pp-app .bp-navs li.selected,
body.pp-app .groups-nav li.current,
body.pp-app .main-navs li.current{ background:var(--pp-accent) !important; }
body.pp-app .bp-navs li.current a,
body.pp-app .bp-navs li.selected a,
body.pp-app .groups-nav li.current a,
body.pp-app .main-navs li.current a{ color:var(--pp-accent-text) !important; }
body.pp-app .bp-navs li .count,
body.pp-app .main-navs li .count{
    background:rgba(0,0,0,.28); color:inherit;
    border-radius:999px; padding:1px 8px; margin-left:6px; font-size:12px;
}

/* ---------- rtMedia Galerie: simpel & klar fuer alle ---------- */
/* Hauptaktion HOCHLADEN: gross, orange, unuebersehbar */
body.pp-app #rtm_show_upload_ui,
body.pp-app .rtmedia-upload-media-link.primary{
    background:var(--pp-accent) !important;
    color:var(--pp-accent-text) !important;
    border:none !important; border-radius:14px !important;
    width:100% !important; min-height:56px !important;
    font-size:18px !important; font-weight:700 !important;
    margin:12px 0 !important;
    box-shadow:0 2px 10px rgba(0,0,0,.25) !important;
}
/* Sekundaeraktionen: Album erstellen, Optionen, Suche -> dezente Pills */
body.pp-app #rtmedia_create_new_album,
body.pp-app button.clicker.rtmedia-action-buttons,
body.pp-app #media_search.search_option{
    display:inline-flex !important; align-items:center; justify-content:center;
    width:auto !important; min-width:0 !important;
    min-height:46px !important;
    padding:10px 16px !important;
    margin:4px 8px 8px 0 !important;
    font-size:15px !important; font-weight:600 !important;
    background:var(--pp-card) !important;
    color:var(--pp-text) !important;
    border:1px solid var(--pp-border) !important;
    border-radius:12px !important;
    box-shadow:none !important;
}
body.pp-app #media_search.search_option{ width:48px !important; padding:10px !important; }
body.pp-app .rtmedia-container input[type=text],
body.pp-app .rtmedia-search-input{ margin-bottom:8px !important; }
/* Album-/Foto-Raster: groessere, antippbare Karten */
body.pp-app .rtmedia-list-media{ grid-template-columns:1fr 1fr !important; gap:14px !important; }
body.pp-app .rtmedia-list-item{
    border:1px solid var(--pp-border);
    box-shadow:0 2px 8px rgba(0,0,0,.22);
    transition:transform .08s ease;
}
body.pp-app .rtmedia-list-item:active{ transform:scale(.98); }
/* Freundlicher Leer-Hinweis */
body.pp-app .rtmedia-no-media-found,
body.pp-app .rtmedia_no_media,
body.pp-app .no-media{
    background:var(--pp-card); border:1px dashed var(--pp-border);
    border-radius:14px; padding:22px 16px; text-align:center;
    color:var(--pp-text-muted);
}

            
/* ===================== Feinschliff v5 ===================== */

/* Topbar schlanker & dezenter: Logo als ruhige Marke, Abmelden kompakt */
body.pp-app .pp-topbar{ min-height:50px; padding-top:10px; padding-bottom:10px; }
body.pp-app .pp-topbar .pp-logo{
    font-size:15px !important; font-weight:600 !important;
    color:var(--pp-text-muted) !important; letter-spacing:.4px;
}
body.pp-app .pp-topbar .pp-logout{
    font-size:13px !important; padding:7px 14px !important;
    color:var(--pp-text-muted) !important;
}

/* Aktivitaets-/Verzeichnis-Filter: heller Rahmen + weisser Schatten weg (die "Boxen") */
body.pp-app nav.activity-type-navs,
body.pp-app .activity-type-navs,
body.pp-app .dir-navs,
body.pp-app .component-navigation{
    border:none !important; box-shadow:none !important;
    background:transparent !important;
    margin:0 0 16px !important; padding:0 !important;
}

/* Suche: volle Breite, kein heller Rahmen, saubere Zeile */
body.pp-app .dir-search,
body.pp-app .activity-search,
body.pp-app .bp-search{
    width:100% !important; max-width:100% !important;
    float:none !important; margin:0 0 18px !important;
}
body.pp-app .bp-dir-search-form,
body.pp-app form.bp-dir-search-form{
    display:flex !important; gap:8px;
    width:100% !important;
    border:none !important; background:transparent !important;
    padding:0 !important; box-shadow:none !important;
}
body.pp-app .bp-dir-search-form input[type=search],
body.pp-app .bp-dir-search-form input[type=text]{
    flex:1 1 auto !important; width:auto !important; margin:0 !important;
    background:var(--pp-card) !important;
    border:1px solid var(--pp-border) !important;
    border-radius:12px !important;
}
body.pp-app .bp-dir-search-form button,
body.pp-app .bp-dir-search-form [type=submit]{
    flex:0 0 auto !important;
    width:54px !important; min-height:52px !important;
    margin:0 !important; padding:0 !important;
    background:var(--pp-accent) !important; color:var(--pp-accent-text) !important;
    border:none !important; border-radius:12px !important;
    display:flex !important; align-items:center; justify-content:center;
    box-shadow:none !important;
}
/* RSS-/Feed-Icon ausblenden (unnoetig fuer Mitglieder) */
body.pp-app a.bp-feed,
body.pp-app .dir-search .bp-feed,
body.pp-app .activity-search .bp-feed,
body.pp-app .dir-search a[href*="feed"]{ display:none !important; }

/* Forum-Widget in der Aktivitaet als saubere Karte */
body.pp-app #twr79-foren{
    background:var(--pp-card) !important;
    border:1px solid var(--pp-border) !important;
    border-radius:var(--pp-radius) !important;
    padding:14px !important; margin-bottom:18px;
    overflow:hidden;
}
body.pp-app #twr79-foren table,
body.pp-app #twr79-foren td,
body.pp-app #twr79-foren th{ border:none !important; }

            
/* ===================== Feinschliff v6: Galerie noch einfacher ===================== */
/* "Album erstellen" nur fuer Admin – Mitglieder laden nur Fotos hoch */
body.pp-app:not(.pp-admin) #rtmedia_create_new_album{ display:none !important; }
/* Galerie-Suche ausblenden – kein Such-Schritt noetig, direkt hochladen/anschauen */
body.pp-app #media_search.search_option,
body.pp-app .rtmedia-search,
body.pp-app .rtm-media-search-enabled form,
body.pp-app #rtmedia_gallery_search_form,
body.pp-app .rtmedia-search-form{ display:none !important; }

            
/* ===================== Foto-Kacheln (eigene einfache Galerie-Startseite) ===================== */
body.pp-app .pp-foto-kacheln{ margin:6px 0 22px; }
body.pp-app .pp-foto-titel{ margin:0 0 14px; font-size:22px; }
body.pp-app .pp-foto-grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
body.pp-app .pp-foto-kachel{
    display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; gap:18px;
    min-height:118px;
    background:var(--pp-card) !important;
    border:1px solid var(--pp-border);
    border-radius:var(--pp-radius);
    padding:16px;
    color:var(--pp-text) !important;
    text-decoration:none !important;
    font-size:17px; font-weight:700;
    box-shadow:0 2px 10px rgba(0,0,0,.25);
    transition:transform .08s ease, border-color .15s ease;
}
body.pp-app .pp-foto-kachel:hover{ text-decoration:none !important; border-color:var(--pp-accent); }
body.pp-app .pp-foto-kachel:active{ transform:scale(.97); }
body.pp-app .pp-foto-kachel svg{ width:30px; height:30px; color:var(--pp-accent); }
body.pp-app .pp-foto-kachel span{ line-height:1.25; }
/* Auf der Foto-Startseite nur die Kacheln zeigen (Admin sieht zusaetzlich die Verwaltung) */
body.pp-app.pp-foto-landing:not(.pp-admin) .rtmedia-container{ display:none !important; }

            
/* ===================== Login: "Geheimcode vergessen?"-Link als klarer Button ===================== */
body.pp-app a[href*="lostpassword"]{
    display:block;
    margin:18px auto 4px;
    text-align:center;
    background:var(--pp-card) !important;
    color:var(--pp-text-muted) !important;
    border:1px solid var(--pp-border);
    border-radius:12px;
    padding:13px 16px;
    font-size:15px; font-weight:600;
    text-decoration:none !important;
    line-height:1.35;
}
body.pp-app a[href*="lostpassword"]:hover{
    border-color:var(--pp-accent);
    color:var(--pp-text) !important;
    text-decoration:none !important;
}

            
/* ===================== Feinschliff v9 ===================== */
/* CTAs nur fuer Gaeste – fuer Eingeloggte ausblenden (Zettel usfuelle / Login) */
body.pp-app.logged-in a[href*="/amelde"],
body.pp-app.logged-in a[href*="/einloggen"]{ display:none !important; }

/* Aktivitaets-Filter "— Alles —" sauber in den Fluss, dunkel, volle Breite */
body.pp-app .component-filters,
body.pp-app .component-filter,
body.pp-app .subnav-filters,
body.pp-app li.filter,
body.pp-app .last.filter{
    float:none !important; width:100% !important;
    margin:0 0 16px !important; display:block !important; text-align:left;
}
body.pp-app .select-wrap{ border:none !important; width:100% !important; display:block !important; padding:0 !important; }
body.pp-app #activity-filter-by,
body.pp-app .component-filters select,
body.pp-app .select-wrap select,
body.pp-app .filter select{
    width:100% !important; max-width:100% !important;
    background:var(--pp-card) !important; color:var(--pp-text) !important;
    border:1px solid var(--pp-border) !important; border-radius:12px !important;
    min-height:50px; padding:12px 14px !important; margin:0 !important;
}
/* Feed-/RSS-Reste sicher weg */
body.pp-app .dir-search .bp-feed,
body.pp-app a.bp-feed,
body.pp-app .feed-button,
body.pp-app .rss{ display:none !important; }

            
/* Aktivitaets-Filter "Alles": volle Breite, nicht schwebend */
body.pp-app .component-filters,
body.pp-app .subnav-filters,
body.pp-app li.last.filter,
body.pp-app .filter{ float:none !important; width:100% !important; max-width:100% !important; margin:0 0 16px !important; text-align:left !important; }
body.pp-app #activity-filter-select,
body.pp-app .component-filters select,
body.pp-app .filter select,
body.pp-app li.last.filter select,
body.pp-app .subnav-filters select{ width:100% !important; float:none !important; margin:0 !important; }

            
/* ===== Galerie radikal vereinfacht v10: nur die 6 Kacheln ===== */
body.pp-app.group-galerie #item-header,
body.pp-app.group-galerie #object-nav,
body.pp-app.group-galerie nav.bp-subnavs,
body.pp-app.group-galerie .bp-subnavs,
body.pp-app.group-galerie .item-list-tabs{ display:none !important; }
body.pp-app.pp-foto-landing .rtmedia-container{ display:none !important; }
body.pp-app .join-group,
body.pp-app a.join-group,
body.pp-app .group-button .join-group,
body.pp-app .group-button.join-group{ display:none !important; }
body.pp-app .leave-group,
body.pp-app a.leave-group,
body.pp-app .group-button .leave-group,
body.pp-app .group-button.leave-group{ display:none !important; }
body.pp-app.group-galerie .pp-foto-kacheln{ margin-top:6px; }

            
/* ===== Sugar Calendar aufgeraeumt v12: kompakte, dezente Steuerung ===== */
body.pp-app .sugar-calendar-block button,
body.pp-app .sugar-calendar-event-list-block button{ width:auto !important; min-height:0 !important; display:inline-flex !important; align-items:center; justify-content:center; padding:9px 14px !important; font-size:14px !important; font-weight:600 !important; border-radius:10px !important; background:var(--pp-card) !important; color:var(--pp-text) !important; border:1px solid var(--pp-border) !important; box-shadow:none !important; margin:0 !important; }
body.pp-app .sugar-calendar-block button:hover{ border-color:var(--pp-accent) !important; }
body.pp-app .sugar-calendar-block__controls{ display:flex !important; flex-wrap:wrap; gap:8px; align-items:center; margin-bottom:16px; }
body.pp-app .sugar-calendar-block__controls__left,
body.pp-app .sugar-calendar-block__controls__right{ display:flex !important; flex-wrap:wrap; gap:8px; align-items:center; }
body.pp-app .sugar-calendar-block__controls__left__pagination{ display:inline-flex !important; gap:4px; }
body.pp-app .sugar-calendar-block__controls__left__pagination__prev,
body.pp-app .sugar-calendar-block__controls__left__pagination__next{ width:42px !important; padding:9px 0 !important; }
body.pp-app .sugar-calendar-block__controls__left__pagination__current{ background:var(--pp-accent) !important; color:var(--pp-accent-text) !important; border-color:transparent !important; }
body.pp-app .sugar-calendar-block input[type=search],
body.pp-app .sugar-calendar-block input[type=text]{ min-height:42px !important; margin:0 !important; width:auto !important; flex:1 1 150px; }
body.pp-app .sc-filters-apply{ background:var(--pp-accent) !important; color:var(--pp-accent-text) !important; border-color:transparent !important; }
body.pp-app .sugar-calendar-event-list-block__footer{ display:flex !important; justify-content:space-between; gap:10px; margin-top:14px; }
body.pp-app .sugar-calendar-event-list-block__footer button{ flex:0 1 auto !important; }
body.pp-app .sugar-calendar-event-list-block__no-events,
body.pp-app .sugar-calendar-block__no-events,
body.pp-app .sugar-calendar-event-list-block__empty,
body.pp-app .sugar-calendar-event-list-block__list:empty{ background:var(--pp-card); border:1px solid var(--pp-border); border-radius:14px; padding:18px; color:var(--pp-text-muted); }
body.pp-app .sugar-calendar-event-list-block__list-item,
body.pp-app .sugar-calendar-block__event{ background:var(--pp-card) !important; border:1px solid var(--pp-border) !important; border-radius:14px !important; padding:14px !important; margin-bottom:10px !important; }

            
/* ===== Kalender Specificity-Fix v13 (doppeltes .pp-app schlaegt generische Button-Regel) ===== */
body.pp-app.pp-app .sugar-calendar-block__controls button,
body.pp-app.pp-app .sugar-calendar-block__controls a.button,
body.pp-app.pp-app .sugar-calendar-event-list-block button,
body.pp-app.pp-app button.sc-filters-clear{ background:var(--pp-card) !important; color:var(--pp-text) !important; border:1px solid var(--pp-border) !important; border-radius:10px !important; width:auto !important; min-height:0 !important; height:auto !important; padding:9px 14px !important; font-size:14px !important; font-weight:600 !important; box-shadow:none !important; margin:0 !important; display:inline-flex !important; align-items:center; justify-content:center; }
body.pp-app.pp-app .sugar-calendar-block__controls__left__pagination__current,
body.pp-app.pp-app button.sc-filters-apply{ background:var(--pp-accent) !important; color:var(--pp-accent-text) !important; border-color:transparent !important; }
body.pp-app.pp-app .sugar-calendar-block__controls__left__pagination__prev,
body.pp-app.pp-app .sugar-calendar-block__controls__left__pagination__next{ width:42px !important; padding:9px 0 !important; }
body.pp-app.pp-app .sugar-calendar-event-list-block__footer button{ flex:0 1 auto !important; }

            
/* ===== Kalender-Events lesbar v15 (heller Text statt schwarz) ===== */
body.pp-app.pp-app [class*="sugar-calendar-event-list-block__event"],
body.pp-app.pp-app [class*="sugar-calendar-event-list-block__event"] *,
body.pp-app.pp-app [class*="listview__event"],
body.pp-app.pp-app [class*="listview__event"] *,
body.pp-app.pp-app [class*="sc-frontend-single-event"],
body.pp-app.pp-app [class*="sc-frontend-single-event"] *{ color:var(--pp-text-muted) !important; }
body.pp-app.pp-app [class*="event__title"],
body.pp-app.pp-app [class*="event__title"] *,
body.pp-app.pp-app [class*="content__desc"],
body.pp-app.pp-app [class*="event__date"],
body.pp-app.pp-app [class*="event__day"]{ color:var(--pp-text) !important; }
body.pp-app.pp-app [class*="listview__event__body"]{ background:var(--pp-card) !important; border:1px solid var(--pp-border) !important; border-radius:12px !important; padding:14px !important; }

            
/* ===== Kalender Leer+Suche v16: schwarze Texte lesbar ===== */
body.pp-app.pp-app [class*="no-events"],
body.pp-app.pp-app [class*="no-events"] *{ color:var(--pp-text-muted) !important; }
body.pp-app.pp-app [class*="__search__field"]{ color:var(--pp-text) !important; }
body.pp-app.pp-app [class*="__search__field"]::placeholder,
body.pp-app.pp-app .sugar-calendar-block input::placeholder,
body.pp-app.pp-app .sugar-calendar-block__controls input::placeholder{ color:var(--pp-text-dim) !important; opacity:1 !important; }

            
/* ===== Einfache Termin-Liste v17 ===== */
body.pp-app.pp-app .pp-cal-toggle{ display:inline-block !important; width:auto !important; min-height:0 !important; height:auto !important; background:var(--pp-accent) !important; color:var(--pp-accent-text) !important; border:none !important; border-radius:12px !important; padding:12px 20px !important; font-size:15px !important; font-weight:700 !important; margin:0 0 18px !important; box-shadow:0 2px 8px rgba(0,0,0,.25) !important; }
body.pp-app .pp-cal-event{ background:var(--pp-card); border:1px solid var(--pp-border); border-radius:14px; padding:14px 16px; margin-bottom:12px; }
body.pp-app .pp-cal-event__date{ color:var(--pp-text-dim); font-size:14px; font-weight:600; margin-bottom:4px; }
body.pp-app .pp-cal-event__title{ color:var(--pp-text); font-size:18px; font-weight:700; margin:0 0 4px; }
body.pp-app .pp-cal-event__desc, body.pp-app .pp-cal-event__desc p{ color:var(--pp-text-muted); font-size:15px; margin:0; }
body.pp-app .pp-cal-empty{ color:var(--pp-text-muted); padding:8px 0; }

            
/* Datenschutz-Link in der Topbar (eingeloggt) */
body.pp-app .pp-topbar .pp-datenschutz{ color:var(--pp-text-dim) !important; font-size:13px; font-weight:600; text-decoration:none; margin-right:6px; white-space:nowrap; }
body.pp-app .pp-topbar .pp-datenschutz:hover{ color:var(--pp-text-muted) !important; }

            
/* ===== Kontakte-Export (Mitglieder) ===== */
body.pp-app .pp-kontakte-export{ display:block; width:100%; text-align:center; background:var(--pp-accent) !important; color:var(--pp-accent-text) !important; border:none !important; border-radius:12px !important; padding:14px 18px !important; font-size:16px !important; font-weight:700 !important; margin:8px 0 16px; box-shadow:0 2px 8px rgba(0,0,0,.25); text-decoration:none !important; cursor:pointer; }
body.pp-app .pp-kontakte-all{ display:flex; align-items:center; gap:8px; margin:0 0 14px; color:var(--pp-text-muted); font-weight:600; }
body.pp-app .pp-kontakte-all input,
body.pp-app .pp-kontakt-head input{ width:22px; height:22px; accent-color:var(--pp-accent); flex:0 0 auto; }
body.pp-app .pp-kontakt-card{ background:var(--pp-card); border:1px solid var(--pp-border); border-radius:14px; padding:14px 16px; margin-bottom:12px; }
body.pp-app .pp-kontakt-head{ display:flex; align-items:center; gap:10px; font-size:18px; font-weight:700; color:var(--pp-text); margin-bottom:8px; cursor:pointer; }
body.pp-app .pp-kontakt-info div{ color:var(--pp-text-muted); font-size:15px; margin:3px 0; }
body.pp-app .pp-k-label{ color:var(--pp-text-dim); font-weight:600; }

            
/* Forum Bild-Upload Button */
body.pp-app .twr79-img-upload{ margin:8px 0 4px; }
body.pp-app .twr79-img-upload-btn{ display:inline-block; width:auto !important; min-height:0 !important; background:var(--pp-card) !important; color:var(--pp-text) !important; border:1px solid var(--pp-border) !important; border-radius:10px !important; padding:9px 14px !important; font-size:14px !important; font-weight:600 !important; box-shadow:none !important; cursor:pointer; }
body.pp-app .twr79-img-upload-btn:hover{ border-color:var(--pp-accent) !important; }
body.pp-app .twr79-img-status{ font-size:13px; color:var(--pp-text-dim); margin-left:8px; }

            
/* Termine: Aktionen + Zusagen */
body.pp-app .pp-cal-event__actions{ display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
body.pp-app .pp-cal-ics{ display:inline-block; background:var(--pp-card-hi) !important; color:var(--pp-text) !important; border:1px solid var(--pp-border) !important; border-radius:10px; padding:9px 14px; font-size:14px; font-weight:600; text-decoration:none !important; }
body.pp-app .pp-cal-ics:hover{ border-color:var(--pp-accent) !important; text-decoration:none !important; }
body.pp-app .pp-cal-rsvp{ display:inline-block; width:auto !important; min-height:0 !important; height:auto !important; background:var(--pp-accent) !important; color:var(--pp-accent-text) !important; border:1px solid transparent !important; border-radius:10px !important; padding:9px 16px !important; font-size:14px !important; font-weight:700 !important; box-shadow:none !important; cursor:pointer; }
body.pp-app .pp-cal-rsvp.going{ background:var(--pp-card) !important; color:var(--pp-text) !important; border-color:var(--pp-accent) !important; }
body.pp-app .pp-cal-rsvp-list{ color:var(--pp-text-dim); font-size:14px; margin-top:8px; }

            
/* Forum: Aufruf-Zaehler */
body.pp-app .twr79-views{ display:inline-block; color:var(--pp-text-dim); font-size:13px; font-weight:600; margin:2px 0 12px; }

            