597 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			SCSS
		
	
	
			
		
		
	
	
			597 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			SCSS
		
	
	
/*
 | 
						|
Copyright 2015, 2016 OpenMarket Ltd
 | 
						|
 | 
						|
Licensed under the Apache License, Version 2.0 (the "License");
 | 
						|
you may not use this file except in compliance with the License.
 | 
						|
You may obtain a copy of the License at
 | 
						|
 | 
						|
    http://www.apache.org/licenses/LICENSE-2.0
 | 
						|
 | 
						|
Unless required by applicable law or agreed to in writing, software
 | 
						|
distributed under the License is distributed on an "AS IS" BASIS,
 | 
						|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
						|
See the License for the specific language governing permissions and
 | 
						|
limitations under the License.
 | 
						|
*/
 | 
						|
 | 
						|
.mx_EventTile {
 | 
						|
    max-width: 100%;
 | 
						|
    clear: both;
 | 
						|
    padding-top: 18px;
 | 
						|
    font-size: 14px;
 | 
						|
    position: relative;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile.mx_EventTile_info {
 | 
						|
    padding-top: 0px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_avatar {
 | 
						|
    position: absolute;
 | 
						|
    top: 14px;
 | 
						|
    left: 8px;
 | 
						|
    cursor: pointer;
 | 
						|
    user-select: none;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile.mx_EventTile_info .mx_EventTile_avatar {
 | 
						|
    top: 8px;
 | 
						|
    left: 65px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_continuation {
 | 
						|
    padding-top: 0px !important;
 | 
						|
 | 
						|
    &.mx_EventTile_isEditing {
 | 
						|
        padding-top: 5px !important;
 | 
						|
        margin-top: -5px;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_isEditing {
 | 
						|
    background-color: $header-panel-bg-color;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile .mx_SenderProfile {
 | 
						|
    color: $primary-fg-color;
 | 
						|
    font-size: 14px;
 | 
						|
    display: inline-block; /* anti-zalgo, with overflow hidden */
 | 
						|
    overflow: hidden;
 | 
						|
    cursor: pointer;
 | 
						|
    padding-left: 65px; /* left gutter */
 | 
						|
    padding-bottom: 0px;
 | 
						|
    padding-top: 0px;
 | 
						|
    margin: 0px;
 | 
						|
    line-height: 17px;
 | 
						|
    /* the next three lines, along with overflow hidden, truncate long display names */
 | 
						|
    white-space: nowrap;
 | 
						|
    text-overflow: ellipsis;
 | 
						|
    max-width: calc(100% - 65px);
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile .mx_SenderProfile .mx_Flair {
 | 
						|
    opacity: 0.7;
 | 
						|
    margin-left: 5px;
 | 
						|
    display: inline-block;
 | 
						|
    vertical-align: top;
 | 
						|
    height: 16px;
 | 
						|
    overflow: hidden;
 | 
						|
    user-select: none;
 | 
						|
 | 
						|
    img {
 | 
						|
        vertical-align: -2px;
 | 
						|
        margin-right: 2px;
 | 
						|
        border-radius: 8px;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_isEditing .mx_MessageTimestamp {
 | 
						|
    visibility: hidden !important;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile .mx_MessageTimestamp {
 | 
						|
    display: block;
 | 
						|
    visibility: hidden;
 | 
						|
    white-space: nowrap;
 | 
						|
    left: 0px;
 | 
						|
    width: 46px; /* 8 + 30 (avatar) + 8 */
 | 
						|
    text-align: center;
 | 
						|
    position: absolute;
 | 
						|
    user-select: none;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_line, .mx_EventTile_reply {
 | 
						|
    position: relative;
 | 
						|
    /* ideally should be 100px, but 95px gives us a max thumbnail size of 800x600, which is nice */
 | 
						|
    margin-right: 110px;
 | 
						|
    padding-left: 65px; /* left gutter */
 | 
						|
    padding-top: 4px;
 | 
						|
    padding-bottom: 2px;
 | 
						|
    border-radius: 4px;
 | 
						|
    min-height: 24px;
 | 
						|
    line-height: 22px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_reply {
 | 
						|
    margin-right: 10px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_info .mx_EventTile_line {
 | 
						|
    padding-left: 83px;
 | 
						|
}
 | 
						|
 | 
						|
/* HACK to override line-height which is already marked important elsewhere */
 | 
						|
.mx_EventTile_bigEmoji.mx_EventTile_bigEmoji {
 | 
						|
    font-size: 48px !important;
 | 
						|
    line-height: 57px !important;
 | 
						|
}
 | 
						|
 | 
						|
.mx_MessagePanel_alwaysShowTimestamps .mx_MessageTimestamp {
 | 
						|
    visibility: visible;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_selected > div > a > .mx_MessageTimestamp {
 | 
						|
    left: 3px;
 | 
						|
    width: auto;
 | 
						|
}
 | 
						|
 | 
						|
// Explicit relationships so that it doesn't apply to nested EventTile components (e.g in Replies)
 | 
						|
.mx_EventTile_last > div > a > .mx_MessageTimestamp,
 | 
						|
.mx_EventTile:hover > div > a > .mx_MessageTimestamp,
 | 
						|
.mx_EventTile.mx_EventTile_actionBarFocused > div > a > .mx_MessageTimestamp {
 | 
						|
    visibility: visible;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile:hover .mx_MessageActionBar,
 | 
						|
.mx_EventTile.mx_EventTile_actionBarFocused .mx_MessageActionBar {
 | 
						|
    visibility: visible;
 | 
						|
}
 | 
						|
 | 
						|
/* this is used for the tile for the event which is selected via the URL.
 | 
						|
 * TODO: ultimately we probably want some transition on here.
 | 
						|
 */
 | 
						|
.mx_EventTile_selected > .mx_EventTile_line {
 | 
						|
    border-left: $accent-color 5px solid;
 | 
						|
    padding-left: 60px;
 | 
						|
    background-color: $event-selected-color;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_highlight,
 | 
						|
.mx_EventTile_highlight .markdown-body {
 | 
						|
    color: $event-highlight-fg-color;
 | 
						|
 | 
						|
    .mx_EventTile_line {
 | 
						|
        background-color: $event-highlight-bg-color;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile:hover .mx_EventTile_line,
 | 
						|
.mx_EventTile.mx_EventTile_actionBarFocused .mx_EventTile_line {
 | 
						|
    background-color: $event-selected-color;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_searchHighlight {
 | 
						|
    background-color: $accent-color;
 | 
						|
    color: $accent-fg-color;
 | 
						|
    border-radius: 5px;
 | 
						|
    padding-left: 2px;
 | 
						|
    padding-right: 2px;
 | 
						|
    cursor: pointer;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_searchHighlight a {
 | 
						|
    background-color: $accent-color;
 | 
						|
    color: $accent-fg-color;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_encrypting {
 | 
						|
    color: $event-encrypting-color !important;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_sending {
 | 
						|
    color: $event-sending-color;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_sending .mx_UserPill,
 | 
						|
.mx_EventTile_sending .mx_RoomPill {
 | 
						|
    opacity: 0.5;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_notSent {
 | 
						|
    color: $event-notsent-color;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_redacted .mx_EventTile_line .mx_UnknownBody,
 | 
						|
.mx_EventTile_redacted .mx_EventTile_reply .mx_UnknownBody {
 | 
						|
    --lozenge-color: $event-redacted-fg-color;
 | 
						|
    --lozenge-border-color: $event-redacted-border-color;
 | 
						|
    display: block;
 | 
						|
    height: 22px;
 | 
						|
    width: 250px;
 | 
						|
    border-radius: 11px;
 | 
						|
    background:
 | 
						|
        repeating-linear-gradient(
 | 
						|
            -45deg,
 | 
						|
            var(--lozenge-color),
 | 
						|
            var(--lozenge-color) 3px,
 | 
						|
            transparent 3px,
 | 
						|
            transparent 6px
 | 
						|
        );
 | 
						|
    box-shadow: 0px 0px 3px var(--lozenge-border-color) inset;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_sending.mx_EventTile_redacted .mx_UnknownBody {
 | 
						|
    opacity: 0.4;
 | 
						|
}
 | 
						|
 | 
						|
div.mx_EventTile_notSent.mx_EventTile_redacted .mx_UnknownBody {
 | 
						|
    --lozenge-color: $event-notsent-color;
 | 
						|
    --lozenge-border-color: $event-notsent-color;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_contextual {
 | 
						|
    opacity: 0.4;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_msgOption {
 | 
						|
    float: right;
 | 
						|
    text-align: right;
 | 
						|
    position: relative;
 | 
						|
    width: 90px;
 | 
						|
 | 
						|
    /* Hack to stop the height of this pushing the messages apart.
 | 
						|
       Replaces margin-top: -6px. This interacts better with a read
 | 
						|
       marker being in between. Content overflows. */
 | 
						|
    height: 1px;
 | 
						|
 | 
						|
    margin-right: 10px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_msgOption a {
 | 
						|
    text-decoration: none;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_readAvatars {
 | 
						|
    position: relative;
 | 
						|
    display: inline-block;
 | 
						|
    width: 14px;
 | 
						|
    height: 14px;
 | 
						|
    top: 29px;
 | 
						|
    user-select: none;
 | 
						|
    z-index: 1;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_continuation .mx_EventTile_readAvatars,
 | 
						|
.mx_EventTile_info .mx_EventTile_readAvatars,
 | 
						|
.mx_EventTile_emote .mx_EventTile_readAvatars {
 | 
						|
    top: 7px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_readAvatars .mx_BaseAvatar {
 | 
						|
    position: absolute;
 | 
						|
    display: inline-block;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_readAvatarRemainder {
 | 
						|
    color: $event-timestamp-color;
 | 
						|
    font-size: 11px;
 | 
						|
    position: absolute;
 | 
						|
}
 | 
						|
 | 
						|
/* all the overflow-y: hidden; are to trap Zalgos -
 | 
						|
   but they introduce an implicit overflow-x: auto.
 | 
						|
   so make that explicitly hidden too to avoid random
 | 
						|
   horizontal scrollbars occasionally appearing, like in
 | 
						|
   https://github.com/vector-im/vector-web/issues/1154
 | 
						|
    */
 | 
						|
.mx_EventTile_content {
 | 
						|
    display: block;
 | 
						|
    overflow-y: hidden;
 | 
						|
    overflow-x: hidden;
 | 
						|
    margin-right: 34px;
 | 
						|
}
 | 
						|
 | 
						|
/* De-zalgoing */
 | 
						|
.mx_EventTile_body {
 | 
						|
    overflow-y: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_e2eIcon {
 | 
						|
    display: block;
 | 
						|
    position: absolute;
 | 
						|
    top: 8px;
 | 
						|
    left: 46px;
 | 
						|
    width: 15px;
 | 
						|
    height: 15px;
 | 
						|
    cursor: pointer;
 | 
						|
    mask-size: 14px;
 | 
						|
    mask-repeat: no-repeat;
 | 
						|
    mask-position: 0;
 | 
						|
    opacity: 0.2;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_e2eIcon_undecryptable, .mx_EventTile_e2eIcon_unverified {
 | 
						|
    mask-image: url('$(res)/img/e2e/warning.svg');
 | 
						|
    background-color: $warning-color;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_e2eIcon_unencrypted {
 | 
						|
    mask-image: url('$(res)/img/e2e/warning.svg');
 | 
						|
    background-color: $composer-e2e-icon-color;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_e2eIcon_hidden {
 | 
						|
    display: none;
 | 
						|
}
 | 
						|
 | 
						|
/* always override hidden attribute for blocked and warning */
 | 
						|
.mx_EventTile_e2eIcon_hidden[src*="img/e2e-blocked.svg"],
 | 
						|
.mx_EventTile_e2eIcon_hidden[src*="img/e2e-warning.svg"] {
 | 
						|
    display: block;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_keyRequestInfo {
 | 
						|
    font-size: 12px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_keyRequestInfo_text {
 | 
						|
    opacity: 0.5;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_keyRequestInfo_text a {
 | 
						|
    color: $primary-fg-color;
 | 
						|
    text-decoration: underline;
 | 
						|
    cursor: pointer;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_keyRequestInfo_tooltip_contents p {
 | 
						|
    text-align: auto;
 | 
						|
    margin-left: 3px;
 | 
						|
    margin-right: 3px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_keyRequestInfo_tooltip_contents p:first-child {
 | 
						|
    margin-top: 0px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_keyRequestInfo_tooltip_contents p:last-child {
 | 
						|
    margin-bottom: 0px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_12hr .mx_EventTile_e2eIcon {
 | 
						|
    padding-left: 5px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_selected.mx_EventTile_info .mx_EventTile_line {
 | 
						|
    padding-left: 78px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile:hover.mx_EventTile_verified .mx_EventTile_line,
 | 
						|
.mx_EventTile:hover.mx_EventTile_unverified .mx_EventTile_line {
 | 
						|
    padding-left: 60px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile:hover.mx_EventTile_verified .mx_EventTile_line {
 | 
						|
    border-left: $e2e-verified-color 5px solid;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile:hover.mx_EventTile_unverified .mx_EventTile_line {
 | 
						|
    border-left: $e2e-unverified-color 5px solid;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile:hover.mx_EventTile_verified.mx_EventTile_info .mx_EventTile_line,
 | 
						|
.mx_EventTile:hover.mx_EventTile_unverified.mx_EventTile_info .mx_EventTile_line {
 | 
						|
    padding-left: 78px;
 | 
						|
}
 | 
						|
 | 
						|
/* End to end encryption stuff */
 | 
						|
.mx_EventTile:hover .mx_EventTile_e2eIcon {
 | 
						|
    opacity: 1;
 | 
						|
}
 | 
						|
 | 
						|
// Explicit relationships so that it doesn't apply to nested EventTile components (e.g in Replies)
 | 
						|
.mx_EventTile:hover.mx_EventTile_verified .mx_EventTile_line > a > .mx_MessageTimestamp,
 | 
						|
.mx_EventTile:hover.mx_EventTile_unverified .mx_EventTile_line > a > .mx_MessageTimestamp {
 | 
						|
    left: 3px;
 | 
						|
    width: auto;
 | 
						|
}
 | 
						|
 | 
						|
// Explicit relationships so that it doesn't apply to nested EventTile components (e.g in Replies)
 | 
						|
.mx_EventTile:hover.mx_EventTile_verified .mx_EventTile_line > .mx_EventTile_e2eIcon,
 | 
						|
.mx_EventTile:hover.mx_EventTile_unverified .mx_EventTile_line > .mx_EventTile_e2eIcon {
 | 
						|
    display: block;
 | 
						|
    left: 41px;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_content .mx_EventTile_edited {
 | 
						|
    user-select: none;
 | 
						|
    font-size: 12px;
 | 
						|
    color: $roomtopic-color;
 | 
						|
    display: inline-block;
 | 
						|
    margin-left: 9px;
 | 
						|
    cursor: pointer;
 | 
						|
}
 | 
						|
 | 
						|
/* Various markdown overrides */
 | 
						|
 | 
						|
.mx_EventTile_body pre {
 | 
						|
    border: 1px solid transparent;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_content .markdown-body {
 | 
						|
    font-family: inherit !important;
 | 
						|
    white-space: normal !important;
 | 
						|
    line-height: inherit !important;
 | 
						|
    color: inherit; // inherit the colour from the dark or light theme by default (but not for code blocks)
 | 
						|
    font-size: 14px;
 | 
						|
 | 
						|
    pre, code {
 | 
						|
        font-family: $monospace-font-family !important;
 | 
						|
        // deliberate constants as we're behind an invert filter
 | 
						|
        color: #333;
 | 
						|
    }
 | 
						|
 | 
						|
    pre {
 | 
						|
        // have to use overlay rather than auto otherwise Linux and Windows
 | 
						|
        // Chrome gets very confused about vertical spacing:
 | 
						|
        // https://github.com/vector-im/vector-web/issues/754
 | 
						|
        overflow-x: overlay;
 | 
						|
        overflow-y: visible;
 | 
						|
        max-height: 30vh;
 | 
						|
    }
 | 
						|
 | 
						|
    code {
 | 
						|
        // deliberate constants as we're behind an invert filter
 | 
						|
        background-color: #f8f8f8;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile:hover .mx_EventTile_body pre {
 | 
						|
    border: 1px solid #e5e5e5; // deliberate constant as we're behind an invert filter
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_pre_container {
 | 
						|
    // For correct positioning of _copyButton (See TextualBody)
 | 
						|
    position: relative;
 | 
						|
}
 | 
						|
 | 
						|
// Inserted adjacent to <pre> blocks, (See TextualBody)
 | 
						|
.mx_EventTile_copyButton {
 | 
						|
    position: absolute;
 | 
						|
    display: inline-block;
 | 
						|
    visibility: hidden;
 | 
						|
    cursor: pointer;
 | 
						|
    top: 6px;
 | 
						|
    right: 6px;
 | 
						|
    width: 19px;
 | 
						|
    height: 19px;
 | 
						|
    background-image: url($copy-button-url);
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_body .mx_EventTile_pre_container:hover .mx_EventTile_copyButton {
 | 
						|
    visibility: visible;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_content .markdown-body h1,
 | 
						|
.mx_EventTile_content .markdown-body h2,
 | 
						|
.mx_EventTile_content .markdown-body h3,
 | 
						|
.mx_EventTile_content .markdown-body h4,
 | 
						|
.mx_EventTile_content .markdown-body h5,
 | 
						|
.mx_EventTile_content .markdown-body h6 {
 | 
						|
    font-family: inherit !important;
 | 
						|
    color: inherit;
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
/* Make h1 and h2 the same size as h3. */
 | 
						|
.mx_EventTile_content .markdown-body h1,
 | 
						|
.mx_EventTile_content .markdown-body h2 {
 | 
						|
    font-size: 1.5em;
 | 
						|
    border-bottom: none !important; // override GFM
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_content .markdown-body a {
 | 
						|
    color: $accent-color-alt;
 | 
						|
    text-decoration: underline;
 | 
						|
}
 | 
						|
 | 
						|
.mx_EventTile_content .markdown-body .hljs {
 | 
						|
    display: inline !important;
 | 
						|
}
 | 
						|
 | 
						|
/*
 | 
						|
// actually, removing the Italic TTF provides
 | 
						|
// better results seemingly
 | 
						|
 | 
						|
// compensate for Nunito italics being terrible
 | 
						|
// https://github.com/google/fonts/issues/1726
 | 
						|
.mx_EventTile_content .markdown-body em {
 | 
						|
    transform: skewX(-14deg);
 | 
						|
    display: inline-block;
 | 
						|
}
 | 
						|
*/
 | 
						|
 | 
						|
/* end of overrides */
 | 
						|
 | 
						|
/* Ordering this block by specificity would require breaking it up into several
 | 
						|
   chunks, which seems like it would be more confusing to read. */
 | 
						|
/* stylelint-disable no-descending-specificity */
 | 
						|
.mx_MatrixChat_useCompactLayout {
 | 
						|
    .mx_EventTile {
 | 
						|
        padding-top: 4px;
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_EventTile.mx_EventTile_info {
 | 
						|
        // same as the padding for non-compact .mx_EventTile.mx_EventTile_info
 | 
						|
        padding-top: 0px;
 | 
						|
        font-size: 13px;
 | 
						|
        .mx_EventTile_line, .mx_EventTile_reply {
 | 
						|
            line-height: 20px;
 | 
						|
        }
 | 
						|
        .mx_EventTile_avatar {
 | 
						|
            top: 4px;
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_EventTile .mx_SenderProfile {
 | 
						|
        font-size: 13px;
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_EventTile.mx_EventTile_emote {
 | 
						|
        // add a bit more space for emotes so that avatars don't collide
 | 
						|
        padding-top: 8px;
 | 
						|
        .mx_EventTile_avatar {
 | 
						|
            top: 2px;
 | 
						|
        }
 | 
						|
        .mx_EventTile_line, .mx_EventTile_reply {
 | 
						|
            padding-top: 0px;
 | 
						|
            padding-bottom: 1px;
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_EventTile.mx_EventTile_emote.mx_EventTile_continuation {
 | 
						|
        padding-top: 0;
 | 
						|
        .mx_EventTile_line, .mx_EventTile_reply {
 | 
						|
            padding-top: 0px;
 | 
						|
            padding-bottom: 0px;
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_EventTile_line, .mx_EventTile_reply {
 | 
						|
        padding-top: 0px;
 | 
						|
        padding-bottom: 0px;
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_EventTile_avatar {
 | 
						|
        top: 2px;
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_EventTile_e2eIcon {
 | 
						|
        top: 3px;
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_EventTile_readAvatars {
 | 
						|
        top: 27px;
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_EventTile_continuation .mx_EventTile_readAvatars,
 | 
						|
    .mx_EventTile_emote .mx_EventTile_readAvatars {
 | 
						|
        top: 5px;
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_EventTile_info .mx_EventTile_readAvatars {
 | 
						|
        top: 4px;
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_RoomView_MessageList h2 {
 | 
						|
        margin-top: 6px;
 | 
						|
    }
 | 
						|
 | 
						|
    .mx_EventTile_content .markdown-body {
 | 
						|
        p, ul, ol, dl, blockquote, pre, table {
 | 
						|
            margin-bottom: 4px; // 1/4 of the non-compact margin-bottom
 | 
						|
        }
 | 
						|
    }
 | 
						|
}
 | 
						|
/* stylelint-enable no-descending-specificity */
 |