/* ============================================================
   ET-HOST SEHHILFE 1.1 · 0.2.45-beta
   Wird absichtlich NACH dem Tenant-CSS geladen. Dadurch bleiben die
   Sehhilfe-Einstellungen auch bei eigenem CSS lesbar und stabil.
   ============================================================ */

/* ------------------------------------------------------------
   AVATARE AUSBLENDEN – ohne kaputtes Nachrichten-/Online-Grid
   ------------------------------------------------------------ */
html.a11y-hide-avatars body.chat-page{
    overflow-x:hidden!important;
}

html.a11y-hide-avatars body.chat-page #chatMessages .message > .avatar,
html.a11y-hide-avatars body.chat-page #chatMessages .message > .user-avatar,
html.a11y-hide-avatars body.chat-page #chatMessages .message > .message-avatar,
html.a11y-hide-avatars body.chat-page #onlineUsers .user-row > .avatar,
html.a11y-hide-avatars body.chat-page #onlineUsers .user-row > .user-avatar{
    display:none!important;
}

html.a11y-hide-avatars body.chat-page #chatMessages .message{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    column-gap:0!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
}

html.a11y-hide-avatars body.chat-page #chatMessages .message > .message-content{
    grid-column:1/-1!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
}

html.a11y-hide-avatars body.chat-page #chatMessages .msg-meta,
html.a11y-hide-avatars body.chat-page #chatMessages .message p,
html.a11y-hide-avatars body.chat-page #chatMessages .msg-tools{
    min-width:0!important;
    max-width:100%!important;
}

html.a11y-hide-avatars body.chat-page #chatMessages .message p{
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
}

html.a11y-hide-avatars body.chat-page #onlineUsers .user-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 28px!important;
    column-gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
}

html.a11y-hide-avatars body.chat-page #onlineUsers .user-row > div{
    grid-column:1!important;
    min-width:0!important;
}

html.a11y-hide-avatars body.chat-page #onlineUsers .user-row > i:last-child,
html.a11y-hide-avatars body.chat-page #onlineUsers .user-row > .community-status-badge{
    grid-column:2!important;
    justify-self:end!important;
}

/* ------------------------------------------------------------
   HOHER KONTRAST – vollständige Chat-Oberfläche
   ------------------------------------------------------------ */
html.a11y-high-contrast{
    color-scheme:dark!important;
    --bg:#000!important;
    --surface:#000!important;
    --text:#fff!important;
    --muted:#f2f2f2!important;
    --line:#fff!important;
    --primary:#ffde00!important;
}

html.a11y-high-contrast body,
html.a11y-high-contrast body.chat-page,
html.a11y-high-contrast body.admin-page{
    background:#000!important;
    color:#fff!important;
}

