.context-menu {
    min-width: 200px;
    border: 1px solid #dee2e6;
    border-radius: 8px;
}

.context-menu-item {
    padding: 8px 12px;
    border: none;
    background: none;
    text-align: left;
    width: 100%;
    cursor: pointer;
}

.context-menu-item:hover {
    background-color: #f8f9fa;
}

.message-checkbox {
    position: absolute;
    left: 10px;
    top: 10px;
    z-index: 10;
    background: white;
    padding: 5px;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.message.selectable-message {
    position: relative;
    cursor: pointer;
    transition: background-color 0.2s;
}

.message.selectable-message:hover {
    background-color: #f8f9fa;
}

.message.selectable-message.selected {
    background-color: #e3f2fd;
    border-radius: 8px;
}

#messagesContainer.selection-mode {
    padding-top: 10px;
}

.selection-panel {
    position: sticky;
    top: 0;
    z-index: 100;
}

.forward-contacts-list .forward-contact-item {
    padding: 8px 12px;
    border-bottom: 1px solid #f0f0f0;
}

.forward-contacts-list .forward-contact-item:last-child {
    border-bottom: none;
}

.forward-contacts-list .forward-contact-item:hover {
    background-color: #f8f9fa;
    border-radius: 4px;
}

.avatar-placeholder {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 14px;
}

.user-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.forwarded-message {
    border-left: 3px solid #007bff;
    padding-left: 8px;
    margin-left: 4px;
}

.forwarded-label {
    font-size: 0.8em;
    color: #6c757d;
    font-style: italic;
}

/* Стили для пересланных сообщений */
.forwarded-message-container {
    border-left: 3px solid #6c757d;
    padding-left: 12px;
    margin: 8px 0;
    background: #f8f9fa;
    border-radius: 0 8px 8px 0;
    padding: 10px;
}

.forwarded-header {
    display: flex;
    align-items: center;
    margin-bottom: 6px;
    font-size: 0.85em;
    color: #6c757d;
}

.forwarded-icon {
    margin-right: 6px;
    font-size: 0.8em;
}

.forwarded-label {
    margin-right: 4px;
}

.forwarded-sender-link {
    color: #007bff;
    text-decoration: none;
    font-weight: 500;
}

.forwarded-sender-link:hover {
    text-decoration: underline;
    color: #0056b3;
}

.forwarded-content {
    color: #495057;
}

.forwarded-text-content {
    white-space: pre-wrap;
    line-height: 1.4;
}

.forwarded-file-content {
    padding: 8px 0;
}

.file-preview-small {
    display: flex;
    align-items: center;
    padding: 6px 10px;
    background: white;
    border-radius: 6px;
    border: 1px solid #dee2e6;
}

.file-name-small {
    font-size: 0.9em;
    color: #495057;
}



/* Saved Messages use the canonical chat message layout.
   Do not add saved-only direction/header overrides here: forwarded messages in
   Favorites are outgoing self-chat messages and therefore follow `.message.sent`. */

/* Адаптация для мобильных устройств */
@media (max-width: 768px) {
    .forwarded-message-container {
        padding: 8px;
        margin: 6px 0;
    }
    
    .forwarded-header {
        font-size: 0.8em;
    }
}


/* QChat context menu v280: keep touch menus readable before hover/focus.
 * Bootstrap's default .dropdown-item text is dark, which made Android dark-theme
 * actions look disabled until the browser applied its touch-hover state. */
body.dark-theme #messageContextMenu .context-menu-item {
    color: var(--qchat-dark-text, #c9d1d9) !important;
    background-color: transparent !important;
    opacity: 1 !important;
}

body.dark-theme #messageContextMenu .context-menu-item:hover,
body.dark-theme #messageContextMenu .context-menu-item:focus,
body.dark-theme #messageContextMenu .context-menu-item:active {
    color: var(--qchat-dark-text, #c9d1d9) !important;
    background-color: var(--qchat-dark-surface-2, #21262d) !important;
}

body.dark-theme #messageContextMenu .context-menu-item.text-danger {
    color: #f85149 !important;
}

@media (prefers-color-scheme: dark) {
    body.auto-theme #messageContextMenu .context-menu-item {
        color: #c9d1d9 !important;
        background-color: transparent !important;
        opacity: 1 !important;
    }

    body.auto-theme #messageContextMenu .context-menu-item:hover,
    body.auto-theme #messageContextMenu .context-menu-item:focus,
    body.auto-theme #messageContextMenu .context-menu-item:active {
        color: #c9d1d9 !important;
        background-color: #21262d !important;
    }

    body.auto-theme #messageContextMenu .context-menu-item.text-danger {
        color: #f85149 !important;
    }
}

