.qc-messages {
    max-width: 1050px;
    margin: 0 auto;
    min-width: 0;
    overflow-wrap: anywhere
}

.qc-messages .panel {
    padding: 22px;
    margin-bottom: 18px
}

.qc-messages h1,
.qc-messages h2 {
    color: var(--green, #a3cc41)
}

.qc-message-heading {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: start;
    flex-wrap: wrap
}

.qc-message-heading h1 {
    margin-top: 0
}

.qc-message-heading nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px
}

.qc-message-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 8px 12px;
    border: 1px solid #a3cc4166;
    border-radius: 5px;
    margin: 4px 8px 4px 0;
    font-size: 14px
}

.qc-message-compose label {
    display: block;
    margin: 14px 0
}

.qc-message-compose textarea,
.qc-message-compose select {
    width: 100%;
    min-width: 0;
    padding: 10px;
    font: inherit;
    font-size: 16px;
    color: inherit;
    background: #111a1d;
    border: 1px solid #455057;
    border-radius: 6px
}

.qc-message-compose textarea {
    min-height: 140px;
    resize: vertical
}

.qc-message-compose-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap
}

.qc-message-compose-footer small {
    color: var(--muted)
}

.qc-message-compose button {
    min-height: 44px
}

.qc-message-inbox {
    list-style: none;
    margin: 0;
    padding: 0
}

.qc-message-inbox>li>a,
.qc-message-preview-card>a {
    display: block;
    padding: 18px 0;
    border-top: 1px solid #ffffff22;
    color: inherit;
    text-decoration: none
}

.qc-message-inbox>li>a:hover,
.qc-message-preview-card>a:hover {
    background: #a3cc4108
}

.qc-message-inbox-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap
}

.qc-message-inbox-top strong {
    color: #cfe5af
}

.qc-message-inbox-top time {
    font-size: 12px;
    color: #b5c5b9
}

.qc-message-preview {
    display: block;
    margin-top: 8px;
    font-size: 14px;
    color: #b9c6bd
}

.qc-message-unread {
    border-left: 3px solid #a3cc41;
    padding-left: 12px !important
}

.qc-unread-count {
    display: inline-block;
    border-radius: 10px;
    color: #10180a;
    background: #a3cc41;
    font-size: 12px;
    font-weight: 700;
    padding: 2px 7px;
    margin-top: 8px
}

.qc-message-history {
    list-style: none;
    margin: 18px 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px
}

.qc-message-history>li {
    max-width: 90%;
    padding: 14px;
    border: 1px solid #ffffff22;
    border-radius: 10px;
    background: #152024
}

.qc-message-history>li.qc-message-own {
    align-self: flex-end;
    border-color: #a3cc4155;
    background: #a3cc4110
}

.qc-message-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 12px;
    color: #b6c8b6
}

.qc-message-history p {
    margin: 10px 0 0;
    white-space: normal;
    overflow-wrap: anywhere
}

.qc-member-shortcuts {
    display: flex;
    justify-content: flex-end;
    margin: 0 0 14px;
    min-width: 0
}

.qc-member-shortcuts>a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    padding: 8px 12px;
    border: 1px solid #a3cc4144;
    background: #111a1de8;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600
}

.qc-member-shortcuts .qc-unread-count {
    margin: 0
}

.qc-messages a:focus-visible,
.qc-message-compose button:focus-visible {
    outline: 2px solid #a3cc41;
    outline-offset: 3px
}

.qc-message-member-action {
    margin: 12px 0 0
}

.qc-message-member-action a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    font-size: 14px
}

@media(max-width:650px) {
    .qc-messages .panel {
        padding: 16px
    }

    .qc-message-heading {
        gap: 6px
    }

    .qc-message-heading nav {
        width: 100%;
        gap: 6px
    }

    .qc-message-history>li {
        max-width: 96%
    }

    .qc-message-compose-footer button {
        width: 100%
    }

    .qc-message-meta {
        gap: 6px
    }

    .qc-member-shortcuts {
        margin-bottom: 12px
    }

    .qc-message-inbox-top {
        gap: 4px
    }

    .qc-message-heading .qc-message-link {
        font-size: 13px
    }

    .qc-message-history>li {
        padding: 12px
    }
}