html.a11y-high-contrast body.chat-page .tenant-shell,
html.a11y-high-contrast body.chat-page .tenant-head,
html.a11y-high-contrast body.chat-page .chat-layout,
html.a11y-high-contrast body.chat-page .chat-panel,
html.a11y-high-contrast body.chat-page .user-panel,
html.a11y-high-contrast body.chat-page .user-head,
html.a11y-high-contrast body.chat-page #onlineUsers,
html.a11y-high-contrast body.chat-page .messages,
html.a11y-high-contrast body.chat-page .message,
html.a11y-high-contrast body.chat-page .message-content,
html.a11y-high-contrast body.chat-page .chat-room-bar,
html.a11y-high-contrast body.chat-page .room-tab-list,
html.a11y-high-contrast body.chat-page .chat-composer,
html.a11y-high-contrast body.chat-page .composer-toolbar,
html.a11y-high-contrast body.chat-page .composer-input-row,
html.a11y-high-contrast body.chat-page .tenant-more-menu,
html.a11y-high-contrast body.chat-page .tenant-more-head,
html.a11y-high-contrast body.chat-page .tenant-more-items,
html.a11y-high-contrast body.chat-page .smiley-popover,
html.a11y-high-contrast body.chat-page .smiley-popover-head,
html.a11y-high-contrast body.chat-page .giphy-popover,
html.a11y-high-contrast body.chat-page .chat-suggest-popover,
html.a11y-high-contrast body.chat-page .radio-player,
html.a11y-high-contrast body.chat-page .room-player-dock,
html.a11y-high-contrast body.chat-page .lautfm-widget-popover,
html.a11y-high-contrast body.chat-page .dj-public-dialog,
html.a11y-high-contrast body.chat-page .welcome-banner,
html.a11y-high-contrast body.chat-page .tenant-copyright,
html.a11y-high-contrast body.chat-page .a11y-dialog,
html.a11y-high-contrast body.chat-page .a11y-dialog-head,
html.a11y-high-contrast body.chat-page .a11y-dialog-body,
html.a11y-high-contrast body.chat-page .a11y-dialog-foot,
html.a11y-high-contrast body.chat-page .a11y-section,
html.a11y-high-contrast body.chat-page .a11y-toggle,
html.a11y-high-contrast body.chat-page .a11y-choice span,
html.a11y-high-contrast .pm-shell,
html.a11y-high-contrast .pm-list,
html.a11y-high-contrast .pm-chat,
html.a11y-high-contrast .pm-messages,
html.a11y-high-contrast .pm-compose,
html.a11y-high-contrast .pm-bubble,
html.a11y-high-contrast .admin-shell,
html.a11y-high-contrast .admin-main,
html.a11y-high-contrast .admin-card,
html.a11y-high-contrast .admin-section,
html.a11y-high-contrast .profile-shell,
html.a11y-high-contrast .profile2-card,
html.a11y-high-contrast .profile-card{
    background:#000!important;
    background-image:none!important;
    color:#fff!important;
    border-color:#fff!important;
    box-shadow:none!important;
}

html.a11y-high-contrast body.chat-page #onlineUsers .online-user-card,
html.a11y-high-contrast body.chat-page #chatMessages .message,
html.a11y-high-contrast body.chat-page #chatMessages .message.message-hugo,
html.a11y-high-contrast body.chat-page #chatMessages .message.message-system,
html.a11y-high-contrast body.chat-page #chatMessages .welcome-stream-message{
    background:#000!important;
    background-image:none!important;
    color:#fff!important;
    border-color:#fff!important;
    box-shadow:none!important;
}

html.a11y-high-contrast body.chat-page h1,
html.a11y-high-contrast body.chat-page h2,
html.a11y-high-contrast body.chat-page h3,
html.a11y-high-contrast body.chat-page h4,
html.a11y-high-contrast body.chat-page p,
html.a11y-high-contrast body.chat-page span,
html.a11y-high-contrast body.chat-page small,
html.a11y-high-contrast body.chat-page strong,
html.a11y-high-contrast body.chat-page b,
html.a11y-high-contrast body.chat-page label,
html.a11y-high-contrast body.chat-page em,
html.a11y-high-contrast body.chat-page .message.message-hugo .message-content > p,
html.a11y-high-contrast body.chat-page .online-profile-label,
html.a11y-high-contrast body.chat-page .online-status-label{
    color:#fff!important;
    text-shadow:none!important;
}

html.a11y-high-contrast body.chat-page a,
html.a11y-high-contrast .admin-shell a,
html.a11y-high-contrast .profile-shell a,
html.a11y-high-contrast .pm-shell a{
    color:#ffde00!important;
}

html.a11y-high-contrast body.chat-page .msg-meta b,
html.a11y-high-contrast body.chat-page .msg-meta b a,
html.a11y-high-contrast body.chat-page #onlineUsers .user-row b,
html.a11y-high-contrast body.chat-page #onlineUsers .user-row b a{
    color:#fff!important;
}

html.a11y-high-contrast body.chat-page input,
html.a11y-high-contrast body.chat-page textarea,
html.a11y-high-contrast body.chat-page select,
html.a11y-high-contrast body.chat-page #chatInput,
html.a11y-high-contrast .admin-shell input,
html.a11y-high-contrast .admin-shell textarea,
html.a11y-high-contrast .admin-shell select,
html.a11y-high-contrast .profile-shell input,
html.a11y-high-contrast .profile-shell textarea,
html.a11y-high-contrast .profile-shell select,
html.a11y-high-contrast .pm-shell input,
html.a11y-high-contrast .pm-shell textarea,
html.a11y-high-contrast .pm-shell select{
    background:#000!important;
    color:#fff!important;
    border:2px solid #fff!important;
    caret-color:#ffde00!important;
    -webkit-text-fill-color:#fff!important;
    opacity:1!important;
}