@media (max-width: 767.98px) {
    /* Suppress Safari's native touch callout on the card so the app long-press
       context menu can own the gesture. Normal vertical scrolling still works. */
    #messagesContainer .message[data-message-id] {
        -webkit-touch-callout: none !important;
    }
}


/* QChat context menu / forward modal v281 */
#messageContextMenu,
#messageContextMenu *,
#messageContextMenu .context-menu-item {
    -webkit-touch-callout: none !important;
    -webkit-user-select: none !important;
    user-select: none !important;
}

@media (pointer: coarse) {
    #messageContextMenu .context-menu-item {
        touch-action: manipulation !important;
    }
}

body.dark-theme #forwardMessageModal .modal-body,
body.dark-theme #forwardMessageModal #forwardContactsList,
body.dark-theme #forwardMessageModal .forward-contacts-scrollable {
    background: var(--qchat-dark-surface, #161b22) !important;
    color: var(--qchat-dark-text, #c9d1d9) !important;
    border-color: var(--qchat-dark-surface-3, #30363d) !important;
}

body.dark-theme #forwardMessageModal .forward-contact-item {
    background: transparent !important;
    color: var(--qchat-dark-text, #c9d1d9) !important;
    border-color: var(--qchat-dark-surface-3, #30363d) !important;
}

body.dark-theme #forwardMessageModal .forward-contact-item:hover,
body.dark-theme #forwardMessageModal .forward-contact-item:focus-within,
body.dark-theme #forwardMessageModal .forward-contact-item.selected {
    background: rgba(31, 111, 235, 0.20) !important;
    color: var(--qchat-dark-text, #c9d1d9) !important;
}

body.dark-theme #forwardMessageModal .username_inmodal,
body.dark-theme #forwardMessageModal .modal-title,
body.dark-theme #forwardMessageModal .contact-info {
    color: var(--qchat-dark-text, #c9d1d9) !important;
}

@media (prefers-color-scheme: dark) {
    body.auto-theme #forwardMessageModal .modal-body,
    body.auto-theme #forwardMessageModal #forwardContactsList,
    body.auto-theme #forwardMessageModal .forward-contacts-scrollable {
        background: #161b22 !important;
        color: #c9d1d9 !important;
        border-color: #30363d !important;
    }

    body.auto-theme #forwardMessageModal .forward-contact-item {
        background: transparent !important;
        color: #c9d1d9 !important;
        border-color: #30363d !important;
    }

    body.auto-theme #forwardMessageModal .forward-contact-item:hover,
    body.auto-theme #forwardMessageModal .forward-contact-item:focus-within,
    body.auto-theme #forwardMessageModal .forward-contact-item.selected {
        background: rgba(31, 111, 235, 0.20) !important;
        color: #c9d1d9 !important;
    }

    body.auto-theme #forwardMessageModal .username_inmodal,
    body.auto-theme #forwardMessageModal .modal-title,
    body.auto-theme #forwardMessageModal .contact-info {
        color: #c9d1d9 !important;
    }
}


/* QChat context menu v282: deterministic long-press on iOS/Android. */
@media (pointer: coarse), (hover: none) {
    #messagesContainer .message[data-message-id],
    .profile-blog-post,
    .profile-blog-comment,
    .qchat-context-longpress-active {
        -webkit-touch-callout: none !important;
        -webkit-user-select: none !important;
        user-select: none !important;
    }

    #messageContextMenu,
    #messageContextMenu *,
    #messageContextMenu button,
    #messageContextMenu span,
    #messageContextMenu i,
    #messageContextMenu svg {
        -webkit-touch-callout: none !important;
        -webkit-user-select: none !important;
        user-select: none !important;
        touch-action: manipulation !important;
    }
}

/* QChat v393: external profile tabs own their long-press menu on iOS.
   Suppress Safari's native Copy/Search selection callout while preserving the
   app's capture-phase long-press handler and horizontal tab scrolling. */
@media (pointer: coarse), (hover: none) {
    #appTabs .qchat-external-profile-tab,
    #appTabs .qchat-external-profile-tab * {
        -webkit-touch-callout: none !important;
        -webkit-user-select: none !important;
        user-select: none !important;
    }
}