.qc-unread-count[hidden] {
    display: none !important
}

.mobile-navigation a .qc-unread-count {
    margin: 0 0 0 6px
}

.qc-message-recipients {
    min-width: 0;
    border: 1px solid #a3cc4155;
    border-radius: 6px;
    padding: 14px
}

.qc-message-select-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px
}

.qc-message-member-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
    gap: 4px 16px;
    max-height: 380px;
    overflow: auto;
    margin-top: 16px
}

.qc-message-member-grid label {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 10px;
    min-width: 0;
    min-height: 44px
}

.qc-message-member-grid input {
    width: 20px;
    height: 20px;
    flex: 0 0 auto
}

.qc-message-member-grid span {
    overflow-wrap: anywhere
}

.qc-message-privacy {
    font-size: 14px;
    color: var(--muted)
}

.qc-message-select-actions button {
    font-size: 14px;
    padding: 8px 12px
}

.qc-message-admin-compose legend {
    padding: 0 8px
}

.qc-messages .qc-message-unread {
    background: #a3cc411a;
    border-left: 4px solid #c9ed92;
    color: #f5ffe8;
    padding: 14px !important
}

.qc-message-unread .qc-message-kind,
.qc-message-unread .qc-message-preview {
    color: #edffda;
    font-weight: 750
}

.qc-message-kind {
    display: block;
    font-size: 14px;
    font-weight: 700;
    margin: 0 0 10px;
    color: #cfe5af
}

.qc-message-notice-heading {
    display: flex;
    align-items: center;
    gap: 12px
}

.qc-message-notice-heading h3 {
    margin: 0
}

.qc-message-select-row {
    display: flex;
    align-items: start;
    gap: 12px
}

.qc-message-select-row>a {
    flex: 1;
    min-width: 0
}

.qc-message-select {
    padding-top: 20px
}

.qc-message-select input,
.qc-message-notice-heading input {
    width: 20px;
    height: 20px
}

.qc-messages .qc-message-remove {
    margin: 12px 0 12px auto;
    text-align: right;
    max-width: 650px
}

.qc-message-remove summary {
    cursor: pointer
}

.qc-message-tools {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    width: 100%
}

.qc-message-tools form {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px
}

.qc-message-tools .qc-message-link {
    margin: 0
}

.qc-message-notice-heading+p {
    margin-top: 12px
}

.qc-message-history .qc-message-kind {
    font-size: 13px
}

@media(max-width:600px) {
    .qc-message-tools {
        align-items: stretch
    }

    .qc-message-tools form {
        width: 100%
    }

    .qc-message-tools button,
    .qc-message-tools>a {
        flex: 1;
        font-size: 12px
    }

    .qc-messages .qc-message-remove {
        text-align: right
    }

    .qc-message-select-row {
        gap: 6px
    }
}
/* ==========================================
   QuadCMS – Admin Nachrichtenlayout
   ========================================== */

.qc-admin-message-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

.qc-admin-message-layout > * {
    min-width: 0;
}

.qc-admin-message-layout .panel {
    margin-bottom: 0;
}

/* Auf kleineren Bildschirmen untereinander */
@media (max-width: 800px) {
    .qc-admin-message-layout {
        grid-template-columns: 1fr;
    }
}
/* ==========================================
   QuadCMS – Admin-Nachrichten in zwei Spalten
   Nur für die Admin-Nachrichtenverwaltung
   ========================================== */

