converse-image-modal .modal-dialog {
    width: var(--tochka-image-width, 480px) !important; max-width: calc(100vw - 24px) !important;
    height: var(--tochka-image-height, min(600px, calc(100vh - 24px))) !important;
    max-height: calc(100vh - 24px) !important; min-height: 0 !important;
    margin: max(12px, calc((100vh - var(--tochka-image-height, 600px)) / 2)) auto !important;
}
converse-image-modal .modal-content { height: 100% !important; max-height: none !important; }
converse-image-modal .modal-header {
    flex: 0 0 auto; min-height: 48px; padding: 8px 12px !important;
    background: var(--mt-panel) !important; color: var(--mt-text) !important; border-color: var(--mt-border) !important;
}
converse-image-modal .modal-title { font-size: 14px !important; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
converse-image-modal .modal-title, converse-image-modal .modal-title a { color: var(--mt-text) !important; opacity: 1; }
converse-image-modal .modal-header [data-bs-dismiss="modal"] { flex-shrink: 0; color: var(--mt-text) !important; background: transparent !important; }
converse-image-modal .modal-header [data-bs-dismiss="modal"]:hover { background: var(--mt-hover) !important; }
converse-image-modal .modal-header converse-icon, converse-image-modal .modal-header svg { color: var(--mt-text) !important; fill: currentColor !important; }
converse-image-modal .modal-footer { display: none !important; }
converse-image-modal .modal-body {
    display: flex !important; flex-direction: column; min-height: 0 !important;
    flex: 1 1 auto !important; padding: 8px !important; overflow: hidden !important;
}
.tochka-image-toolbar { display: flex; flex: 0 0 auto; gap: 6px; align-items: center; flex-wrap: wrap; padding-bottom: 8px; font: 12px/1.3 system-ui,sans-serif; }
.tochka-image-toolbar button { min-width: 34px; height: 32px; border: 1px solid var(--mt-border); border-radius: 5px; background: var(--mt-panel); color: var(--mt-text); padding: 3px 9px; font: inherit; cursor: pointer; }
.tochka-image-toolbar button:hover { background: var(--mt-hover); }
.tochka-image-toolbar button:focus-visible { outline: 2px solid var(--mt-accent); }
.tochka-image-scale { min-width: 38px; color: var(--mt-text); }
.tochka-image-hint { display: none; }
.tochka-image-viewport {
    position: relative; flex: 1 1 auto; min-height: 0; min-width: 0; overflow: auto;
    background: var(--mt-inset); border: 1px solid var(--mt-border); padding: 7px;
    cursor: grab; touch-action: none; overscroll-behavior: contain;
}
.tochka-image-viewport.is-dragging { cursor: grabbing; user-select: none; }
converse-image-modal .tochka-image-viewport img.chat-image--modal {
    display: block !important; max-width: none !important; max-height: none !important;
    min-width: 0 !important; min-height: 0 !important; margin: 0 auto;
    object-fit: contain; border: 0 !important; padding: 0 !important; border-radius: 0 !important;
}
converse-image-modal .messenger-image-actions { flex: 0 0 auto; margin: 8px 0 0; }