html.a11y-high-contrast input::placeholder,
html.a11y-high-contrast textarea::placeholder{
    color:#e6e6e6!important;
    opacity:1!important;
}

html.a11y-high-contrast body.chat-page button,
html.a11y-high-contrast body.chat-page .btn,
html.a11y-high-contrast body.chat-page .tenant-action,
html.a11y-high-contrast body.chat-page .icon-btn,
html.a11y-high-contrast body.chat-page .composer-tool,
html.a11y-high-contrast body.chat-page .upload-label,
html.a11y-high-contrast body.chat-page .send-btn,
html.a11y-high-contrast body.chat-page .room-tab-list > a,
html.a11y-high-contrast .admin-shell button,
html.a11y-high-contrast .admin-shell .btn,
html.a11y-high-contrast .profile-shell button,
html.a11y-high-contrast .profile-shell .btn,
html.a11y-high-contrast .pm-shell button,
html.a11y-high-contrast .pm-shell .btn{
    background:#000!important;
    background-image:none!important;
    color:#ffde00!important;
    border:2px solid #ffde00!important;
    box-shadow:none!important;
    opacity:1!important;
}

html.a11y-high-contrast body.chat-page .room-tab-list > a.active,
html.a11y-high-contrast body.chat-page button:hover,
html.a11y-high-contrast body.chat-page button:focus-visible,
html.a11y-high-contrast body.chat-page .btn:hover,
html.a11y-high-contrast body.chat-page .tenant-action:hover,
html.a11y-high-contrast body.chat-page .composer-tool:hover{
    background:#ffde00!important;
    color:#000!important;
    border-color:#ffde00!important;
}

html.a11y-high-contrast body.chat-page .community-status-badge,
html.a11y-high-contrast body.chat-page .online-dot,
html.a11y-high-contrast body.chat-page .pm-nav-badge,
html.a11y-high-contrast body.chat-page .badge{
    background:#ffde00!important;
    background-image:none!important;
    color:#000!important;
    border:2px solid #000!important;
    outline:2px solid #ffde00!important;
    opacity:1!important;
}


html.a11y-high-contrast body.chat-page .chat-gender-icon{
    color:#ffde00!important;
    background:transparent!important;
    border:0!important;
    outline:0!important;
    text-shadow:0 0 1px #000,0 0 2px #000!important;
    opacity:1!important;
}

html.a11y-high-contrast body.chat-page .smiley-grid button,
html.a11y-high-contrast body.chat-page .smiley-tabs button,
html.a11y-high-contrast body.chat-page .giphy-grid button,
html.a11y-high-contrast body.chat-page .tenant-more-items > *{
    background:#000!important;
    color:#ffde00!important;
    border-color:#ffde00!important;
    opacity:1!important;
}

html.a11y-high-contrast body.chat-page img,
html.a11y-high-contrast body.chat-page video,
html.a11y-high-contrast body.chat-page iframe{
    opacity:1!important;
}

html.a11y-high-contrast :focus-visible{
    outline:3px solid #00e5ff!important;
    outline-offset:3px!important;
}

/* Der Dialog selbst muss auch dann vollständig erkennbar bleiben, wenn
   der Nutzer den Kontrastmodus innerhalb des geöffneten Dialogs aktiviert. */
html.a11y-high-contrast .a11y-overlay{
    background:rgba(0,0,0,.82)!important;
}
html.a11y-high-contrast .a11y-toggle,
html.a11y-high-contrast .a11y-choice span{
    background:#000!important;
    color:#fff!important;
    border:2px solid #fff!important;
}
html.a11y-high-contrast .a11y-choice input:checked + span{
    background:#ffde00!important;
    color:#000!important;
    border-color:#ffde00!important;
}

@media(max-width:760px){
    html.a11y-hide-avatars body.chat-page #chatMessages .message{
        grid-template-columns:minmax(0,1fr)!important;
        gap:0!important;
    }
    html.a11y-hide-avatars body.chat-page #onlineUsers .user-row{
        grid-template-columns:minmax(0,1fr) 28px!important;
    }
}

/* END ET-HOST SEHHILFE 1.1 */