.qc-messages:has(.qc-message-admin-compose) {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

/* Kopfbereich über beide Spalten */
.qc-messages:has(.qc-message-admin-compose) > .qc-message-heading {
    grid-column: 1 / -1;
}

/* Schreibformular über beide Spalten */
.qc-messages:has(.qc-message-admin-compose) > .panel:has(.qc-message-admin-compose) {
    grid-column: 1 / -1;
}

/* Abstände der Nachrichtenbereiche */
.qc-messages:has(.qc-message-admin-compose) > .panel {
    min-width: 0;
    margin-bottom: 0;
}

/* Auf Tablets und Handys untereinander */
@media (max-width: 800px) {
    .qc-messages:has(.qc-message-admin-compose) {
        grid-template-columns: 1fr;
    }
}
/* Admin-Nachrichtenkopf beim Scrollen festhalten */
.qc-messages:has(.qc-message-admin-compose)
> .qc-message-heading {
    position: sticky;
    top: var(--qc-admin-header-height, 68px);
    z-index: 100;
}
/* Ein gemeinsamer Posteingang: gesamter Seitenkopf einschließlich Rückweg bleibt sichtbar. */
.qc-unified-inbox { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; align-items:start; }
.qc-unified-inbox > .qc-message-heading { grid-column:1 / -1; position:sticky; top:var(--qc-admin-header-height,0px); z-index:100; background:var(--panel,#151c2b); gap:10px; align-items:center; }
.qc-unified-inbox .qc-message-heading h1 { margin:0; font-size:clamp(1.5rem,3vw,2rem); }
.qc-unified-inbox .qc-message-heading .qc-return-nav { margin:0; }
.qc-unified-inbox > .qc-message-compose-panel { grid-column:1 / -1; }
.qc-message-private-column { min-width:0; }
@media(max-width:800px) { .qc-unified-inbox { grid-template-columns:minmax(0,1fr); } }
@media(max-width:600px) {
    .qc-unified-inbox .qc-message-tools { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
    .qc-unified-inbox #qc-message-bulk { display:contents; }
    .qc-unified-inbox .qc-message-tools .inline { display:flex; }
    .qc-unified-inbox .qc-message-tools .inline button { width:100%; }
}

/* Aufklappbare Empfängerauswahl: Rollen vor Namen, gemeinsam scrollbar. */
.qc-recipient-dropdown { border:1px solid #a3cc4155; border-radius:6px; min-width:0; }
.qc-recipient-dropdown > summary { cursor:pointer; padding:12px; min-height:44px; box-sizing:border-box; color:var(--green,#a3cc41); font-weight:700; overflow-wrap:anywhere; }
.qc-recipient-dropdown > summary:focus-visible { outline:2px solid var(--green,#a3cc41); outline-offset:2px; }
.qc-recipient-options { max-height:min(22rem,55dvh); overflow-y:auto; overscroll-behavior:contain; padding:0 10px 10px; border-top:1px solid #a3cc4155; }
.qc-recipient-options h3 { font-size:1rem; margin:12px 0 6px; }
.qc-recipient-groups label { display:flex; align-items:center; gap:8px; min-height:44px; padding:8px; margin:0; overflow-wrap:anywhere; }
.qc-recipient-groups input { width:20px; height:20px; flex:0 0 auto; }
.qc-recipient-groups input:disabled + span { opacity:.6; }
.qc-recipient-options .qc-message-member-grid { display:grid; grid-template-columns:minmax(0,1fr); max-height:none; overflow:visible; margin:0; }
.qc-message-recipients > .qc-message-select-actions { margin-top:8px; }

/* Aktionen gehören zur Privatnachrichten-Vorschau. */
.qc-message-preview-card { flex:1; min-width:0; }
.qc-message-preview-actions { display:flex; flex-wrap:wrap; align-items:start; gap:8px; border-bottom:1px solid #ffffff22; padding-bottom:12px; }
.qc-message-preview-actions > .qc-message-link { margin:0; }
.qc-message-preview-actions .qc-message-remove { margin:0 0 0 auto; flex:1 1 200px; }
.qc-message-preview-actions summary { padding:10px 0; min-height:44px; box-sizing:border-box; }
.qc-message-preview-actions form label { display:block; margin:10px 0; }
#antwort { scroll-margin-top:calc(var(--qc-admin-header-height,0px) + 190px); }

/* Kleine Profilbilder unmittelbar am Namen, ohne Zeilenhöhe aufzublähen. */
.qc-message-person { display:inline-flex; align-items:center; gap:8px; min-width:0; }
.qc-message-person strong { overflow-wrap:anywhere; }
.qc-message-avatar { display:inline-flex; flex:0 0 28px; width:28px; height:28px; border-radius:50%; object-fit:cover; vertical-align:middle; background:#27342a; border:1px solid #a3cc4166; box-sizing:border-box; }
.qc-message-avatar-placeholder { align-items:center; justify-content:center; color:var(--green,#a3cc41); font-size:13px; font-weight:700; }
