/**
 * ProjectPlayCore – Admin- und Bereichs-Styles für httpdocs (deine Website)
 * Backend, User-Dashboard, Login, Registrierung, Logout – inkl. zentrierter .wrap-Container
 */
:root {
    --wp-blue: #2271b1;
    --wp-blue-hover: #135e96;
    --wp-gray: #f0f0f1;
    --wp-gray-dark: #646970;
    --wp-border: #c3c4c7;
    --wp-text: #1d2327;
    --wp-error: #d63638;
    --wp-error-bg: #fcf0f1;
}

/* Dark Mode – gleicher Key wie Theme (ppc_theme in localStorage) */
html.ppc-theme-dark {
    --wp-gray: #1d2327;
    --wp-gray-dark: #b4b9be;
    --wp-border: #3c434a;
    --wp-text: #f0f0f1;
    --wp-error-bg: rgba(214, 54, 56, 0.15);
}
html.ppc-theme-dark body.wp-body { background: #1d2327; color: var(--wp-text); }
html.ppc-theme-dark .wp-header { background: #23282d; border-bottom-color: var(--wp-border); }
html.ppc-theme-dark .wp-welcome-box,
html.ppc-theme-dark .wp-widget { background: #23282d; border-color: var(--wp-border); }
html.ppc-theme-dark .wp-widget-header { background: #2c3338; border-bottom-color: var(--wp-border); color: var(--wp-text); }
html.ppc-theme-dark .wp-form-input { background: #2c3338; border-color: var(--wp-border); color: var(--wp-text); }
html.ppc-theme-dark .wp-button-secondary { background: #2c3338; color: var(--wp-text); border-color: var(--wp-border); }
html.ppc-theme-dark .wp-button-secondary:hover { background: #3c434a; }
html.ppc-theme-dark .wp-footer { background: #23282d; border-top-color: var(--wp-border); color: var(--wp-gray-dark); }
html.ppc-theme-dark .wp-theme-toggle { color: var(--wp-text); border-color: var(--wp-border); background: transparent; }

* { box-sizing: border-box; }

body.wp-body {
    margin: 0;
    padding: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-size: 14px;
    line-height: 1.5;
    color: var(--wp-text);
    background: var(--wp-gray);
}

/* Header */
.wp-header {
    background: #fff;
    border-bottom: 1px solid var(--wp-border);
    padding: 0 20px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 1px 1px rgba(0,0,0,.04);
}
.wp-header-left { display: flex; align-items: center; gap: 20px; }
.wp-header-logo {
    font-size: 20px;
    font-weight: 600;
    color: var(--wp-blue);
    text-decoration: none;
}
.wp-header-logo:hover { color: var(--wp-blue-hover); }
.wp-header-link-dashboard {
    color: var(--wp-blue);
    text-decoration: none;
    font-size: 13px;
}
.wp-header-link-dashboard:hover { text-decoration: underline; }
.wp-header-right { display: flex; align-items: center; gap: 15px; }
.wp-user-info {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--wp-gray-dark);
}
.wp-user-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--wp-blue);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 14px;
}

/* Buttons */
.wp-button {
    padding: 8px 16px;
    border-radius: 3px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    line-height: 1.4;
    border: none;
    cursor: pointer;
    font-family: inherit;
}
.wp-button-primary {
    background: var(--wp-blue);
    color: #fff;
}
.wp-button-primary:hover { background: var(--wp-blue-hover); color: #fff; }
.wp-button-secondary {
    background: #f6f7f7;
    color: var(--wp-text);
    border: 1px solid var(--wp-border);
}
.wp-button-secondary:hover { background: #f0f0f1; }
.wp-button-admin {
    background: rgba(219, 166, 23, 0.15);
    color: #94660c;
    border: 1px solid rgba(219, 166, 23, 0.5);
}
.wp-button-admin:hover { background: rgba(219, 166, 23, 0.25); }

/* Container & Boxes – zentriert (httpdocs-weit) */
.wp-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}
.wp-main { width: 100%; }
.wp-main .wp-content { max-width: 100%; box-sizing: border-box; }
.wp-main .wrap {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
}
.wp-container.wp-container-narrow {
    max-width: 520px;
}
.wp-welcome-box {
    background: #fff;
    border: 1px solid var(--wp-border);
    border-radius: 4px;
    padding: 20px;
    margin-bottom: 20px;
}
.wp-welcome-box h1 {
    margin: 0 0 10px 0;
    font-size: 23px;
    font-weight: 400;
    line-height: 1.3;
}
.wp-welcome-box p {
    margin: 0 0 15px 0;
    color: var(--wp-gray-dark);
}
.wp-welcome-box p:last-child { margin-bottom: 0; }

/* Widgets / Cards */
.wp-widget-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
}
.wp-widget {
    background: #fff;
    border: 1px solid var(--wp-border);
    border-radius: 4px;
    overflow: hidden;
}
.wp-widget-header {
    padding: 12px 16px;
    border-bottom: 1px solid var(--wp-border);
    background: #f6f7f7;
    font-weight: 600;
    font-size: 14px;
}
.wp-widget-body {
    padding: 16px;
}
.wp-widget-body p { margin: 0 0 12px 0; color: var(--wp-gray-dark); }
.wp-widget-body p:last-child { margin-bottom: 0; }
.wp-widget-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
}

/* Forms (Login, Register) */
.wp-form-group {
    margin-bottom: 16px;
}
.wp-form-group label {
    display: block;
    margin-bottom: 6px;
    font-weight: 500;
    color: var(--wp-text);
}
.wp-form-input {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid var(--wp-border);
    border-radius: 3px;
    font-size: 14px;
    font-family: inherit;
    background: #fff;
    color: var(--wp-text);
}
.wp-form-input:focus {
    border-color: var(--wp-blue);
    outline: none;
    box-shadow: 0 0 0 1px var(--wp-blue);
}
.wp-form-input::placeholder {
    color: var(--wp-gray-dark);
}
.wp-form-checkbox {
    margin-right: 8px;
}
.wp-form-submit {
    width: 100%;
    margin-top: 8px;
    padding: 10px 16px;
    font-size: 14px;
    font-weight: 500;
}
.wp-message {
    padding: 12px 16px;
    border-radius: 4px;
    margin-bottom: 16px;
}
.wp-message-error {
    background: var(--wp-error-bg);
    border: 1px solid var(--wp-error);
    color: var(--wp-error);
}
.wp-message-info {
    background: #f0f6fc;
    border: 1px solid var(--wp-blue);
    color: var(--wp-blue-hover);
}
/* Erfolg / OK (User-Profil u. a., wenn kein separates Widget) */
.wp-message-success,
.wp-message-ok {
    background: rgba(74, 222, 128, 0.12);
    border: 1px solid rgba(74, 222, 128, 0.35);
    color: #166534;
}
html.ppc-theme-dark .wp-message-success,
html.ppc-theme-dark .wp-message-ok {
    color: #bbf7d0;
}

/* Meldungen auf dunklen User-/Profil-Flächen (Theme-Tokens, Orange-Info) */
.ppc-page-card .wp-message-info,
.ppc-profile-wrap .wp-message-info {
    background: rgba(249, 115, 22, 0.12);
    border: 1px solid rgba(249, 115, 22, 0.4);
    color: var(--ppc-text, var(--wp-text));
}
.ppc-page-card .wp-message-error,
.ppc-profile-wrap .wp-message-error {
    background: rgba(248, 113, 113, 0.12);
    border: 1px solid rgba(248, 113, 113, 0.45);
    color: #b91c1c;
}
html.ppc-theme-dark .ppc-page-card .wp-message-error,
html.ppc-theme-dark .ppc-profile-wrap .wp-message-error {
    color: #fecaca;
}
.ppc-page-card .wp-message-success,
.ppc-page-card .wp-message-ok,
.ppc-profile-wrap .wp-message-success,
.ppc-profile-wrap .wp-message-ok {
    background: rgba(74, 222, 128, 0.12);
    border: 1px solid rgba(74, 222, 128, 0.35);
    color: #166534;
}
html.ppc-theme-dark .ppc-page-card .wp-message-success,
html.ppc-theme-dark .ppc-page-card .wp-message-ok,
html.ppc-theme-dark .ppc-profile-wrap .wp-message-success,
html.ppc-theme-dark .ppc-profile-wrap .wp-message-ok {
    color: #bbf7d0;
}
.ppc-page-card .wp-message-login-status {
    margin-top: 0.75rem;
}

.wp-muted {
    color: var(--wp-gray-dark);
    font-size: 13px;
    text-align: center;
    margin-top: 16px;
}
.wp-muted a {
    color: var(--wp-blue);
    text-decoration: none;
}
.wp-muted a:hover { text-decoration: underline; }

/* Footer */
.wp-footer {
    text-align: center;
    padding: 20px;
    color: var(--wp-gray-dark);
    font-size: 13px;
    border-top: 1px solid var(--wp-border);
    margin-top: 20px;
    background: #fff;
}

/* =============================================================================
   Fluid-Hilfen (User-/WebView-Seiten, kein Geräte-Hardcoding)
   ============================================================================= */
.ppc-user-card--dashboard .ppc-dashboard-guest-actions {
    margin-top: clamp(0.75rem, 2vw, 1rem);
}

/* =============================================================================
   User-Bereich: gemeinsame Kartenbreiten (Design-Tokens aus theme.css)
   ============================================================================= */
.ppc-user-card {
    max-width: min(520px, 100%);
    margin: 0 auto;
    padding: clamp(1rem, 3vw, 1.5rem);
    box-sizing: border-box;
}
.ppc-user-card--login {
    max-width: min(420px, 100%);
}
.ppc-user-card--wide {
    max-width: min(900px, 100%);
}
.ppc-user-card--system {
    max-width: min(640px, 100%);
}
.ppc-user-card--nexus {
    max-width: min(1000px, 100%);
}
.ppc-user-card--dashboard {
    max-width: min(1200px, 100%);
    overflow: hidden;
}
.ppc-user-card--core {
    max-width: min(960px, 100%);
    margin: 0 auto;
    padding: clamp(1rem, 3vw, 1.5rem);
    box-sizing: border-box;
}

.ppc-form-row-inline {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    flex-wrap: wrap;
}
.ppc-form-row-inline .wp-form-input {
    flex: 1;
    min-width: 160px;
}

/* Coins (User-Seite) – neutral + Orange-Akzent, keine Gold-Verläufe */
.wp-coins-content .coins-balance-box {
    background: var(--ppc-card-surface, #f6f7f7);
    color: var(--ppc-text, var(--wp-text));
    border: 1px solid var(--ppc-card-border, var(--wp-border));
    border-left: 4px solid var(--ppc-accent, #f97316);
    padding: 1.25rem;
    border-radius: 8px;
    margin-bottom: 1.5rem;
    font-size: 1.15rem;
    font-weight: 600;
}
.wp-coins-content .coins-packages {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 1rem;
    margin: 1rem 0;
}
.wp-coins-content .coins-package {
    border: 1px solid var(--ppc-card-border, var(--wp-border));
    border-radius: 8px;
    padding: 1rem;
    text-align: center;
    background: var(--ppc-card-bg, #fff);
    color: var(--ppc-text, var(--wp-text));
}
.wp-coins-content .coins-package .amount {
    font-size: clamp(1.15rem, 4vw, 1.5rem);
    font-weight: 700;
    color: var(--ppc-accent, #f97316);
}
.wp-coins-content .coins-package .price {
    font-size: clamp(0.95rem, 2.5vw, 1.1rem);
    margin: 0.5rem 0;
    color: var(--ppc-text-muted, var(--wp-gray-dark));
}
.wp-coins-content .coins-package button,
.wp-coins-content .coins-package .wp-button {
    width: 100%;
    margin-top: 0.5rem;
}
.wp-coins-content .coins-tx {
    font-size: clamp(0.85rem, 2.2vw, 0.9rem);
    border-bottom: 1px solid var(--ppc-card-border, var(--wp-border));
    padding: 0.5rem 0;
    color: var(--ppc-text, var(--wp-text));
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.25rem 0.5rem;
    word-break: break-word;
}
.wp-coins-content .coins-buy-actions {
    margin: 0.75rem 0 0;
}
.wp-coins-content .coins-buy-actions .wp-button {
    min-height: 44px;
    padding: 0.6rem 1rem;
    box-sizing: border-box;
}
.wp-coins-content .coins-tx.credit {
    color: #4ade80;
}
.wp-coins-content .coins-tx.debit {
    color: #f87171;
}
.wp-coins-content .coins-account-field {
    margin-bottom: 0.75rem;
}
.wp-coins-content .coins-account-field label {
    display: block;
    font-weight: 500;
    font-size: 0.9rem;
    margin-bottom: 0.25rem;
    color: var(--ppc-text, var(--wp-text));
}
.wp-coins-content .coins-account-field .value {
    padding: 0.35rem 0;
    color: var(--ppc-text, var(--wp-text));
}
.wp-coins-content .coins-account-field .value.empty {
    color: var(--ppc-text-muted, var(--wp-gray-dark));
    font-style: italic;
}
.wp-coins-content .coins-account-field input,
.wp-coins-content .coins-account-field select,
.wp-coins-content .coins-account-field textarea {
    width: 100%;
    max-width: 400px;
    padding: 6px 10px;
    border: 1px solid var(--ppc-card-border, var(--wp-border));
    border-radius: 4px;
    background: var(--ppc-card-bg, #fff);
    color: var(--ppc-text, var(--wp-text));
}
.wp-coins-content .coins-account-field textarea {
    min-height: 60px;
}

/* Nexus: Admin-Hinweis ohne Blau-Chaos, Orange-Rand */
.nexus-admin-note {
    background: rgba(249, 115, 22, 0.08);
    border: 1px solid var(--ppc-accent, #f97316);
    border-radius: 8px;
    padding: 0.75rem 1rem;
    margin-top: 1rem;
    font-size: 0.9rem;
    color: var(--ppc-text);
}
.nexus-nav-links {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}
.nexus-nav-links a {
    color: var(--ppc-accent);
    text-decoration: none;
    font-size: 0.95rem;
    padding: 0.35rem 0;
    min-height: 44px;
    display: flex;
    align-items: center;
    box-sizing: border-box;
}
.nexus-nav-links a:hover {
    color: var(--ppc-accent-hover);
    text-decoration: underline;
}

/* Nexus-Userseite: Absätze ohne Inline-Styles, fluid */
.ppc-user-card--nexus .nexus-section-lead {
    margin: 0 0 0.5rem;
}
.ppc-user-card--nexus .nexus-muted {
    margin: 0;
    font-size: clamp(0.85rem, 2.5vw, 0.95rem);
    color: var(--ppc-text-muted);
    line-height: 1.45;
    word-break: break-word;
    overflow-wrap: anywhere;
}
.ppc-user-card--nexus .nexus-muted a {
    color: var(--ppc-accent);
}
.ppc-user-card--nexus .nexus-muted--tight {
    margin-bottom: 0.75rem;
}
.ppc-user-card--nexus .nexus-version-line {
    font-size: clamp(0.8rem, 2.2vw, 0.9rem);
    margin: 0 0 0.75rem;
}
.ppc-user-card--nexus .nexus-admin-lead {
    margin: 0;
    font-size: clamp(0.9rem, 2.5vw, 0.95rem);
    color: var(--ppc-text);
    line-height: 1.5;
    word-break: break-word;
}
.ppc-user-card--nexus .nexus-cta-primary,
.ppc-user-card--nexus .nexus-cta-secondary {
    margin-top: 0;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}
.ppc-user-card--nexus .nexus-cta-secondary {
    margin-top: 0.5rem;
}

/*
 * =============================================================================
 * User-Bereich – Referenz (keine Dubletten anlegen; Erweiterungen hier gruppieren)
 * =============================================================================
 * .ppc-user-card*          – zentrierte Kartenbreiten (Login, Dashboard, …)
 * .ppc-form-row-inline     – horizontale Formzeilen (z. B. Telefon + Button)
 * .ppc-page-outer--profile – siehe theme.css (margin-top: 0, Cover bleibt in .ppc-profile-outer)
 * .wp-coins-content        – Coins-Seite inkl. Balance, Pakete, Transaktionen
 * .nexus-admin-note        – Admin-Hinweis Nexus (Orange)
 * .nexus-nav-links         – Sidebar-Navigation Nexus
 * .ppc-core-*              – Core-Webinterface + Modal (Präfix gegen Kollisionen; Breite: .ppc-user-card--core)
 * .ppc-profile-* / .profile-* – Profilseite (Cover-Overlap unverändert)
 * =============================================================================
 */

/* ----------------------------------------------------------------------------- 
 * Core-Webinterface (/user/core.php) – Modal/Overlay unverändert, nur ausgelagert
 * ----------------------------------------------------------------------------- */
.ppc-core-title {
    margin: 0 0 0.35rem;
    font-size: 1.5rem;
    color: var(--ppc-text);
}
.ppc-core-intro { color: var(--ppc-text-muted); margin: 0 0 1.25rem; }
.ppc-core-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1rem; margin-bottom: 1.5rem; }
.ppc-core-stat { background: var(--ppc-card-bg, rgba(255,255,255,0.03)); border: 1px solid var(--ppc-card-border); border-radius: 8px; padding: 1.25rem; text-align: center; }
.ppc-core-stat .v { font-size: 1.75rem; font-weight: 700; color: var(--ppc-accent); }
.ppc-core-stat .l { color: var(--ppc-text-muted); font-size: 0.9rem; margin-top: 0.35rem; }
.ppc-core-info { background: rgba(255, 107, 53, 0.08); border-left: 3px solid var(--ppc-accent); padding: 1rem; border-radius: 4px; margin-bottom: 1.5rem; color: var(--ppc-text-muted); font-size: 0.95rem; }
.ppc-core-info p { margin: 0.35rem 0; }
.ppc-core-info strong { color: var(--ppc-text); }
.ppc-core-empty { text-align: center; padding: 1.5rem 1rem; }
.ppc-core-empty h2 { color: var(--ppc-accent); margin: 0 0 0.75rem; font-size: 1.2rem; }
.ppc-core-empty p { color: var(--ppc-text-muted); margin: 0 0 1rem; }
.ppc-core-actions { text-align: center; }
.ppc-core-open-btn { font-size: 1.05rem; padding: 0.75rem 1.5rem; }
.ppc-core-btn-gap { margin-left: 0.5rem; }
.ppc-core-modal { display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.88); z-index: 10000; padding: 1rem; }
.ppc-core-modal.active { display: flex; flex-direction: column; }
.ppc-core-modal-h { display: flex; justify-content: space-between; align-items: center; padding: 0.75rem 1rem; background: var(--ppc-card-bg, #0f1722); border-bottom: 1px solid var(--ppc-card-border); border-radius: 8px 8px 0 0; }
.ppc-core-modal-h h2 { margin: 0; font-size: 1.25rem; color: var(--ppc-text); }
.ppc-core-modal-close { background: transparent; border: 1px solid var(--ppc-card-border); color: var(--ppc-text); width: 40px; height: 40px; border-radius: 8px; cursor: pointer; font-size: 1.25rem; line-height: 1; }
.ppc-core-modal-close:hover { border-color: var(--ppc-accent); color: var(--ppc-accent); }
.ppc-core-modal iframe { flex: 1; border: none; width: 100%; min-height: 50vh; background: #0f1419; border-radius: 0 0 8px 8px; }

/* Coins: Meldungen & Hilfstexte (dunkle Karte, Orange-Info) */
.wp-coins-content .wp-message { margin-bottom: 1rem; }
.wp-coins-content .wp-message-info {
    background: rgba(249, 115, 22, 0.12);
    border: 1px solid rgba(249, 115, 22, 0.4);
    color: var(--ppc-text, var(--wp-text));
}
.wp-coins-content .wp-message-error {
    background: rgba(248, 113, 113, 0.12);
    border: 1px solid rgba(248, 113, 113, 0.45);
    color: #fecaca;
}
.wp-coins-content .coins-muted {
    color: var(--ppc-text-muted, var(--wp-gray-dark));
    margin-bottom: 1rem;
}
.wp-coins-content .coins-help-text {
    color: var(--ppc-text-muted, var(--wp-gray-dark));
    margin-top: 1rem;
    margin-bottom: 0;
}
.wp-coins-content .coins-section-desc { margin-bottom: 0.75rem; }
.wp-coins-content .coins-form-actions {
    margin-top: 1rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}
.wp-coins-content .coins-form-actions .wp-button {
    min-height: 44px;
    box-sizing: border-box;
}
.wp-coins-content .coins-tx-date { color: var(--ppc-text-muted, var(--wp-gray-dark)); }

/* Profil: statische Layout-Helfer (dynamische background-image bleibt inline) */
.ppc-profile-wrap .profile-body--private {
    padding: clamp(1.25rem, 4vw, 2rem) clamp(1rem, 3vw, 1.5rem);
}
.ppc-profile-wrap .profile-private-msg { color: var(--ppc-text-muted); margin: 0 0 1rem; }
.ppc-profile-wrap .profile-flash-ok { margin: 0; color: var(--ppc-accent); }
.ppc-profile-wrap .profile-flash-err { margin: 0.25rem 0 0; }
.ppc-profile-wrap .profile-divider { border-top: 1px solid var(--ppc-card-border); margin: 1rem 0; }
.ppc-profile-wrap .profile-content-main { flex: 1 1 100%; margin-top: 1rem; }
.ppc-profile-wrap .profile-mt {
    margin-top: 1.25rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}
.ppc-profile-wrap .profile-h3-spaced { margin-top: 2rem; }
.ppc-profile-wrap .profile-subsection-gap { margin-top: 1rem; }
.ppc-profile-wrap .profile-desc-tight { margin-top: 1rem; font-size: 0.85rem; }
.ppc-profile-wrap .profile-avatar-thumb { width: 96px; height: 96px; border-radius: 50%; object-fit: cover; margin-bottom: 0.75rem; display: block; }
.ppc-profile-wrap .profile-file-input { margin-bottom: 0.5rem; }
.ppc-profile-wrap .profile-form-upload { margin-bottom: 1rem; }
.ppc-profile-wrap .profile-form-inline { display: inline; margin-left: 0.5rem; }
.ppc-profile-wrap .profile-form-inline-plain { display: inline; }
.ppc-profile-wrap .profile-playlist-ul { list-style: none; padding: 0; }
.ppc-profile-wrap .profile-playlist-li { padding: 0.35rem 0; border-bottom: 1px solid var(--ppc-card-border, var(--wp-border)); display: flex; align-items: center; gap: 0.5rem; }
.ppc-profile-wrap .profile-playlist-add { margin-top: 0.75rem; }
.ppc-profile-wrap .profile-playlist-input {
    max-width: min(400px, 100%);
    width: 100%;
    padding: 6px;
    box-sizing: border-box;
}
.ppc-profile-wrap .profile-playlist-input--gap { margin-left: 0.25rem; }
.ppc-profile-wrap .wp-badge--friend-sent { background: rgba(249, 115, 22, 0.45); color: #fff; }
.ppc-profile-wrap .wp-badge--friend-in { background: var(--ppc-card-border); color: var(--ppc-text); }

/* Profilseite: großer Block (Cover-Overlap, Steam-Layout) – aus profile.php ausgelagert */
/* Profil: Abstand unter Seitenheader, Container ohne Scrollbalken, läuft in Header rein, Schatten */
.ppc-profile-outer {
    margin-top: clamp(5rem, 10vw + 2.5rem, 7rem);
    padding-bottom: clamp(1.25rem, 3vw, 2rem);
}
/* Projekt-Farben aus theme.css (--ppc-card-*, --ppc-accent) – einheitlich mit allen Seiten */
.ppc-profile-wrap {
    max-width: min(1200px, 100%);
    margin: clamp(-2rem, -5vw, -1.25rem) auto 0;
    padding: 0;
    overflow: visible;
    background: var(--ppc-card-bg);
    border-radius: 12px;
    box-shadow: 0 0 60px rgba(0,0,0,0.3), 0 8px 32px rgba(0,0,0,0.2);
    color: var(--ppc-text);
    box-sizing: border-box;
}
/* Globale ID-Leiste oben (Steam-Style) */
.profile-global-id-bar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    padding: clamp(0.4rem, 2vw, 0.5rem) clamp(0.65rem, 2.5vw, 1rem);
    background: var(--ppc-card-surface);
    border-bottom: 1px solid var(--ppc-card-border);
    border-radius: 12px 12px 0 0;
    font-size: clamp(0.8rem, 2.2vw, 0.9rem);
    min-width: 0;
}
.profile-global-id-label { color: var(--ppc-text-muted); text-transform: uppercase; letter-spacing: 0.05em; }
.profile-global-id-value { font-weight: 700; font-family: ui-monospace, monospace; color: var(--ppc-text); }
.profile-global-id-copy { padding: 0.25rem 0.5rem; font-size: 0.8rem; background: var(--ppc-card-border); border: none; border-radius: 4px; color: var(--ppc-text); cursor: pointer; }
.profile-global-id-copy:hover { background: var(--ppc-accent); color: #fff; }
.profile-global-id-sep { color: var(--ppc-text-muted); }
.profile-global-id-link {
    color: var(--ppc-accent);
    text-decoration: none;
    word-break: break-all;
    overflow-wrap: anywhere;
    max-width: 100%;
}
.profile-global-id-link:hover { text-decoration: underline; color: var(--ppc-accent-hover); }
.ppc-profile-wrap .wp-widget-header { background: var(--ppc-card-surface); color: var(--ppc-text); border: none; }
.ppc-profile-wrap .wp-widget-body { background: var(--ppc-card-bg); color: var(--ppc-text); border: 1px solid var(--ppc-card-border); }
.ppc-profile-wrap a { color: var(--ppc-accent); }
.ppc-profile-wrap a:hover { color: var(--ppc-accent-hover); }
.ppc-profile-wrap .wp-button-primary { background: var(--ppc-accent); color: #fff; border: none; }
.ppc-profile-wrap .wp-button-primary:hover { background: var(--ppc-accent-hover); }
.ppc-profile-wrap .wp-button-secondary { background: transparent; color: var(--ppc-accent); border: 1px solid var(--ppc-accent); }
/* Cover: schmaler Header-Streifen */
.profile-cover {
    position: relative;
    width: 100%;
    min-height: clamp(88px, 18vw, 120px);
    border-radius: 12px 12px 0 0;
    overflow: hidden;
}
.profile-cover-bg { position: absolute; inset: 0; background: var(--ppc-card-surface) 50% / cover no-repeat; }
.profile-cover-inner {
    position: relative;
    min-height: clamp(80px, 16vw, 100px);
    background: var(--ppc-card-surface) 50% / cover no-repeat;
    padding: clamp(0.75rem, 2.5vw, 1rem) clamp(0.75rem, 2.5vw, 1rem) clamp(1.25rem, 3vw, 2rem);
}
.profile-cover-avatar-row { display: flex; align-items: flex-end; gap: 1rem; flex-wrap: wrap; min-width: 0; }
.profile-cover-avatar { width: 84px; height: 84px; border-radius: 50%; border: 3px solid var(--ppc-card-bg); object-fit: cover; background: var(--ppc-card-surface); flex-shrink: 0; }
.profile-cover-avatar-placeholder { width: 84px; height: 84px; border-radius: 50%; border: 3px solid var(--ppc-card-bg); background: var(--ppc-card-surface); display: flex; align-items: center; justify-content: center; font-size: 2rem; color: var(--ppc-text); flex-shrink: 0; }
.profile-cover-info {
    padding-bottom: 0.25rem;
    min-width: 0;
    flex: 1 1 12rem;
}
.profile-cover-info h1 {
    margin: 0;
    font-size: clamp(1rem, 3.5vw, 1.25rem);
    font-weight: 700;
    color: #fff;
    overflow-wrap: anywhere;
    word-break: break-word;
    line-height: 1.2;
}
.profile-cover-info p { margin: 0.25rem 0 0; font-size: 0.85rem; color: var(--ppc-text-muted); }
.profile-cover-info .wp-badge { margin-top: 0.35rem; }
/* Layout: Links = Profil-Karte + Aktivitäten, Rechts = Sidebar */
.profile-body { display: flex; gap: 0; padding: 0; flex-wrap: wrap; }
.profile-left { flex: 1; min-width: 0; padding: 1rem 1.5rem 1.5rem; }
.profile-right { width: 300px; flex-shrink: 0; background: var(--ppc-card-sidebar); padding: 1rem; border-left: 1px solid var(--ppc-card-border); }
@media (max-width: 768px) { .profile-right { width: 100%; border-left: none; border-top: 1px solid var(--ppc-card-border); } }
/* Profil-Karte: Avatar, Name, Rolle, Button */
.profile-card { margin-bottom: 1rem; }
.profile-card-avatar { width: 184px; height: 184px; border-radius: 50%; border: 3px solid var(--ppc-card-bg); object-fit: cover; background: var(--ppc-card-surface); display: block; margin: 0 auto 0.75rem; }
.profile-card-avatar-placeholder { width: 184px; height: 184px; border-radius: 50%; border: 3px solid var(--ppc-card-bg); background: var(--ppc-card-surface); display: flex; align-items: center; justify-content: center; font-size: 4rem; color: var(--ppc-text-dim); margin: 0 auto 0.75rem; }
.profile-card-name {
    font-size: clamp(1.15rem, 4.5vw, 1.75rem);
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin: 0 0 0.25rem;
    line-height: 1.2;
    overflow-wrap: anywhere;
    word-break: break-word;
}
.profile-card-role { font-size: 0.9rem; color: var(--ppc-text-muted); text-align: center; margin: 0 0 0.75rem; }
.profile-activity-title { font-size: 1.1rem; font-weight: 600; color: #fff; margin: 0 0 0.5rem; padding-bottom: 0.5rem; border-bottom: 1px solid var(--ppc-card-border); }
.profile-activity-list { list-style: none; padding: 0; margin: 0; }
.profile-activity-list li { padding: 0.6rem 0; border-bottom: 1px solid var(--ppc-card-border); color: var(--ppc-text); font-size: 0.95rem; }
/* Avatar in rechter Sidebar (statt Rolle) */
.profile-right-avatar-wrap { position: relative; display: flex; justify-content: center; margin-bottom: 1rem; }
.profile-right-avatar { width: 120px; height: 120px; border-radius: 50%; border: 3px solid var(--ppc-card-border); object-fit: cover; background: var(--ppc-card-surface); }
.profile-right-avatar-placeholder { width: 120px; height: 120px; border-radius: 50%; border: 3px solid var(--ppc-card-border); background: var(--ppc-card-surface); display: flex; align-items: center; justify-content: center; font-size: 2.5rem; color: var(--ppc-text-dim); }
.profile-right-avatar-upload .profile-upload-btn { bottom: 4%; right: 50%; transform: translate(50%, 30%); }
.profile-right-status { font-size: 0.9rem; color: var(--ppc-text-dim); margin-bottom: 1rem; }
.profile-right-links { display: flex; flex-direction: column; gap: 0.25rem; }
.profile-right-links a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 0.35rem 0;
    color: var(--ppc-accent);
    text-decoration: none;
    font-size: 0.95rem;
    box-sizing: border-box;
}
.profile-right-links a:hover { color: var(--ppc-accent-hover); }
.profile-right-section { margin-bottom: 1.25rem; }
.profile-right-section-title { font-size: 0.85rem; color: var(--ppc-text-muted); text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 0.5rem; }
.profile-section { margin-bottom: 1.5rem; }
.profile-section h2 { margin: 0 0 0.5rem; font-size: 1.1rem; }
.profile-edit-block { margin-bottom: 1.5rem; }
.profile-edit-section { margin-bottom: 1.25rem; }
.profile-edit-section-title { margin: 0 0 0.5rem; font-size: 1rem; color: var(--ppc-text-muted); }
.profile-section .section-desc { color: var(--ppc-text-muted, var(--wp-gray-dark)); font-size: 0.9rem; margin-bottom: 0.75rem; }
.profile-field { margin-bottom: 0.75rem; }
.profile-field label { display: block; font-weight: 500; font-size: 0.9rem; margin-bottom: 0.25rem; }
.profile-field .value { color: var(--ppc-text, var(--wp-text)); padding: 0.35rem 0; }
.profile-field .value.empty { color: var(--ppc-text-muted, var(--wp-gray-dark)); font-style: italic; }
.profile-field input, .profile-field select, .profile-field textarea {
    width: 100%;
    max-width: min(480px, 100%);
    padding: 6px 10px;
    border: 1px solid var(--ppc-card-border, var(--wp-border));
    border-radius: 4px;
    background: var(--ppc-card-bg, #fff);
    color: var(--ppc-text, var(--wp-text));
    box-sizing: border-box;
}
.profile-field textarea { min-height: 60px; }
.profile-field .hint { font-size: 0.8rem; color: var(--ppc-text-muted, var(--wp-gray-dark)); margin-top: 0.2rem; }
.profile-tx-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.profile-tx-table th, .profile-tx-table td { padding: 0.5rem 0.75rem; border-bottom: 1px solid var(--ppc-card-border, var(--wp-border)); text-align: left; }
.profile-tx-table th { background: var(--ppc-card-surface, #f6f7f7); font-weight: 600; color: var(--ppc-text, var(--wp-text)); }
.profile-tx-table .tx-credit { color: #4ade80; }
.profile-tx-table .tx-debit { color: #f87171; }
.profile-images-uploads { margin-top: 0.75rem; }
.profile-images-uploads .section-desc { font-size: 0.85rem; color: var(--ppc-text-muted, var(--wp-gray-dark)); margin: 0.5rem 0 0.75rem; }
.profile-upload-detail { margin-bottom: 0.5rem; }
.profile-upload-detail summary { display: inline-flex; align-items: center; gap: 0.35rem; cursor: pointer; font-size: 0.9rem; padding: 0.35rem 0.5rem; border-radius: 6px; border: 1px solid var(--ppc-card-border, var(--wp-border)); background: var(--ppc-card-surface, #f6f7f7); list-style: none; }
.profile-upload-detail summary::-webkit-details-marker { display: none; }
.profile-upload-detail summary:hover { background: var(--ppc-card-border); }
.profile-upload-detail summary .profile-upload-icon { display: inline-flex; width: 1.1em; height: 1.1em; }
.profile-upload-detail .profile-upload-form { margin-top: 0.5rem; padding: 0.75rem; border: 1px solid var(--ppc-card-border, var(--wp-border)); border-radius: 6px; background: var(--ppc-card-bg, #fff); }
.profile-upload-detail .profile-upload-form label { font-size: 0.9rem; }
.profile-upload-detail .profile-upload-form input[type="file"] { font-size: 0.85rem; margin-left: 0.25rem; }
.profile-upload-detail .profile-upload-form button { margin-left: 0.5rem; }
/* Upload-Buttons als kleine Icons am Bild (5 Uhr am Avatar, unten rechts am Header) */
.profile-cover-avatar-cell { position: relative; flex-shrink: 0; }
.profile-upload-btn { position: absolute; width: 32px; height: 32px; border-radius: 50%; background: rgba(0,0,0,0.6); color: #fff; border: 2px solid #fff; cursor: pointer; display: flex; align-items: center; justify-content: center; padding: 0; box-shadow: 0 2px 8px rgba(0,0,0,0.3); }
.profile-upload-btn:hover { background: var(--ppc-accent); }
.profile-upload-btn input { position: absolute; opacity: 0; width: 0; height: 0; }
.profile-cover-avatar-cell .profile-upload-btn { bottom: 4%; right: 4%; transform: translate(25%, 25%); }
.profile-cover-inner { position: relative; }
.profile-cover-header-upload { position: absolute; bottom: 0.5rem; right: 0.5rem; z-index: 2; }
.profile-cover-header-upload .profile-upload-btn { position: static; transform: none; }
.profile-cover-bg-upload { position: absolute; bottom: 0.5rem; right: 0.5rem; z-index: 2; }
.profile-cover-bg-upload .profile-upload-btn { position: static; }
/* Avatar-Upload genau 5-Uhr-Position am Kreis (unten rechts am Rand) */
.profile-avatar-upload-5h { position: absolute; bottom: 4%; right: 4%; z-index: 2; }
.profile-avatar-upload-5h .profile-upload-btn { bottom: 0; right: 0; transform: translate(30%, 30%); }
/* Steam-Style Profil bearbeiten */
.profile-edit-steam-outer { padding: 1rem 1.5rem 2rem; }
.profile-edit-steam-header { display: flex; align-items: center; gap: 1rem; margin-bottom: 1.5rem; padding-bottom: 1rem; border-bottom: 1px solid var(--ppc-card-border); }
.profile-edit-steam-header-avatar { width: 48px; height: 48px; border-radius: 4px; object-fit: cover; background: var(--ppc-card-surface); }
.profile-edit-steam-header-avatar-placeholder { width: 48px; height: 48px; border-radius: 4px; background: var(--ppc-card-surface); display: flex; align-items: center; justify-content: center; font-size: 1.25rem; color: var(--ppc-text-dim); }
.profile-edit-steam-header-user {
    font-size: clamp(0.95rem, 2.8vw, 1.1rem);
    font-weight: 600;
    color: var(--ppc-text);
    min-width: 0;
    flex: 1 1 auto;
    overflow-wrap: anywhere;
    word-break: break-word;
}
.profile-edit-steam-header-title { color: var(--ppc-text-muted); margin-left: auto; font-size: 0.95rem; }
.profile-edit-steam-body { display: flex; gap: 0; min-height: 400px; }
.profile-edit-steam-sidebar {
    flex: 0 1 260px;
    max-width: 100%;
    min-width: 0;
    background: var(--ppc-card-surface);
    border: 1px solid var(--ppc-card-border);
    border-radius: 6px;
    padding: clamp(0.75rem, 2.5vw, 1rem);
}
.profile-edit-steam-sidebar a { display: block; padding: 0.5rem 0.75rem; color: var(--ppc-accent); text-decoration: none; border-radius: 4px; font-size: 0.95rem; }
.profile-edit-steam-sidebar a:hover { background: rgba(255,255,255,0.06); color: var(--ppc-accent-hover); }
.profile-edit-steam-sidebar a.active { background: rgba(255,255,255,0.1); color: var(--ppc-text); }
.profile-edit-steam-sidebar-back { margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: 1px solid var(--ppc-card-border); }
.profile-edit-steam-content {
    flex: 1;
    min-width: 0;
    padding: 0 0 0 clamp(0.75rem, 3vw, 1.5rem);
}
.profile-edit-steam-content h2 {
    font-size: clamp(1.15rem, 3.5vw, 1.5rem);
    font-weight: 700;
    color: var(--ppc-text);
    margin: 0 0 0.75rem;
    line-height: 1.25;
    word-break: break-word;
}
.profile-edit-steam-content .section-desc { color: var(--ppc-text-muted); font-size: 0.9rem; margin-bottom: 1.25rem; line-height: 1.5; }
.profile-edit-steam-subsection { margin-bottom: 1.5rem; }
.profile-edit-steam-subsection-title { font-size: 0.75rem; color: var(--ppc-text-muted); text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 0.5rem; }
.profile-edit-steam-field { margin-bottom: 1rem; }
.profile-edit-steam-field label { display: block; font-size: 0.75rem; color: var(--ppc-text-muted); text-transform: uppercase; letter-spacing: 0.03em; margin-bottom: 0.35rem; }
.profile-edit-steam-field input[type="text"],
.profile-edit-steam-field input[type="email"],
.profile-edit-steam-field input[type="url"],
.profile-edit-steam-field select {
    width: 100%;
    max-width: 100%;
    padding: 0.5rem 0.75rem;
    background: var(--ppc-card-surface);
    border: 1px solid var(--ppc-card-border);
    border-radius: 4px;
    color: var(--ppc-text);
    font-size: clamp(0.88rem, 2.2vw, 0.95rem);
    box-sizing: border-box;
}
.profile-edit-steam-field textarea {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0.5rem 0.75rem;
    background: var(--ppc-card-surface);
    border: 1px solid var(--ppc-card-border);
    border-radius: 4px;
    color: var(--ppc-text);
    font-size: clamp(0.88rem, 2.2vw, 0.95rem);
    min-height: 4.5rem;
}
.profile-timeline-list { list-style: none; padding: 0; margin: 0; }
.profile-timeline-item { padding: 0.6rem 0; border-bottom: 1px solid var(--ppc-card-border); display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.35rem 0.75rem; font-size: 0.9rem; }
.profile-timeline-item:last-child { border-bottom: none; }
.profile-timeline-date { color: var(--ppc-text-muted); font-size: 0.85rem; flex-shrink: 0; }
.profile-timeline-label { background: var(--ppc-card-surface); padding: 0.15rem 0.4rem; border-radius: 4px; font-size: 0.75rem; color: var(--ppc-text-muted); }
.profile-timeline-title { font-weight: 600; color: var(--ppc-text); }
.profile-timeline-title a { color: var(--ppc-accent); text-decoration: none; }
.profile-timeline-title a:hover { text-decoration: underline; }
.profile-timeline-excerpt { width: 100%; color: var(--ppc-text-muted); font-size: 0.85rem; margin-top: 0.15rem; }
.profile-edit-steam-field .hint { font-size: 0.8rem; color: var(--ppc-text-muted); margin-top: 0.25rem; }
@media (max-width: 768px) { .profile-edit-steam-body { flex-direction: column; } .profile-edit-steam-sidebar { width: 100%; } .profile-edit-steam-content { padding-left: 0; padding-top: 1rem; } }

/* =============================================================================
 * User-Dashboard (/user/dashboard.php) – Layout (vorher inline)
 * ============================================================================= */
.ppc-user-card--dashboard .dashboard-body { display: flex; gap: 0; flex-wrap: wrap; }
.ppc-user-card--dashboard .dashboard-left {
    flex: 1;
    min-width: 0;
    padding: clamp(0.85rem, 2.5vw, 1rem) clamp(1rem, 3vw, 1.5rem) clamp(1.25rem, 3vw, 1.5rem);
}
.ppc-user-card--dashboard .dashboard-right {
    flex: 0 1 300px;
    max-width: 100%;
    min-width: 0;
    background: var(--ppc-card-sidebar);
    padding: clamp(0.75rem, 2.5vw, 1rem);
    border-left: 1px solid var(--ppc-card-border);
}
.ppc-user-card--dashboard .dashboard-right-section { margin-bottom: 1.25rem; }
.ppc-user-card--dashboard .dashboard-right-section-title {
    font-size: 0.85rem;
    color: var(--ppc-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.5rem;
}
.ppc-user-card--dashboard .dashboard-right-links { display: flex; flex-direction: column; gap: 0.25rem; }
.ppc-user-card--dashboard .dashboard-right-links a {
    display: flex;
    align-items: center;
    padding: 0.5rem 0;
    min-height: 44px;
    line-height: 1.3;
    color: var(--ppc-accent);
    text-decoration: none;
    font-size: 0.95rem;
}
.ppc-user-card--dashboard .dashboard-right-links a:hover { color: var(--ppc-accent-hover); }
.ppc-user-card--dashboard .dashboard-games-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--ppc-text);
    margin: 0 0 0.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--ppc-card-border);
}
.ppc-user-card--dashboard .dashboard-games-list { list-style: none; padding: 0; margin: 0; }
.ppc-user-card--dashboard .dashboard-games-list li {
    padding: 0.65rem 0;
    border-bottom: 1px solid var(--ppc-card-border);
    color: var(--ppc-text);
    font-size: 0.95rem;
}
@media (max-width: 768px) {
    .ppc-user-card--dashboard .dashboard-right {
        width: 100%;
        border-left: none;
        border-top: 1px solid var(--ppc-card-border);
    }
}

/* =============================================================================
 * Nexus user page (/user/nexus.php) – Layout (vorher inline)
 * ============================================================================= */
.ppc-user-card--nexus .nexus-body { display: flex; gap: 0; flex-wrap: wrap; }
.ppc-user-card--nexus .nexus-left {
    flex: 1;
    min-width: 0;
    padding: clamp(0.85rem, 2.5vw, 1rem) clamp(1rem, 3vw, 1.5rem) clamp(1.25rem, 3vw, 1.5rem);
}
.ppc-user-card--nexus .nexus-right {
    flex: 0 1 300px;
    max-width: 100%;
    min-width: 0;
    background: var(--ppc-card-sidebar);
    padding: clamp(0.75rem, 2.5vw, 1rem);
    border-left: 1px solid var(--ppc-card-border);
}
.ppc-user-card--nexus .nexus-section { margin-bottom: 1.5rem; }
.ppc-user-card--nexus .nexus-section-title {
    font-size: clamp(0.95rem, 2.5vw, 1rem);
    font-weight: 600;
    color: var(--ppc-text);
    margin: 0 0 0.5rem;
    padding-bottom: 0.35rem;
    border-bottom: 1px solid var(--ppc-card-border);
}
.ppc-user-card--nexus .nexus-list { list-style: none; padding: 0; margin: 0; }
.ppc-user-card--nexus .nexus-list li { padding: 0.5rem 0; color: var(--ppc-text); font-size: 0.95rem; }
.ppc-user-card--nexus .nexus-badge { display: inline-block; padding: 0.25rem 0.6rem; border-radius: 6px; font-size: 0.85rem; font-weight: 600; }
.ppc-user-card--nexus .nexus-badge-premium {
    background: rgba(249, 115, 22, 0.2);
    color: var(--ppc-accent);
    border: 1px solid rgba(249, 115, 22, 0.35);
}
.ppc-user-card--nexus .nexus-badge-free { background: var(--ppc-card-border); color: var(--ppc-text-muted); }
@media (max-width: 768px) {
    .ppc-user-card--nexus .nexus-right {
        width: 100%;
        border-left: none;
        border-top: 1px solid var(--ppc-card-border);
    }
}

/* Freundesliste: Anfragen annehmen/ablehnen */
.ppc-profile-wrap .profile-friend-list { list-style: none; padding: 0; margin: 0; }
.ppc-profile-wrap .profile-friend-list > li {
    padding: 0.65rem 0;
    border-bottom: 1px solid var(--ppc-card-border);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem 0.75rem;
}
.ppc-profile-wrap .profile-friend-list > li > a { flex: 1 1 auto; min-width: 0; word-break: break-word; }
.ppc-profile-wrap .profile-friend-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}
.ppc-profile-wrap .profile-friend-actions form { display: inline; margin: 0; }

/* =============================================================================
 * Mobile / App-WebView: enge Viewports (ca. Telefon, kein Feature-Change)
 * Ziel: kein horizontales Scrollen, tappbare Zeilen, volle Breite für Formulare
 * ============================================================================= */
@media (max-width: 600px) {
    .ppc-page-outer {
        padding-left: 0.65rem;
        padding-right: 0.65rem;
        padding-bottom: 1.25rem;
    }
    .ppc-page-card {
        max-width: 100%;
        overflow-x: hidden;
    }
    .ppc-user-card {
        padding: 1rem 0.85rem;
        border-radius: 10px;
    }
    .ppc-user-card--dashboard,
    .ppc-user-card--wide,
    .ppc-user-card--nexus {
        max-width: 100%;
    }

    .ppc-mobile-btn-row {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
    }
    .ppc-mobile-btn-row .wp-button {
        flex: 1 1 calc(50% - 0.25rem);
        min-width: 8rem;
        justify-content: center;
        text-align: center;
        box-sizing: border-box;
    }
    .ppc-mobile-btn-row .wp-button:last-child:nth-child(odd) {
        flex: 1 1 100%;
    }

    .ppc-user-card--dashboard .dashboard-body {
        min-width: 0;
    }
    .ppc-user-card--dashboard .dashboard-left,
    .ppc-user-card--dashboard .dashboard-right,
    .ppc-user-card--nexus .nexus-left,
    .ppc-user-card--nexus .nexus-right {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
        min-width: 0;
    }

    .profile-body,
    .profile-left,
    .profile-right {
        min-width: 0;
    }
    .profile-cover {
        min-height: 96px;
    }
    .profile-cover-inner {
        min-height: 84px;
        padding: 0.75rem 0.75rem 1.15rem;
    }
    .ppc-profile-wrap .profile-card-name {
        font-size: 1.35rem;
        word-break: break-word;
    }
    .wp-coins-content .wp-widget-body {
        padding-left: 0.85rem;
        padding-right: 0.85rem;
    }
    .wp-coins-content .wp-welcome-box p {
        line-height: 1.45;
    }

    .profile-global-id-bar {
        padding: 0.45rem 0.65rem;
        font-size: 0.82rem;
        gap: 0.35rem 0.5rem;
    }
    .profile-global-id-copy {
        min-height: 36px;
        padding: 0.35rem 0.65rem;
    }

    .ppc-profile-outer { margin-top: clamp(4.75rem, 22vw, 5.75rem); }
    .ppc-profile-wrap { margin-left: 0; margin-right: 0; border-radius: 10px; }
    .profile-left { padding: 0.85rem 0.75rem 1.25rem; }
    .profile-right { padding: 0.85rem 0.75rem; }

    .profile-edit-steam-outer { padding: 0.75rem 0.65rem 1.25rem; }
    .profile-edit-steam-header {
        flex-wrap: wrap;
        gap: 0.65rem;
    }
    .profile-edit-steam-header-title {
        margin-left: 0;
        width: 100%;
        order: 10;
    }
    .profile-edit-steam-field input[type="text"],
    .profile-edit-steam-field input[type="email"],
    .profile-edit-steam-field input[type="url"],
    .profile-edit-steam-field select,
    .profile-edit-steam-field textarea {
        max-width: 100%;
        box-sizing: border-box;
    }

    .ppc-profile-wrap .profile-field input,
    .ppc-profile-wrap .profile-field select,
    .ppc-profile-wrap .profile-field textarea {
        max-width: 100%;
        box-sizing: border-box;
    }

    .ppc-profile-wrap .profile-playlist-add {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.5rem;
    }
    .ppc-profile-wrap .profile-playlist-input,
    .ppc-profile-wrap .profile-playlist-input--gap {
        max-width: none;
        width: 100%;
        margin-left: 0;
        box-sizing: border-box;
    }

    .ppc-profile-wrap .profile-friend-list > li {
        flex-direction: column;
        align-items: stretch;
    }
    .ppc-profile-wrap .profile-friend-actions {
        width: 100%;
    }
    .ppc-profile-wrap .profile-friend-actions .wp-button-small {
        min-height: 42px;
        width: 100%;
    }
    .ppc-profile-wrap .profile-friend-actions form {
        display: block;
        width: 100%;
    }

    .wp-coins-content .coins-balance-box {
        font-size: 1.05rem;
        padding: 1rem;
        word-wrap: break-word;
    }
    .wp-coins-content .coins-packages {
        grid-template-columns: 1fr;
    }
    .wp-coins-content .coins-account-field input,
    .wp-coins-content .coins-account-field select,
    .wp-coins-content .coins-account-field textarea {
        max-width: none;
        box-sizing: border-box;
    }
    .wp-coins-content .coins-form-actions {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.5rem;
    }
    .wp-coins-content .coins-form-actions .wp-button {
        width: 100%;
        text-align: center;
        justify-content: center;
        box-sizing: border-box;
    }
    .wp-coins-content .coins-tx {
        word-break: break-word;
    }

    .ppc-user-card--nexus .wp-button-primary,
    .ppc-user-card--nexus .wp-button-secondary {
        display: block;
        width: 100%;
        box-sizing: border-box;
        text-align: center;
    }
}

/* Dashboard / Nexus: Überschriften & Infotext (Klassen statt Inline-Styles) */
.ppc-dashboard-guest-title {
    margin: 0 0 0.5rem;
    color: var(--ppc-text);
    font-size: clamp(1.15rem, 4vw, 1.35rem);
    font-weight: 700;
    line-height: 1.2;
    word-break: break-word;
}
.ppc-dashboard-guest-lead {
    margin: 0.5rem 0 1rem;
    color: var(--ppc-text-muted);
    line-height: 1.45;
}
.ppc-dashboard-title {
    margin: 0 0 1rem;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.25;
    color: var(--ppc-text);
    word-break: break-word;
}
.ppc-dashboard-sidebar-plain {
    color: var(--ppc-text-muted);
    font-size: 0.9rem;
    line-height: 1.45;
    word-break: break-word;
    overflow-wrap: anywhere;
}
.ppc-user-card--nexus.ppc-nexus-page-root {
    padding: 1rem 0 1.5rem;
}
.ppc-nexus-page-title {
    margin: 0 0 1rem;
    font-size: clamp(1.25rem, 4.5vw, 1.5rem);
    font-weight: 700;
    line-height: 1.25;
    color: var(--ppc-text);
    word-break: break-word;
}
.ppc-nexus-lead {
    color: var(--ppc-text-muted);
    margin: 0 0 1.25rem;
    line-height: 1.45;
    word-break: break-word;
    overflow-wrap: anywhere;
}
