mirror of
https://github.com/Nathanwoodburn/hnschat-web.git
synced 2025-01-19 04:08:12 +11:00
3036 lines
60 KiB
CSS
Executable File
3036 lines
60 KiB
CSS
Executable File
:root {
|
|
--themeColor: #409aed;
|
|
|
|
--positiveColor: #91b14f;
|
|
--negativeColor: #db4437;
|
|
--warningColor: #ffcf24;
|
|
|
|
--primaryBorderColor: #1c1c1c;
|
|
--secondaryBorderColor: #252525;
|
|
--tertiaryBorderColor: #3c3c3c;
|
|
|
|
--primaryForeground: #fff;
|
|
--secondaryForeground: #7a7a7a;
|
|
--tertiaryForeground: #a6a6a6;
|
|
|
|
--primaryBackground: #1e1e1e;
|
|
--secondaryBackground: #232323;
|
|
--tertiaryBackground: #282828;
|
|
--quaternaryBackground: #2f2f2f;
|
|
--quinaryBackground: #3c3c3c;
|
|
--senaryBackground: #262626;
|
|
--septenaryBackground: #555;
|
|
--octonaryBackground: #1a1a1a;
|
|
|
|
--bubbleBackground: #2d2d2d;
|
|
--bubbleSelfBackground: #409aed;
|
|
--bubbleMentionBackground: #91b14f;
|
|
|
|
--notificationColor: #db4437;
|
|
|
|
--scrollbarTrack: transparent;
|
|
--scrollbarThumb: #888888ee;
|
|
--scrollbarThumbHover: #555555;
|
|
|
|
--menuIcon: url(/assets/img/icons/menu);
|
|
--usersIcon: url(/assets/img/icons/users);
|
|
--composeIcon: url(/assets/img/icons/compose);
|
|
--lockIcon: url(/assets/img/icons/lock);
|
|
--closeIcon: url(/assets/img/icons/close);
|
|
--deleteIcon: url(/assets/img/icons/trash);
|
|
--messageIcon: url(/assets/img/icons/message);
|
|
--viewIcon: url(/assets/img/icons/view);
|
|
--plusIcon: url(/assets/img/icons/plus);
|
|
--payIcon: url(/assets/img/icons/pay);
|
|
--signatureIcon: url(/assets/img/icons/signature);
|
|
--checkIcon: url(/assets/img/icons/check);
|
|
--failIcon: url(/assets/img/icons/fail);
|
|
--warningIcon: url(/assets/img/icons/warning);
|
|
--replyIcon: url(/assets/img/icons/arrow);
|
|
--emojiIcon: url(/assets/img/icons/emoji);
|
|
--gifIcon: url(/assets/img/icons/gif);
|
|
--searchIcon: url(/assets/img/icons/search);
|
|
--clipboardIcon: url(/assets/img/icons/clipboard);
|
|
--editIcon: url(/assets/img/icons/edit);
|
|
--saveIcon: url(/assets/img/icons/save);
|
|
--mentionIcon: url(/assets/img/icons/mention);
|
|
--fishIcon: url(/assets/img/icons/fish);
|
|
--replayIcon: url(/assets/img/icons/replay);
|
|
--pinIcon: url(/assets/img/icons/pin);
|
|
--videoIcon: url(/assets/img/icons/video);
|
|
--voiceIcon: url(/assets/img/icons/voice);
|
|
--screenIcon: url(/assets/img/icons/screen);
|
|
--leaveIcon: url(/assets/img/icons/leave);
|
|
--audioIcon: url(/assets/img/icons/audio);
|
|
|
|
--handshakeIcon: url(/assets/img/handshake);
|
|
--unstoppableIcon: url(/assets/img/unstoppable);
|
|
--icannIcon: url(/assets/img/icann);
|
|
}
|
|
|
|
::-webkit-scrollbar {
|
|
height: 5px;
|
|
width: 5px;
|
|
}
|
|
::-webkit-scrollbar-track {
|
|
background-color: var(--scrollbarTrack);
|
|
}
|
|
::-webkit-scrollbar-thumb {
|
|
background-color: var(--scrollbarThumb);
|
|
}
|
|
::-webkit-scrollbar-thumb:hover {
|
|
background-color: var(--scrollbarThumbHover);
|
|
}
|
|
.scroller {
|
|
scrollbar-color: var(--scrollbarThumb) var(--scrollbarTrack);
|
|
scrollbar-width: auto;
|
|
}
|
|
.scroller.f {
|
|
scrollbar-width: thin;
|
|
}
|
|
.scroller::-webkit-scrollbar-track {
|
|
margin-top: 0px;
|
|
margin-bottom: 0px;
|
|
}
|
|
|
|
.positive {
|
|
color: var(--positiveColor);
|
|
}
|
|
|
|
a {
|
|
text-decoration: none;
|
|
}
|
|
|
|
*,*:after,*:before {
|
|
box-sizing: border-box;
|
|
background-size: contain;
|
|
background-position: center;
|
|
background-repeat: no-repeat;
|
|
-webkit-mask-size: contain;
|
|
-webkit-mask-position: center;
|
|
-webkit-mask-repeat: no-repeat;
|
|
-moz-mask-size: contain;
|
|
-moz-mask-position: center;
|
|
-moz-mask-repeat: no-repeat;
|
|
mask-size: contain;
|
|
mask-position: center;
|
|
mask-repeat: no-repeat;
|
|
font-family: "Arial";
|
|
font-size: 15px;
|
|
letter-spacing: 0.25px;
|
|
touch-action: pan-x pan-y;
|
|
}
|
|
|
|
body:not(.desktop) {
|
|
-webkit-touch-callout: none;
|
|
-webkit-user-callout: none;
|
|
-webkit-user-select: none;
|
|
-webkit-user-drag: none;
|
|
-webkit-user-modify: none;
|
|
-webkit-highlight: none;
|
|
}
|
|
|
|
code {
|
|
font-size: inherit;
|
|
}
|
|
|
|
.logo span {
|
|
font-family: "Rubik";
|
|
}
|
|
|
|
html,body {
|
|
background-color: var(--primaryBackground);
|
|
color: var(--primaryForeground);
|
|
height: 100%;
|
|
width: 100%;
|
|
min-width: 500px;
|
|
margin: 0;
|
|
}
|
|
body {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
body[data-page=chat] {
|
|
overflow: hidden;
|
|
position: fixed;
|
|
}
|
|
|
|
div {
|
|
color: var(--primaryForeground);
|
|
}
|
|
|
|
iframe {
|
|
outline: none;
|
|
border: 0;
|
|
}
|
|
.loading {
|
|
display: none;
|
|
position: absolute;
|
|
width: 100%;
|
|
height: 100%;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
.hidden {
|
|
display: none !important;
|
|
}
|
|
.shown:not(.flex) {
|
|
display: block !important;
|
|
}
|
|
.shown.flex {
|
|
display: flex !important;
|
|
}
|
|
|
|
.visible {
|
|
opacity: 1 !important;
|
|
}
|
|
|
|
.center {
|
|
text-align: center;
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
}
|
|
|
|
.group {
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
.group:not(.searching) div:not(.clipboard) {
|
|
margin-right: 16px;
|
|
}
|
|
|
|
#users .title .group.normal {
|
|
margin-left: 5px;
|
|
}
|
|
|
|
#stats .stat div:last-child {
|
|
color: var(--secondaryForeground);
|
|
}
|
|
|
|
#stats .stat .list {
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
|
|
a, .link {
|
|
color: var(--themeColor);
|
|
}
|
|
body.desktop a:not(.previewLink):hover, body.desktop .link:hover {
|
|
cursor: pointer;
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.address {
|
|
text-align: center;
|
|
word-break: break-all;
|
|
}
|
|
|
|
.messageHeader .title {
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
.messageHeader .title .decoded {
|
|
margin-left: 5px;
|
|
color: var(--secondaryForeground);
|
|
}
|
|
|
|
tr,.title,.subtitle,.button,#qrcode,.header,.user,.time,.informational,.reply,.message.payment,.reactions .reaction,.fallback,.preview .media, .messageEffect, .messageEffect > *, .pinnedMessage > *, #videoInfo .actions > * {
|
|
-webkit-user-select: none;
|
|
-moz-user-select: none;
|
|
user-select: none;
|
|
}
|
|
|
|
.error, .destructive {
|
|
color: var(--negativeColor) !important;
|
|
}
|
|
|
|
.response {
|
|
text-align: center;
|
|
}
|
|
.popover .response:not(:empty) {
|
|
margin-top: 10px;
|
|
}
|
|
.popover[data-name=pay] .response:empty {
|
|
margin-top: -10px;
|
|
}
|
|
|
|
.decrypt {
|
|
display: none;
|
|
}
|
|
|
|
.inline {
|
|
display: inline;
|
|
}
|
|
.inline.nick, .inline.channel {
|
|
font-weight: bolder;
|
|
}
|
|
|
|
.user {
|
|
line-height: 1;
|
|
}
|
|
|
|
body.desktop .inline:hover {
|
|
cursor: pointer;
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.icon {
|
|
height: 20px;
|
|
width: 20px;
|
|
background-color: var(--primaryForeground);
|
|
flex-shrink: 0;
|
|
}
|
|
body.desktop .icon:hover {
|
|
cursor: pointer;
|
|
opacity: 0.5;
|
|
}
|
|
.icon.menu {
|
|
-webkit-mask-image: var(--menuIcon);
|
|
-moz-mask-image: var(--menuIcon);
|
|
mask-image: var(--menuIcon);
|
|
-webkit-mask-size: 20px;
|
|
-moz-mask-size: 20px;
|
|
mask-size: 20px;
|
|
}
|
|
.icon.users {
|
|
-webkit-mask-image: var(--usersIcon);
|
|
-moz-mask-image: var(--usersIcon);
|
|
mask-image: var(--usersIcon);
|
|
-webkit-mask-size: 20px;
|
|
-moz-mask-size: 20px;
|
|
mask-size: 20px;
|
|
}
|
|
.icon.compose {
|
|
-webkit-mask-image: var(--composeIcon);
|
|
-moz-mask-image: var(--composeIcon);
|
|
mask-image: var(--composeIcon);
|
|
}
|
|
.icon.search {
|
|
-webkit-mask-image: var(--searchIcon);
|
|
-moz-mask-image: var(--searchIcon);
|
|
mask-image: var(--searchIcon);
|
|
}
|
|
.icon.lock {
|
|
-webkit-mask-image: var(--lockIcon);
|
|
-moz-mask-image: var(--lockIcon);
|
|
mask-image: var(--lockIcon);
|
|
background-color: var(--negativeColor);
|
|
}
|
|
.icon.warning {
|
|
-webkit-mask-image: var(--warningIcon);
|
|
-moz-mask-image: var(--warningIcon);
|
|
mask-image: var(--warningIcon);
|
|
background-color: var(--warningColor);
|
|
}
|
|
.icon.close {
|
|
-webkit-mask-image: var(--closeIcon);
|
|
-moz-mask-image: var(--closeIcon);
|
|
mask-image: var(--closeIcon);
|
|
}
|
|
.icon.remove {
|
|
-webkit-mask-image: var(--plusIcon);
|
|
-moz-mask-image: var(--plusIcon);
|
|
mask-image: var(--plusIcon);
|
|
transform: rotate(45deg);
|
|
}
|
|
.icon.delete {
|
|
-webkit-mask-image: var(--deleteIcon);
|
|
-moz-mask-image: var(--deleteIcon);
|
|
mask-image: var(--deleteIcon);
|
|
background-color: var(--negativeColor);
|
|
}
|
|
.icon.message {
|
|
-webkit-mask-image: var(--messageIcon);
|
|
-moz-mask-image: var(--messageIcon);
|
|
mask-image: var(--messageIcon);
|
|
}
|
|
.icon.edit {
|
|
-webkit-mask-image: var(--editIcon);
|
|
-moz-mask-image: var(--editIcon);
|
|
mask-image: var(--editIcon);
|
|
}
|
|
.icon.save {
|
|
-webkit-mask-image: var(--saveIcon);
|
|
-moz-mask-image: var(--saveIcon);
|
|
mask-image: var(--saveIcon);
|
|
}
|
|
.icon.view {
|
|
-webkit-mask-image: var(--viewIcon);
|
|
-moz-mask-image: var(--viewIcon);
|
|
mask-image: var(--viewIcon);
|
|
}
|
|
.icon.plus {
|
|
-webkit-mask-image: var(--plusIcon);
|
|
-moz-mask-image: var(--plusIcon);
|
|
mask-image: var(--plusIcon);
|
|
-webkit-mask-size: 24px;
|
|
-moz-mask-size: 24px;
|
|
mask-size: 24px;
|
|
height: 24px;
|
|
width: 24px;
|
|
}
|
|
.icon.pay {
|
|
-webkit-mask-image: var(--payIcon);
|
|
-moz-mask-image: var(--payIcon);
|
|
mask-image: var(--payIcon);
|
|
-webkit-mask-size: 24px;
|
|
-moz-mask-size: 24px;
|
|
mask-size: 24px;
|
|
height: 24px;
|
|
width: 24px;
|
|
}
|
|
.icon.signature {
|
|
-webkit-mask-image: var(--signatureIcon);
|
|
-moz-mask-image: var(--signatureIcon);
|
|
mask-image: var(--signatureIcon);
|
|
width: 32px;
|
|
padding-left: 10px;
|
|
background-color: var(--secondaryForeground);
|
|
}
|
|
.icon.signature.on {
|
|
background-color: var(--themeColor);
|
|
}
|
|
.icon.mention {
|
|
-webkit-mask-image: var(--mentionIcon);
|
|
-moz-mask-image: var(--mentionIcon);
|
|
mask-image: var(--mentionIcon);
|
|
}
|
|
.icon.fish {
|
|
-webkit-mask-image: var(--fishIcon);
|
|
-moz-mask-image: var(--fishIcon);
|
|
mask-image: var(--fishIcon);
|
|
}
|
|
.icon.pin {
|
|
-webkit-mask-image: var(--pinIcon);
|
|
-moz-mask-image: var(--pinIcon);
|
|
mask-image: var(--pinIcon);
|
|
height: 16px;
|
|
}
|
|
.icon.video {
|
|
-webkit-mask-image: var(--videoIcon);
|
|
-moz-mask-image: var(--videoIcon);
|
|
mask-image: var(--videoIcon);
|
|
}
|
|
.icon.voice {
|
|
-webkit-mask-image: var(--voiceIcon);
|
|
-moz-mask-image: var(--voiceIcon);
|
|
mask-image: var(--voiceIcon);
|
|
}
|
|
.icon.screen {
|
|
-webkit-mask-image: var(--screenIcon);
|
|
-moz-mask-image: var(--screenIcon);
|
|
mask-image: var(--screenIcon);
|
|
}
|
|
.icon.leave {
|
|
-webkit-mask-image: var(--leaveIcon);
|
|
-moz-mask-image: var(--leaveIcon);
|
|
mask-image: var(--leaveIcon);
|
|
}
|
|
.icon.audio {
|
|
background-color: transparent;
|
|
background-image: var(--audioIcon);
|
|
}
|
|
.icon.replay {
|
|
-webkit-mask-image: var(--replayIcon);
|
|
-moz-mask-image: var(--replayIcon);
|
|
mask-image: var(--replayIcon);
|
|
}
|
|
.icon.reply {
|
|
-webkit-mask-image: var(--replyIcon);
|
|
-moz-mask-image: var(--replyIcon);
|
|
mask-image: var(--replyIcon);
|
|
}
|
|
.icon.emoji {
|
|
-webkit-mask-image: var(--emojiIcon);
|
|
-moz-mask-image: var(--emojiIcon);
|
|
mask-image: var(--emojiIcon);
|
|
}
|
|
.icon.emoji.big {
|
|
-webkit-mask-size: 24px;
|
|
-moz-mask-size: 24px;
|
|
mask-size: 24px;
|
|
height: 24px;
|
|
width: 32px;
|
|
}
|
|
.icon.gif {
|
|
-webkit-mask-image: var(--gifIcon);
|
|
-moz-mask-image: var(--gifIcon);
|
|
mask-image: var(--gifIcon);
|
|
}
|
|
.icon.gif.big {
|
|
-webkit-mask-size: 30px;
|
|
-moz-mask-size: 30px;
|
|
mask-size: 30px;
|
|
height: 24px;
|
|
width: 35px;
|
|
}
|
|
.icon.clipboard {
|
|
-webkit-mask-image: var(--clipboardIcon);
|
|
-moz-mask-image: var(--clipboardIcon);
|
|
mask-image: var(--clipboardIcon);
|
|
position: absolute;
|
|
right: 10px;
|
|
}
|
|
.icon.clipboard.copied {
|
|
background-color: var(--positiveColor);
|
|
}
|
|
|
|
.contextMenu[data-name=userContext] .type {
|
|
margin: 5px auto 0 auto;
|
|
}
|
|
.contextMenu[data-name=userContext][data-type=handshake] .type {
|
|
-webkit-mask-image: var(--handshakeIcon);
|
|
-moz-mask-image: var(--handshakeIcon);
|
|
mask-image: var(--handshakeIcon);
|
|
}
|
|
.contextMenu[data-name=userContext][data-type=unstoppable] .type {
|
|
background-image: var(--unstoppableIcon);
|
|
background-color: unset;
|
|
}
|
|
.contextMenu[data-name=userContext][data-type=icann] .type {
|
|
-webkit-mask-image: var(--icannIcon);
|
|
-moz-mask-image: var(--icannIcon);
|
|
mask-image: var(--icannIcon);
|
|
}
|
|
|
|
body.unverified #conversations .actionHolder .icon.compose {
|
|
background-color: var(--secondaryForeground);
|
|
}
|
|
|
|
body.unverified #conversations .actionHolder:hover, body.unverified .messageRow .hover .actions:hover {
|
|
cursor: not-allowed;
|
|
}
|
|
|
|
body.unverified #conversations .actionHolder *, body.unverified .messageRow .hover .actions * {
|
|
pointer-events: none;
|
|
}
|
|
|
|
#blackout {
|
|
height: 100%;
|
|
width: 100%;
|
|
position: fixed;
|
|
background-color: rgba(0,0,0,0.3);
|
|
z-index: 99999999;
|
|
display: none;
|
|
top: 0;
|
|
left: 0;
|
|
}
|
|
|
|
.connecting {
|
|
height: 100%;
|
|
width: 100%;
|
|
position: absolute;
|
|
background-color: var(--primaryBackground);
|
|
z-index: 999999999999;
|
|
top: 0;
|
|
left: 0;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
|
|
.popover {
|
|
display: none;
|
|
width: calc(100% - 20px);
|
|
max-width: 500px;
|
|
background-color: var(--quaternaryBackground);
|
|
position: absolute;
|
|
padding: 20px;
|
|
border-radius: 25px;
|
|
z-index: 99999999;
|
|
}
|
|
.popover .head {
|
|
width: 100%;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
padding-bottom: 10px;
|
|
}
|
|
.popover .title {
|
|
width: 100%;
|
|
font-weight: bold;
|
|
font-size: 20px;
|
|
}
|
|
|
|
.title.small {
|
|
font-size: inherit;
|
|
font-weight: inherit;
|
|
}
|
|
.subtitle {
|
|
color: var(--secondaryForeground);
|
|
}
|
|
|
|
.contextMenu:not([data-name=userContext]) {
|
|
width: auto;
|
|
}
|
|
.contextMenu {
|
|
min-width: 250px;
|
|
max-width: 410px;
|
|
}
|
|
.contextMenu ul {
|
|
list-style: none;
|
|
padding: 0;
|
|
margin: 0;
|
|
}
|
|
.contextMenu ul li {
|
|
text-align: center;
|
|
padding: 8px;
|
|
border-radius: 10px;
|
|
}
|
|
.contextMenu[data-name=userContext] ul:not(:first-child) li, .contextMenu[data-name=channelContext] ul:not(:first-child) li {
|
|
background-color: var(--tertiaryBackground);
|
|
}
|
|
.contextMenu[data-name=messageContext] ul li:hover, .contextMenu[data-name=userContext] ul:not(:first-child) li:hover, .contextMenu[data-name=channelContext] ul:not(:first-child) li:hover {
|
|
background-color: var(--secondaryBackground);
|
|
cursor: pointer;
|
|
}
|
|
|
|
.contextMenu li.action {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
|
|
.contextMenu li.action * {
|
|
pointer-events: none;
|
|
user-select: none;
|
|
}
|
|
|
|
.contextMenu li.action .icon {
|
|
margin-right: 5px;
|
|
}
|
|
|
|
.contextMenu textarea {
|
|
border-radius: 10px;
|
|
resize: none;
|
|
}
|
|
|
|
.contextMenu[data-name=userContext] .actions {
|
|
display: none;
|
|
}
|
|
.contextMenu[data-name=userContext].me .actions {
|
|
width: 100%;
|
|
height: 20px;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
position: absolute;
|
|
left: 0;
|
|
padding: 0 20px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.contextMenu[data-name=userContext] .actions .action {
|
|
display: none;
|
|
}
|
|
|
|
.contextMenu[data-name=userContext].me:not(.editing) .action.edit {
|
|
display: block;
|
|
}
|
|
|
|
.contextMenu[data-name=userContext].editing .action.save, .contextMenu[data-name=userContext].editing .action.close {
|
|
display: block;
|
|
}
|
|
|
|
.contextMenu[data-name=userContext] .pic {
|
|
display: flex;
|
|
justify-content: center;
|
|
margin: 0 -10px 10px 0;
|
|
}
|
|
.contextMenu[data-name=userContext] .pic .avatar {
|
|
height: 80px;
|
|
width: 80px;
|
|
}
|
|
.contextMenu[data-name=userContext] .pic .fallback {
|
|
font-size: 40px;
|
|
}
|
|
.contextMenu[data-name=userContext] li.bio {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
padding: 10px 0;
|
|
}
|
|
.contextMenu[data-name=userContext] .bioHolder {
|
|
width: 100%;
|
|
position: relative;
|
|
}
|
|
.contextMenu[data-name=userContext] .bioHolder .limit {
|
|
display: none;
|
|
}
|
|
.contextMenu[data-name=userContext].editing .bioHolder {
|
|
background-color: var(--tertiaryBackground);
|
|
padding: 10px 10px 20px 10px;
|
|
border-radius: 10px;
|
|
height: 120px;
|
|
}
|
|
.contextMenu[data-name=userContext] .bioHolder .bio {
|
|
white-space: pre-wrap;
|
|
max-height: 110px;
|
|
overflow-y: scroll;
|
|
}
|
|
.contextMenu[data-name=userContext] .bioHolder .bio *:not(.link) {
|
|
color: inherit;
|
|
}
|
|
.contextMenu[data-name=userContext].editing .bioHolder .bio {
|
|
height: 100%;
|
|
overflow-y: scroll;
|
|
color: var(--primaryForeground);
|
|
}
|
|
.contextMenu[data-name=userContext].editing .bioHolder .limit {
|
|
height: 20px;
|
|
padding: 5px;
|
|
color: var(--secondaryForeground);
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
align-items: center;
|
|
position: absolute;
|
|
bottom: 0;
|
|
right: 0;
|
|
}
|
|
.contextMenu[data-name=userContext] textarea[name=bio] {
|
|
height: 100%;
|
|
width: 100%;
|
|
background-color: transparent;
|
|
}
|
|
.contextMenu[data-name=userContext].me div.bio:empty:after {
|
|
content: "Tell everyone about yourself.";
|
|
color: var(--secondaryForeground);
|
|
}
|
|
|
|
.contextMenu[data-name=userContext].me ul:not(:first-child) {
|
|
display: none;
|
|
}
|
|
|
|
.contextMenu .message {
|
|
word-break: break-word;
|
|
word-break: normal;
|
|
overflow-wrap: anywhere;
|
|
}
|
|
|
|
.contextActions {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 5px;
|
|
}
|
|
|
|
#qrcode {
|
|
background-color: var(--tertiaryBackground);
|
|
padding: 10px;
|
|
width: fit-content;
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
border-radius: 10px;
|
|
position: relative;
|
|
}
|
|
#qrlogo {
|
|
position: absolute;
|
|
top: 50%;
|
|
left: 50%;
|
|
background: var(--tertiaryBackground);
|
|
height: 50px;
|
|
width: 50px;
|
|
margin-top: -25px;
|
|
margin-left: -25px;
|
|
border-radius: 5px;
|
|
}
|
|
#qrlogo img {
|
|
height: 100%;
|
|
width: 100%;
|
|
padding: 10px;
|
|
filter: invert(100%) sepia(0%) saturate(1%) hue-rotate(305deg) brightness(106%) contrast(101%);
|
|
}
|
|
|
|
.form {
|
|
width: 100%;
|
|
max-width: 400px;
|
|
text-align: center;
|
|
padding: 10% 10px;
|
|
align-self: flex-start;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
}
|
|
.form .logo {
|
|
width: auto;
|
|
}
|
|
.form .logo img {
|
|
height: 60px;
|
|
width: 60px;
|
|
}
|
|
.form .logo span {
|
|
font-size: 60px;
|
|
}
|
|
.form .section {
|
|
width: inherit;
|
|
}
|
|
|
|
.form#id {
|
|
padding: 20px 10px;
|
|
align-self: initial;
|
|
gap: 10px;
|
|
}
|
|
body[data-page=id] {
|
|
align-items: initial;
|
|
}
|
|
|
|
.section.loading {
|
|
display: block;
|
|
position: relative;
|
|
top: 20px;
|
|
}
|
|
.logo {
|
|
width: 105px;
|
|
height: 100%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
}
|
|
.logo img {
|
|
height: 30px;
|
|
width: 30px;
|
|
filter: invert(100%) sepia(0%) saturate(1%) hue-rotate(305deg) brightness(106%) contrast(101%);
|
|
}
|
|
.logo span {
|
|
font-size: 30px;
|
|
padding-left: 10px;
|
|
}
|
|
|
|
.header .logo {
|
|
width: 60px;
|
|
height: 60px;
|
|
background-color: var(--primaryBackground);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
border-right: 1px solid var(--primaryBorderColor);
|
|
}
|
|
|
|
body[data-page=id] .form .section {
|
|
display: none;
|
|
}
|
|
|
|
.form .section > *:not(:last-child), .popover .body > :not(:last-child), .popover .body .content > :not(:last-child), #manageDomains .domains > *:not(:last-child) {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
#manageDomains .domains:empty {
|
|
display: none;
|
|
}
|
|
|
|
#manageDomains .domains {
|
|
display: flex;
|
|
flex-direction: column;
|
|
text-align: left;
|
|
}
|
|
|
|
#manageDomains .domains .domain {
|
|
display: flex;
|
|
width: 100%;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
}
|
|
|
|
#manageDomains .domains .domain div {
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
line-height: 20px;
|
|
}
|
|
|
|
.actions {
|
|
max-width: 100%;
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
}
|
|
.actions .action:not(:last-child) {
|
|
margin-right: 10px;
|
|
}
|
|
|
|
.input .action {
|
|
margin-right: 8px;
|
|
background-color: var(--secondaryForeground);
|
|
}
|
|
|
|
.input .action.gif {
|
|
margin-left: 8px;
|
|
}
|
|
|
|
select {
|
|
outline: none;
|
|
border: none;
|
|
background-color: var(--tertiaryBackground);
|
|
color: var(--primaryForeground);
|
|
border-radius: 10px;
|
|
display: inline-block;
|
|
font: inherit;
|
|
line-height: 1.5em;
|
|
padding: 0.5em 2.5em 0.5em 1em;
|
|
background-image: linear-gradient(45deg, transparent 50%, var(--secondaryForeground) 50%), linear-gradient(135deg, var(--secondaryForeground) 50%, transparent 50%);
|
|
background-position: calc(100% - 15px) calc(1em + 2px), calc(100% - 10px) calc(1em + 2px), calc(100% - 2.5em) 0.5em;
|
|
background-size: 5px 5px, 5px 5px, 1px 1.5em;
|
|
margin: 0;
|
|
-webkit-box-sizing: border-box;
|
|
-moz-box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
-webkit-appearance: none;
|
|
-moz-appearance: none;
|
|
height: 40px;
|
|
}
|
|
select:-moz-focusring {
|
|
color: transparent;
|
|
text-shadow: 0 0 0 #000;
|
|
}
|
|
input {
|
|
border-radius: 10px;
|
|
}
|
|
input[type=file] {
|
|
display: none;
|
|
}
|
|
input[name=dot] {
|
|
background: transparent;
|
|
width: 25px;
|
|
text-align: center;
|
|
}
|
|
|
|
input[readonly] {
|
|
color: var(--secondaryForeground);
|
|
}
|
|
|
|
input.copyable {
|
|
padding-right: 35px;
|
|
}
|
|
|
|
input, textarea {
|
|
width: 100%;
|
|
height: 40px;
|
|
padding: 10px;
|
|
border: none;
|
|
outline: none;
|
|
background-color: var(--tertiaryBackground);
|
|
color: var(--primaryForeground);
|
|
}
|
|
|
|
[contenteditable=true] {
|
|
border: none;
|
|
outline: none;
|
|
}
|
|
|
|
.form .input {
|
|
text-align: center;
|
|
}
|
|
|
|
.button {
|
|
width: 100%;
|
|
height: 40px;
|
|
background-color: var(--themeColor);
|
|
line-height: 40px;
|
|
color: var(--primaryForeground);
|
|
border-radius: 10px;
|
|
text-align: center;
|
|
overflow: hidden;
|
|
}
|
|
.disabled {
|
|
opacity: 0.5;
|
|
}
|
|
.disabled:hover {
|
|
cursor: not-allowed !important;
|
|
}
|
|
body.desktop .button:hover {
|
|
cursor: pointer;
|
|
opacity: 0.5;
|
|
}
|
|
|
|
#holder {
|
|
width: 100%;
|
|
height: 100%;
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
#holder[data-type=channels] #users {
|
|
display: flex;
|
|
}
|
|
#holder[data-type=channels] .header .icon.users {
|
|
display: block;
|
|
}
|
|
#holder[data-type=pms] .header .icon.users {
|
|
background-color: var(--secondaryForeground);
|
|
}
|
|
#holder[data-type=pms] .header .icon.users:hover {
|
|
cursor: not-allowed;
|
|
opacity: 1;
|
|
}
|
|
#holder[data-type=pms] #users {
|
|
display: none !important;
|
|
}
|
|
|
|
#holder .input .action[data-action=pay] {
|
|
display: none;
|
|
}
|
|
body.bob #holder[data-type=pms] .input .action[data-action=pay] {
|
|
display: block;
|
|
}
|
|
|
|
.popover[data-name=pay] .loading {
|
|
justify-content: center;
|
|
position: relative;
|
|
}
|
|
.popover[data-name=pay] .content {
|
|
display: none;
|
|
}
|
|
|
|
.popover[data-name=settings] .setting {
|
|
display: flex;
|
|
align-items: center;
|
|
height: 40px;
|
|
}
|
|
|
|
#react.react {
|
|
bottom: auto !important;
|
|
position: fixed;
|
|
}
|
|
|
|
#react, #completions {
|
|
width: calc(100% - 20px);
|
|
bottom: 10px;
|
|
}
|
|
|
|
#completions {
|
|
left: 10px;
|
|
}
|
|
#react {
|
|
right: 10px;
|
|
}
|
|
|
|
#react .grid {
|
|
display: none;
|
|
height: 300px;
|
|
background-color: var(--tertiaryBackground);
|
|
border-radius: 10px;
|
|
overflow-y: scroll;
|
|
padding: 5px;
|
|
}
|
|
#react .grid[data-type=emojis] .subtitle {
|
|
padding-left: 5px;
|
|
padding-top: 5px;
|
|
}
|
|
#react .grid[data-type=emojis] .emojis {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
}
|
|
#react .grid[data-type=emojis] .emojis .emoji {
|
|
font-size: 27px;
|
|
line-height: 40px;
|
|
text-align: center;
|
|
height: 40px;
|
|
width: 40px;
|
|
border-radius: 5px;
|
|
}
|
|
#react .grid[data-type=emojis] .emojis .emoji:hover {
|
|
cursor: pointer;
|
|
background-color: var(--quinaryBackground);
|
|
}
|
|
|
|
#react .section[data-type=categories] {
|
|
display: grid;
|
|
grid-template-columns: calc(50% - 5px) calc(50% - 5px);
|
|
padding: 5px;
|
|
gap: 10px;
|
|
}
|
|
#react .section[data-type=categories].shown {
|
|
display: grid !important;
|
|
}
|
|
#react .section[data-type=categories] .category {
|
|
height: 100px;
|
|
width: 100%;
|
|
border-radius: 5px;
|
|
position: relative;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
overflow: hidden;
|
|
}
|
|
#react .section[data-type=categories] .category:hover {
|
|
opacity: 0.7;
|
|
cursor: pointer;
|
|
}
|
|
#react .section[data-type=categories] .category > * {
|
|
pointer-events: none;
|
|
}
|
|
#react .section[data-type=categories] .category .title {
|
|
position: relative;
|
|
z-index: 1;
|
|
text-align: center;
|
|
text-shadow: 1px 1px #000;
|
|
}
|
|
#react .section[data-type=categories] .category .background {
|
|
height: 100%;
|
|
width: 100%;
|
|
background-size: cover;
|
|
position: absolute;
|
|
filter: brightness(0.7);
|
|
}
|
|
|
|
#react .section[data-type=gifs] {
|
|
display: none;
|
|
height: 100%;
|
|
}
|
|
#react .section[data-type=gifs] .column {
|
|
display: flex;
|
|
flex-direction: column;
|
|
height: 100%;
|
|
width: 50%;
|
|
padding: 5px;
|
|
}
|
|
#react .section[data-type=gifs] .gif {
|
|
width: 100%;
|
|
margin-bottom: 10px;
|
|
border-radius: 5px;
|
|
}
|
|
#react .section[data-type=gifs] .gif:hover {
|
|
opacity: 0.7;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.setting .subtitle {
|
|
width: 50%;
|
|
padding-right: 10px;
|
|
}
|
|
.setting input, .setting select {
|
|
width: 50%;
|
|
text-align: right;
|
|
}
|
|
|
|
.header {
|
|
width: 100%;
|
|
flex-shrink: 0;
|
|
background-color: var(--secondaryBackground);
|
|
border-bottom: 1px solid var(--primaryBorderColor);
|
|
display: flex;
|
|
align-items: center;
|
|
z-index: 9999999;
|
|
}
|
|
.header .left,.header .right {
|
|
width: 40px;
|
|
height: 40px;
|
|
display: none;
|
|
flex-shrink: 0;
|
|
position: relative;
|
|
}
|
|
.header .left > *,.header .right > * {
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
.header .center {
|
|
height: 100%;
|
|
width: 100%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 10px;
|
|
padding-right: 10px;
|
|
}
|
|
.header .end {
|
|
display: flex;
|
|
align-items: center;
|
|
background-color: var(--quaternaryBackground);
|
|
border-radius: 10px;
|
|
}
|
|
.header .avatar {
|
|
display: block;
|
|
margin: 0 5px 0 0;
|
|
}
|
|
.header #me .avatar {
|
|
margin: 0 5px;
|
|
}
|
|
.header .avatar:hover {
|
|
cursor: pointer;
|
|
}
|
|
.header .domain {
|
|
width: 100px;
|
|
height: 100%;
|
|
}
|
|
.header .domains {
|
|
height: 100%;
|
|
background-color: var(--tertiaryBackground);
|
|
border-radius: 10px;
|
|
}
|
|
.header .domains select:hover {
|
|
cursor: pointer;
|
|
}
|
|
#chats {
|
|
width: 100%;
|
|
height: 100%;
|
|
flex-grow: 1;
|
|
display: flex;
|
|
overflow: hidden;
|
|
}
|
|
.sidebar {
|
|
background-color: var(--tertiaryBackground);
|
|
flex-shrink: 0;
|
|
overflow: hidden;
|
|
display: flex;
|
|
flex-direction: column;
|
|
z-index: 9999999;
|
|
}
|
|
#conversations {
|
|
width: 250px;
|
|
border-right: 1px solid var(--primaryBorderColor);
|
|
}
|
|
#conversations .tabs {
|
|
background-color: var(--secondaryBackground);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-evenly;
|
|
flex-shrink: 0;
|
|
flex-grow: 1;
|
|
}
|
|
#conversations .tabs .tab {
|
|
color: var(--secondaryForeground);
|
|
margin-right: 10px;
|
|
position: relative;
|
|
}
|
|
body.desktop #conversations .tabs .tab:not(.active):hover {
|
|
cursor: pointer;
|
|
opacity: 0.5;
|
|
}
|
|
.header .left.notification:after, #conversations .tabs .tab.notification:after {
|
|
content: "";
|
|
position: absolute;
|
|
background-color: var(--notificationColor);
|
|
height: 5px;
|
|
width: 5px;
|
|
border-radius: 50%;
|
|
}
|
|
.header .left.notification:after {
|
|
top: 5px;
|
|
right: 0;
|
|
}
|
|
#conversations .tabs .tab.notification:after {
|
|
top: 0;
|
|
right: -10px;
|
|
}
|
|
#conversations .tabs .tab.active {
|
|
color: var(--primaryForeground);
|
|
}
|
|
#conversations .title .actionHolder {
|
|
margin-left: 10px;
|
|
}
|
|
#conversations .section {
|
|
max-height: 100%;
|
|
display: none;
|
|
}
|
|
#users {
|
|
width: 200px;
|
|
border-left: 1px solid var(--primaryBorderColor);
|
|
display: none;
|
|
}
|
|
#users.showing {
|
|
display: flex;
|
|
}
|
|
#users #count {
|
|
color: var(--secondaryForeground);
|
|
}
|
|
#users .user * {
|
|
pointer-events: none;
|
|
}
|
|
|
|
#users .title .group {
|
|
width: 100%;
|
|
}
|
|
|
|
#users .title .searching {
|
|
display: none;
|
|
align-items: center;
|
|
}
|
|
#users .title .searching div {
|
|
margin-left: 10px;
|
|
}
|
|
|
|
.inputContainer {
|
|
z-index: 9999999;
|
|
}
|
|
|
|
input[name=search] {
|
|
margin: 0;
|
|
padding: 10px;
|
|
height: 25px;
|
|
border-radius: 8px;
|
|
}
|
|
|
|
.sidebar > .title {
|
|
height: 40px;
|
|
background-color: var(--secondaryBackground);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 10px;
|
|
flex-shrink: 0;
|
|
border-bottom: 1px solid var(--primaryBorderColor);
|
|
}
|
|
.sidebar .sections {
|
|
flex-grow: 1;
|
|
overflow: hidden;
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
.sidebar .sections .section:not(:first-of-type) > .title {
|
|
border-top: 1px solid var(--primaryBorderColor);
|
|
}
|
|
.sidebar .sections .section > .title {
|
|
border-bottom: 1px solid var(--primaryBorderColor);
|
|
}
|
|
.sidebar .section > .title {
|
|
height: 25px;
|
|
line-height: 25px;
|
|
padding-left: 10px;
|
|
color: var(--secondaryForeground);
|
|
background-color: var(--secondaryBackground);
|
|
}
|
|
#users .users {
|
|
display: block;
|
|
overflow: hidden;
|
|
height: 100%;
|
|
}
|
|
.sidebar .section table {
|
|
height: 100%;
|
|
overflow-y: scroll;
|
|
overflow-y: overlay;
|
|
display: block;
|
|
}
|
|
#conversations > .footer {
|
|
height: 40px;
|
|
background-color: var(--tertiaryBackground);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-evenly;
|
|
padding: 10px;
|
|
border-top: 1px solid var(--primaryBorderColor);
|
|
flex-shrink: 0;
|
|
}
|
|
.footer .action {
|
|
user-select: none;
|
|
}
|
|
table {
|
|
width: 100%;
|
|
border-collapse: collapse;
|
|
}
|
|
#conversations tr {
|
|
height: 50px;
|
|
}
|
|
#users tr, #completions tr {
|
|
height: 40px;
|
|
}
|
|
.sidebar tr, #completions tr {
|
|
display: flex;
|
|
align-items: center;
|
|
padding: 10px;
|
|
}
|
|
.sidebar tr .title {
|
|
flex-grow: 1;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
width: 88px;
|
|
white-space: nowrap;
|
|
}
|
|
.sidebar tr .title .subtitle {
|
|
font-size: 12px;
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
}
|
|
.sidebar tr .title .subtitle span {
|
|
font-size: inherit;
|
|
}
|
|
#conversations tr.active, #completions tr.active {
|
|
background-color: var(--quinaryBackground);
|
|
}
|
|
.sidebar .section.channels tr.unread .avatar {
|
|
border: 2px solid var(--themeColor);
|
|
}
|
|
.sidebar .section.pms tr.unread .avatar .favicon {
|
|
border: 2px solid var(--notificationColor);
|
|
}
|
|
.sidebar tr.mentions .avatar {
|
|
border: 2px solid var(--notificationColor) !important;
|
|
}
|
|
body.desktop #conversations tr:not(.active):hover, body.desktop #users tr:hover, body.desktop .sidebar tr.selected {
|
|
background-color: var(--quaternaryBackground);
|
|
}
|
|
body.desktop #users tr:hover {
|
|
opacity: 1;
|
|
}
|
|
.sidebar tr:hover, #completions tr:hover {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.avatar .status.active {
|
|
width: 10px;
|
|
height: 10px;
|
|
border-radius: 50%;
|
|
background-color: var(--positiveColor);
|
|
position: absolute;
|
|
top: 0;
|
|
right: 0;
|
|
z-index: 3;
|
|
border: 2px solid var(--tertiaryBackground);
|
|
}
|
|
.contextMenu[data-name=userContext] .avatar .status.active {
|
|
width: 25px;
|
|
height: 25px;
|
|
border: 5px solid var(--quaternaryBackground);
|
|
}
|
|
|
|
.user:hover .avatar .status.active, .user.selected .avatar .status.active {
|
|
border: 2px solid var(--quaternaryBackground);
|
|
}
|
|
|
|
#users .user.inactive {
|
|
opacity: 0.5;
|
|
}
|
|
.avatar {
|
|
width: 30px;
|
|
height: 30px;
|
|
margin-right: 10px;
|
|
position: relative;
|
|
overflow: hidden;
|
|
flex-shrink: 0;
|
|
}
|
|
#conversations .channels tr .avatar {
|
|
border-radius: 50%;
|
|
}
|
|
tr.locked .avatar .locked, tr.locked .avatar .unclaimed {
|
|
z-index: 3;
|
|
width: 100%;
|
|
height: 100%;
|
|
background-color: var(--primaryBackground);
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
top: 0;
|
|
left: 0;
|
|
position: absolute;
|
|
border-radius: 50%;
|
|
}
|
|
.favicon {
|
|
width: 100%;
|
|
height: 100%;
|
|
padding: 5px;
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
z-index: 2;
|
|
border-radius: 50%;
|
|
background-size: cover;
|
|
}
|
|
.favicon[style*=background-image] + .fallback {
|
|
display: none;
|
|
}
|
|
.fallback {
|
|
width: 100%;
|
|
height: 100%;
|
|
background-color: var(--primaryBackground);
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
z-index: 1;
|
|
border-radius: 50%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
.messageRow .avatar .fallback {
|
|
width: 100%;
|
|
height: 100%;
|
|
background-color: var(--secondaryBackground);
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
z-index: 1;
|
|
text-align: center;
|
|
line-height: 30px;
|
|
border-radius: 50%;
|
|
}
|
|
.content {
|
|
width: 100%;
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: flex-end;
|
|
position: relative;
|
|
}
|
|
|
|
.inputHolder {
|
|
min-height: 40px;
|
|
width: 100%;
|
|
flex-grow: 0;
|
|
flex-shrink: 0;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
padding: 8px;
|
|
background-color: var(--tertiaryBackground);
|
|
border-top: 1px solid var(--primaryBorderColor);
|
|
position: relative;
|
|
}
|
|
.inputHolder.locked .input {
|
|
display: none;
|
|
}
|
|
.inputHolder.locked .locked {
|
|
display: initial;
|
|
}
|
|
.input {
|
|
width: 100%;
|
|
height: 100%;
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
.input #signature {
|
|
padding: 0;
|
|
height: 20px;
|
|
border-radius: 0;
|
|
display: none;
|
|
}
|
|
.input .inputs {
|
|
width: 100%;
|
|
height: 100%;
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
}
|
|
.inputs #message {
|
|
width: 100%;
|
|
line-height: 20px;
|
|
min-height: 20px;
|
|
height: 20px;
|
|
resize: none;
|
|
box-sizing: content-box;
|
|
padding: 0;
|
|
background-color: transparent;
|
|
}
|
|
.inputHolder .verify {
|
|
display: none;
|
|
text-align: center;
|
|
}
|
|
.inputHolder .locked {
|
|
display: none;
|
|
text-align: center;
|
|
}
|
|
.inputHolder .noConversations {
|
|
display: none;
|
|
text-align: center;
|
|
}
|
|
#attachments {
|
|
height: 200px;
|
|
width: 100%;
|
|
background: var(--tertiaryBackground);
|
|
display: none;
|
|
}
|
|
#attachments.shown {
|
|
display: flex;
|
|
align-items: center;
|
|
padding: 10px;
|
|
}
|
|
#attachments .attachment {
|
|
height: 100%;
|
|
width: 200px;
|
|
margin: 10px;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
position: relative;
|
|
}
|
|
#attachments .attachment .removeHolder {
|
|
background-color: var(--tertiaryBackground);
|
|
padding: 5px;
|
|
border-radius: 50%;
|
|
position: absolute;
|
|
top: -10px;
|
|
right: 0;
|
|
}
|
|
#attachments .attachment .icon.remove {
|
|
background-color: var(--negativeColor);
|
|
}
|
|
.messageHeader {
|
|
height: 40px;
|
|
flex: 1;
|
|
flex-shrink: 0;
|
|
background-color: var(--secondaryBackground);
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
}
|
|
.messageHeader table {
|
|
width: auto;
|
|
}
|
|
.messageHeader tr .title .subtitle {
|
|
display: none;
|
|
}
|
|
.messageHeader tr {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
.messageHeader tr[data-type=channels] {
|
|
pointer-events: none;
|
|
}
|
|
.content .pinnedMessage {
|
|
display: none !important;
|
|
}
|
|
.pinnedMessage {
|
|
width: 100%;
|
|
flex: 1;
|
|
background-color: var(--secondaryBackground);
|
|
display: none;
|
|
gap: 8px;
|
|
align-items: center;
|
|
padding-left: 10px;
|
|
border-left: 1px solid var(--tertiaryBorderColor);
|
|
}
|
|
.pinnedMessage:hover {
|
|
cursor: pointer;
|
|
}
|
|
.pinnedMessage .pin {
|
|
pointer-events: none;
|
|
height: 13px;
|
|
width: 13px;
|
|
}
|
|
.pinnedMessage .message {
|
|
flex: 1;
|
|
overflow: hidden;
|
|
height: 18px;
|
|
text-overflow: ellipsis;
|
|
width: 0px;
|
|
white-space: nowrap;
|
|
color: var(--secondaryForeground);
|
|
text-align: left;
|
|
line-height: 20px;
|
|
}
|
|
#videoInfo {
|
|
height: 40px;
|
|
border-bottom: 1px solid var(--primaryBorderColor);
|
|
flex-shrink: 0;
|
|
width: 100%;
|
|
background-color: var(--secondaryBackground);
|
|
overflow: hidden;
|
|
display: none;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
padding: 10px;
|
|
gap: 10px;
|
|
}
|
|
#videoInfo .title {
|
|
display: none;
|
|
align-items: center;
|
|
gap: 5px;
|
|
color: var(--negativeColor);
|
|
font-weight: bold;
|
|
}
|
|
#videoInfo .info {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
}
|
|
#videoInfo .users {
|
|
display: flex;
|
|
padding-right: -10px;
|
|
}
|
|
#videoInfo .watching {
|
|
display: none;
|
|
align-items: center;
|
|
margin-left: -5px;
|
|
gap: 5px;
|
|
}
|
|
#videoInfo .watchers {
|
|
display: flex;
|
|
}
|
|
#videoInfo .avatar {
|
|
margin-right: 0;
|
|
}
|
|
#videoInfo .avatar:hover {
|
|
z-index: 10;
|
|
cursor: pointer;
|
|
}
|
|
#videoInfo .avatar:not(:first-child) {
|
|
margin-left: -15px;
|
|
}
|
|
#videoInfo .actions {
|
|
display: flex;
|
|
gap: 10px;
|
|
}
|
|
#videoInfo .actions > * {
|
|
display: none;
|
|
}
|
|
#videoContainer {
|
|
height: 40%;
|
|
border-bottom: 1px solid var(--primaryBorderColor);
|
|
flex-shrink: 0;
|
|
width: 100%;
|
|
background-color: var(--octonaryBackground);
|
|
overflow: hidden;
|
|
display: none;
|
|
padding: 15px;
|
|
flex-direction: column-reverse;
|
|
}
|
|
#videoContainer.publishing {
|
|
padding-top: 55px !important;
|
|
}
|
|
.videoHolder {
|
|
width: 100%;
|
|
height: 100%;
|
|
display: flex;
|
|
}
|
|
.videoHolder .screen {
|
|
flex: 2;
|
|
background-color: var(--primaryBackground);
|
|
margin: 15px;
|
|
border-radius: 10px;
|
|
display: none;
|
|
position: relative;
|
|
overflow: hidden;
|
|
}
|
|
.videoHolder .screen video {
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
.cams {
|
|
overflow: hidden;
|
|
display: flex;
|
|
align-content: center;
|
|
flex-wrap: wrap;
|
|
align-items: center;
|
|
justify-content: center;
|
|
vertical-align: middle;
|
|
flex: 1;
|
|
border-radius: 10px;
|
|
gap: 10px;
|
|
}
|
|
.cam {
|
|
position: relative;
|
|
vertical-align: middle;
|
|
align-self: center;
|
|
border-radius: 10px;
|
|
overflow: hidden;
|
|
display: inline-block;
|
|
max-height: 100%;
|
|
max-width: 100%;
|
|
border: 2px solid var(--octonaryBackground);
|
|
}
|
|
.cam.talking {
|
|
box-shadow: 0 0 0 2px var(--positiveColor);
|
|
}
|
|
.cam .info, .screen .info {
|
|
position: absolute;
|
|
z-index: 1;
|
|
width: 100%;
|
|
height: fit-content;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
padding: 5px;
|
|
}
|
|
.cam .info .icon.voice {
|
|
margin-left: 5px;
|
|
background-color: var(--negativeColor);
|
|
display: none;
|
|
height: 17px;
|
|
pointer-events: none;
|
|
}
|
|
.cam.audioMuted .info .icon.voice {
|
|
display: block;
|
|
}
|
|
.cam .background {
|
|
height: 100%;
|
|
width: 100%;
|
|
position: absolute;
|
|
z-index: 1;
|
|
display: none;
|
|
}
|
|
.cam.videoMuted .background {
|
|
display: unset;
|
|
}
|
|
.cam .background .user {
|
|
height: 100%;
|
|
width: 100%;
|
|
}
|
|
.cam .background .user > .title, .cam .background .user:after, .cam .background .user .avatar .status {
|
|
display: none;
|
|
}
|
|
.cam .background .user .avatar {
|
|
width: 100%;
|
|
height: 100%;
|
|
margin: 0;
|
|
}
|
|
.cam .background .user .avatar .fallback {
|
|
font-size: 60px;
|
|
border-radius: 0;
|
|
}
|
|
.cam .background .user .avatar .favicon {
|
|
border-radius: 0;
|
|
}
|
|
.cam video {
|
|
position: absolute;
|
|
right: 0;
|
|
object-fit: cover;
|
|
bottom: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
background: #000;
|
|
border-radius: 10px;
|
|
overflow: hidden;
|
|
left: 0;
|
|
top: 0;
|
|
background-size: cover;
|
|
overflow: hidden;
|
|
-webkit-transition: margin-top 1s ease-in-out;
|
|
-moz-transition: margin-top 1s ease-in-out;
|
|
-o-transition: margin-top 1s ease-in-out;
|
|
transition: margin-top 1s ease-in-out;
|
|
}
|
|
.cam table, .screen table {
|
|
position: relative;
|
|
display: block;
|
|
padding: 5px 10px;
|
|
background-color: var(--senaryBackground);
|
|
width: fit-content;
|
|
border-radius: 10px;
|
|
z-index: 1;
|
|
}
|
|
.cam tr, .screen tr {
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
.cam table .user .avatar, .screen table .user .avatar {
|
|
margin-right: 5px;
|
|
}
|
|
.cam table .user:hover, .screen table .user:hover {
|
|
cursor: pointer;
|
|
}
|
|
#videoContainer.publishing .controls {
|
|
display: flex;
|
|
}
|
|
.controls {
|
|
height: 40px;
|
|
width: 100%;
|
|
display: none;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 10px;
|
|
}
|
|
.controls .button {
|
|
width: fit-content;
|
|
padding: 10px;
|
|
}
|
|
.controls .button > * {
|
|
pointer-events: none;
|
|
}
|
|
.controls .button.muted {
|
|
border-color: var(--negativeColor);
|
|
}
|
|
|
|
.button.outline {
|
|
background-color: transparent;
|
|
border: 2px solid var(--themeColor);
|
|
box-sizing: border-box;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
#messageHolder {
|
|
height: 100%;
|
|
width: 100%;
|
|
display: flex;
|
|
flex-direction: column-reverse;
|
|
overflow-x: hidden;
|
|
overflow-y: scroll;
|
|
position: relative;
|
|
align-items: center;
|
|
}
|
|
#messages.empty {
|
|
height: 100%;
|
|
width: 100%;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
#messages.empty:after {
|
|
color: var(--secondaryForeground);
|
|
content: "There are no messages. You can be the first!";
|
|
padding: 10px;
|
|
}
|
|
#chats .content .needSLD {
|
|
text-align: center;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
width: 100%;
|
|
height: 100%;
|
|
flex-direction: column;
|
|
padding: 20px;
|
|
position: absolute;
|
|
}
|
|
#chats .content .needSLD > * {
|
|
max-width: 350px;
|
|
}
|
|
#chats .content .needSLD > *:not(:last-child) {
|
|
margin-bottom: 10px;
|
|
}
|
|
#messageHolder.noScroll {
|
|
position: static;
|
|
}
|
|
#messages {
|
|
display: flex;
|
|
flex-direction: column;
|
|
padding: 0px 5px;
|
|
width: 100%;
|
|
}
|
|
.messageRow {
|
|
width: 100%;
|
|
position: relative;
|
|
padding: 0px 5px;
|
|
transition: background-color 250ms;
|
|
z-index: 9999999;
|
|
}
|
|
.messageRow.highlighted {
|
|
background-color: var(--octonaryBackground);
|
|
}
|
|
.messageRow.notice {
|
|
background-color: var(--quaternaryBackground);
|
|
}
|
|
.popover[data-name=messageContext].shown ~ #holder #messages .messageRow, #holder.replying .messageRow, #holder.reacting .messageRow {
|
|
opacity: 0.3;
|
|
}
|
|
.popover[data-name=messageContext].shown ~ #holder #messages .messageRow:is(.selecting,.selected), #holder.replying .messageRow.selected, #holder.reacting .messageRow.selected {
|
|
opacity: 1;
|
|
}
|
|
|
|
.messageRow:not(.first) > .contents .main .user, .messageRow:not(.first) > .contents .main .avatar {
|
|
display: none;
|
|
}
|
|
|
|
.messageRow.first {
|
|
padding-top: 5px;
|
|
}
|
|
.messageRow.last {
|
|
padding-bottom: 5px;
|
|
}
|
|
.messageRow .holder {
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
#holder .messageRow:hover > .contents .hover > *, .messageRow:is(.selecting,.selected) > .contents .hover > * {
|
|
display: flex;
|
|
justify-content: space-evenly;
|
|
}
|
|
body:not(.desktop) .messageRow:hover > .contents .hover .actions .action.delete {
|
|
display: none;
|
|
}
|
|
.messageRow.self .holder {
|
|
justify-content: flex-end;
|
|
}
|
|
.messageRow:not(.self) .holder {
|
|
justify-content: flex-start;
|
|
}
|
|
.messageRow .actions {
|
|
width: 55px;
|
|
justify-content: space-evenly !important;
|
|
}
|
|
.messageRow .actions .action {
|
|
margin: 0;
|
|
}
|
|
.messageRow .hover {
|
|
width: 32%;
|
|
flex-shrink: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
}
|
|
.messageRow .hover > * {
|
|
display: none;
|
|
}
|
|
.messageRow:not(.self) .hover > div {
|
|
margin-left: 5px;
|
|
}
|
|
.messageRow.self .hover > div {
|
|
margin-right: 5px;
|
|
}
|
|
.messageRow .time {
|
|
line-height: 12px;
|
|
font-size: 12px;
|
|
color: var(--secondaryForeground);
|
|
width: 55px;
|
|
text-align: center;
|
|
}
|
|
.messageRow.self .hover {
|
|
align-items: flex-end;
|
|
}
|
|
#messages .messageRow .message {
|
|
padding: 10px;
|
|
overflow: hidden;
|
|
max-width: 500px;
|
|
}
|
|
#messages .messageRow .preview {
|
|
background: var(--secondaryBackground);
|
|
position: relative;
|
|
width: 100%;
|
|
}
|
|
#messages .messageRow .preview > * {
|
|
line-height: 15px;
|
|
}
|
|
#messages .messageRow .preview .media {
|
|
width: 100%;
|
|
position: relative;
|
|
object-fit: contain;
|
|
}
|
|
#messages .messageRow .preview .media > * {
|
|
display: block;
|
|
}
|
|
#messages .messageRow .previewImage .media {
|
|
margin-bottom: -12px;
|
|
}
|
|
|
|
#messages .messageRow .preview .media img {
|
|
height: 100%;
|
|
width: 100%;
|
|
}
|
|
|
|
#messages .messageRow .preview .media iframe, #messages .messageRow .preview .media video {
|
|
height: 280px;
|
|
width: 100%;
|
|
}
|
|
|
|
#messages .messageRow:not(.first):not(.last), #messages .messageRow.first:not(.last) {
|
|
margin: 0 0 2px 0;
|
|
}
|
|
|
|
#messages > div, .messageFooter > div {
|
|
margin: 0 0 10px 0;
|
|
}
|
|
#messages > div:first-child {
|
|
margin: 10px 0;
|
|
}
|
|
|
|
#messages .informational {
|
|
text-align: center;
|
|
color: var(--secondaryForeground);
|
|
padding: 5px;
|
|
}
|
|
.messageRow.informational .inline.nick, .messageRow.informational .inline.channel {
|
|
color: var(--secondaryForeground);
|
|
}
|
|
.messageRow:not(.informational) {
|
|
position: relative;
|
|
}
|
|
.messageRow:not(.emojis):not(.action):not(.notice):not([data-style=fancy]):not(.mention) .message {
|
|
background-color: var(--bubbleBackground);
|
|
}
|
|
.messageRow.self:not(.emojis):not(.action):not(.notice):not([data-style=fancy]):not(.mention) .message {
|
|
background-color: var(--bubbleSelfBackground);
|
|
}
|
|
.messageRow.action .body, .messageRow.action .body *, .messageRow.replying .reply .body.action {
|
|
font-style: italic;
|
|
}
|
|
.messageRow.action .body, .messageRow.action .body * {
|
|
color: var(--secondaryForeground);
|
|
}
|
|
.messageRow.emojis .body, .messageRow[data-style=fancy] .body {
|
|
font-size: 50px;
|
|
line-height: 50px;
|
|
}
|
|
.messageRow.dice .body {
|
|
background: linear-gradient(7deg, grey 25%, lightgrey 50%, grey, lightgrey);
|
|
-webkit-text-fill-color: transparent;
|
|
-webkit-background-clip: text;
|
|
text-shadow: 0px 1px 1px rgb(0 0 0 / 13%), 1px 2px 2px rgb(0 0 0 / 13%), 2px 4px 4px rgb(0 0 0 / 13%), 4px 8px 8px rgb(0 0 0 / 13%), 8px 16px 16px rgb(0 0 0 / 13%);
|
|
}
|
|
.messageRow[data-style=fancy] .body {
|
|
background: linear-gradient(7deg, grey 25%, lightgrey 50%, grey, lightgrey);
|
|
-webkit-text-fill-color: transparent;
|
|
-webkit-background-clip: text;
|
|
text-shadow: 0px 1px 1px rgb(0 0 0 / 13%), 1px 2px 2px rgb(0 0 0 / 13%), 2px 4px 4px rgb(0 0 0 / 13%), 4px 8px 8px rgb(0 0 0 / 13%), 8px 16px 16px rgb(0 0 0 / 13%);
|
|
}
|
|
.messageRow.action:not(.self):not(.mention) .message {
|
|
padding-left: 0 !important;
|
|
padding-right: 0 !important;
|
|
}
|
|
.messageRow.action.self .message {
|
|
padding-left: 0 !important;
|
|
padding-right: 0 !important;
|
|
}
|
|
.messageRow.emojis.replying .reply .contents, .messageRow[data-style=fancy].replying .reply .contents {
|
|
top: -19px;
|
|
position: relative;
|
|
}
|
|
.messageRow .message {
|
|
word-break: break-word;
|
|
}
|
|
.messageRow.self {
|
|
align-self: flex-end;
|
|
text-align: right;
|
|
}
|
|
.messageRow.self .message {
|
|
border-top-left-radius: 10px;
|
|
border-bottom-left-radius: 10px;
|
|
}
|
|
.messageRow.self .message .body a {
|
|
color: var(--primaryForeground);
|
|
text-decoration: underline;
|
|
}
|
|
.messageRow.mention .message .body a {
|
|
color: var(--primaryForeground);
|
|
text-decoration: underline;
|
|
}
|
|
.messageRow .message:not(.image) .body {
|
|
white-space: pre-line;
|
|
min-height: 17px;
|
|
min-width: 8px;
|
|
}
|
|
.messageRow:not(.self) .message {
|
|
border-top-right-radius: 10px;
|
|
border-bottom-right-radius: 10px;
|
|
}
|
|
.messageRow.self.first .message {
|
|
border-top-right-radius: 10px;
|
|
}
|
|
.messageRow:not(.self).first .message {
|
|
border-top-left-radius: 10px;
|
|
}
|
|
.messageRow.self.last .message {
|
|
border-bottom-right-radius: 10px;
|
|
}
|
|
.messageRow:not(.self).last .message {
|
|
border-bottom-left-radius: 10px;
|
|
}
|
|
.messageRow.mention:not(.self) .message {
|
|
background-color: var(--bubbleMentionBackground);
|
|
}
|
|
.messageRow.mention:not(.self) .message .body, .messageRow.mention:not(.self) .message .body * {
|
|
color: var(--primaryForeground) !important;
|
|
}
|
|
.message.signed:hover {
|
|
cursor: pointer;
|
|
}
|
|
.messageRow.first .contents {
|
|
padding-top: 15px;
|
|
}
|
|
.messageRow .user {
|
|
color: var(--secondaryForeground);
|
|
white-space: nowrap;
|
|
}
|
|
.messageRow:not(.informational) > .contents .user {
|
|
position: absolute;
|
|
top: 0;
|
|
font-size: 12px;
|
|
line-height: 12px;
|
|
}
|
|
.messageRow:not(.informational):not(.self) > .contents .user {
|
|
margin-left: 50px;
|
|
}
|
|
.messageRow:not(.informational).self > .contents .user {
|
|
margin-right: 50px;
|
|
}
|
|
.messageRow > .contents {
|
|
position: relative;
|
|
align-self: normal;
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
.messageRow.replying {
|
|
padding-top: 20px !important;
|
|
}
|
|
.messageRow.self.replying {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: flex-end;
|
|
}
|
|
.messageRow.self > .reply .contents {
|
|
justify-content: flex-end;
|
|
}
|
|
.messageRow > .reply .contents {
|
|
display: flex;
|
|
width: 100%;
|
|
align-items: center;
|
|
line-height: 1.2em;
|
|
}
|
|
.messageRow > .reply .user {
|
|
padding-right: 5px;
|
|
font-size: 12px;
|
|
}
|
|
.messageRow > .reply {
|
|
display: flex;
|
|
width: 60%;
|
|
max-width: 550px;
|
|
position: absolute;
|
|
top: -12px;
|
|
}
|
|
.messageRow.self > .reply {
|
|
padding-right: 50px;
|
|
}
|
|
.messageRow:not(.self) > .reply {
|
|
padding-left: 50px;
|
|
}
|
|
.messageRow > .reply .body {
|
|
color: var(--secondaryForeground);
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
font-size: 12px;
|
|
}
|
|
.messageRow > .reply .body > * {
|
|
pointer-events: none;
|
|
}
|
|
.messageRow > .reply .body:hover {
|
|
opacity: 0.5;
|
|
cursor: pointer;
|
|
}
|
|
.messageRow.self > .reply {
|
|
justify-content: flex-end;
|
|
}
|
|
.messageRow > .reply .line {
|
|
position: absolute;
|
|
width: 30px;
|
|
height: 20px;
|
|
top: 23px;
|
|
border: 3px solid var(--quinaryBackground);
|
|
border-bottom-style: none;
|
|
}
|
|
.messageRow:not(.self) > .reply .line {
|
|
left: 16px;
|
|
border-right-style: none;
|
|
border-top-left-radius: 10px;
|
|
}
|
|
.messageRow.self > .reply .line {
|
|
right: 16px;
|
|
border-left-style: none;
|
|
border-top-right-radius: 10px;
|
|
}
|
|
.messageRow .reply .body .inline {
|
|
font-weight: inherit;
|
|
font-size: inherit;
|
|
color: inherit;
|
|
display: inline;
|
|
}
|
|
.messageRow.informational .user {
|
|
display: inline-block;
|
|
color: var(--secondaryForeground);
|
|
}
|
|
.messageRow .linkHolder:not(:empty) {
|
|
max-width: 400px;
|
|
margin: 2px 0 0 50px;
|
|
border-radius: 10px;
|
|
overflow: hidden;
|
|
background-color: var(--bubbleBackground);
|
|
}
|
|
.messageRow.self .linkHolder:not(:empty) {
|
|
align-self: flex-end;
|
|
margin: 2px 50px 0 0;
|
|
}
|
|
|
|
.messageRow .linkHolder .info {
|
|
padding: 10px;
|
|
}
|
|
|
|
.messageRow .linkHolder .title, .messageRow .linkHolder .subtitle {
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
-webkit-box-orient: vertical;
|
|
display: -webkit-box;
|
|
}
|
|
.messageRow .linkHolder .title {
|
|
-webkit-line-clamp: 2;
|
|
max-height: 34px;
|
|
line-height: 17px;
|
|
}
|
|
.messageRow .linkHolder .subtitle {
|
|
-webkit-line-clamp: 3;
|
|
max-height: 60px;
|
|
}
|
|
body.desktop .messageRow .user:hover {
|
|
cursor: pointer;
|
|
opacity: 0.5;
|
|
}
|
|
.messageRow.self .user {
|
|
right: 0;
|
|
}
|
|
.messageRow .avatar {
|
|
position: absolute;
|
|
height: 38px;
|
|
width: 38px;
|
|
}
|
|
.messageRow.self .avatar {
|
|
right: 0;
|
|
margin: 0;
|
|
}
|
|
.messageRow:not(.self) .holder, .messageRow:not(.self) .messageEffect {
|
|
margin-left: 50px;
|
|
}
|
|
.messageRow.self .holder, .messageRow.self .messageEffect {
|
|
margin-right: 50px;
|
|
align-self: flex-end;
|
|
}
|
|
.messageEffect {
|
|
width: fit-content;
|
|
color: var(--themeColor);
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 3px;
|
|
padding: 2px 0;
|
|
}
|
|
.messageEffect .icon {
|
|
background-color: var(--themeColor);
|
|
pointer-events: none;
|
|
height: 15px;
|
|
width: 15px;
|
|
}
|
|
|
|
.messageRow .favicon:hover {
|
|
cursor: pointer;
|
|
}
|
|
.messageRow .reactions {
|
|
display: flex;
|
|
padding: 0px 0px 3px 0px;
|
|
flex-wrap: wrap;
|
|
}
|
|
.messageRow .reactions:empty {
|
|
display: none;
|
|
}
|
|
|
|
.messageRow.self .reactions {
|
|
justify-content: flex-end;
|
|
}
|
|
|
|
.messageRow .reactions .reaction {
|
|
margin-top: 5px;
|
|
padding: 5px;
|
|
width: 44px;
|
|
height: 30px;
|
|
font-size: 20px;
|
|
background-color: var(--senaryBackground);
|
|
border-radius: 10px;
|
|
display: flex;
|
|
justify-content: space-around;
|
|
box-sizing: border-box;
|
|
align-items: center;
|
|
}
|
|
.messageRow .reactions .reaction:hover {
|
|
cursor: pointer;
|
|
background-color: var(--quinaryBackground) !important;
|
|
}
|
|
|
|
.messageRow:not(.self) .reactions .reaction {
|
|
margin-right: 5px;
|
|
}
|
|
.messageRow.self .reactions .reaction {
|
|
margin-left: 5px;
|
|
}
|
|
|
|
.messageRow:not(.self) .reactions .reaction:first-child {
|
|
margin-left: 0;
|
|
}
|
|
.messageRow.self .reactions .reaction:last-child {
|
|
margin-right: 0;
|
|
}
|
|
.messageRow .reactions .reaction.self {
|
|
border: 1px solid var(--bubbleSelfBackground);
|
|
}
|
|
|
|
|
|
.message.self.signed:before {
|
|
content: "";
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -10px;
|
|
left: -25px;
|
|
height: 20px;
|
|
width: 20px;
|
|
-webkit-mask-image: var(--checkIcon);
|
|
-moz-mask-image: var(--checkIcon);
|
|
mask-image: var(--checkIcon);
|
|
background-color: var(--positiveColor);
|
|
}
|
|
.message:not(.self).signed:after {
|
|
content: "";
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -10px;
|
|
right: -25px;
|
|
height: 20px;
|
|
width: 20px;
|
|
-webkit-mask-image: var(--checkIcon);
|
|
-moz-mask-image: var(--checkIcon);
|
|
mask-image: var(--checkIcon);
|
|
background-color: var(--positiveColor);
|
|
}
|
|
.message.self.signed.fail:before,.message:not(.self).signed.fail:after {
|
|
-webkit-mask-image: var(--failIcon);
|
|
-moz-mask-image: var(--failIcon);
|
|
mask-image: var(--failIcon);
|
|
background-color: var(--negativeColor);
|
|
}
|
|
.message .signature {
|
|
padding-top: 10px;
|
|
opacity: 0.7;
|
|
display: none;
|
|
cursor: text;
|
|
}
|
|
.message.typing {
|
|
width: 42px;
|
|
}
|
|
.message.image {
|
|
padding: 0 !important;
|
|
overflow: hidden;
|
|
display: table;
|
|
}
|
|
.message.image:not(.payment) {
|
|
background-color: transparent !important;
|
|
}
|
|
.message.payment .body {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
.message.payment .txMessage {
|
|
padding: 10px;
|
|
background-color: var(--bubbleBackground);
|
|
}
|
|
.messageRow.self .message.payment .txMessage {
|
|
background-color: var(--bubbleSelfBackground);
|
|
}
|
|
.message.payment .imageHolder {
|
|
display: flex;
|
|
flex-direction: column;
|
|
background-color: var(--secondaryBackground);
|
|
}
|
|
.message.payment .imageHolder img {
|
|
margin-bottom: -20px;
|
|
}
|
|
.message.payment {
|
|
padding-bottom: 50px;
|
|
background: var(--secondaryBackground);
|
|
}
|
|
.message.payment .amount {
|
|
font-size: 50px;
|
|
color: var(--positiveColor);
|
|
text-align: center;
|
|
padding-bottom: 20px;
|
|
}
|
|
.message.payment a {
|
|
text-decoration: none !important;
|
|
opacity: 1 !important;
|
|
}
|
|
.message.image img {
|
|
object-fit: contain;
|
|
display: block;
|
|
max-width: 100%;
|
|
max-height: 300px;
|
|
}
|
|
.typingCell {
|
|
height: 20px;
|
|
width: 50px;
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
flex-grow: 0;
|
|
flex-shrink: 0;
|
|
display: none;
|
|
}
|
|
.messageFooter {
|
|
display: none;
|
|
padding: 0px 5px;
|
|
}
|
|
|
|
#replying {
|
|
background-color: var(--tertiaryBackground);
|
|
}
|
|
#typing {
|
|
background-color: var(--secondaryBackground);
|
|
}
|
|
|
|
#replying, #typing {
|
|
border-top: 1px solid var(--primaryBorderColor);
|
|
padding: 5px;
|
|
display: none;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
}
|
|
#replying .message, #typing .message {
|
|
color: var(--secondaryForeground);
|
|
font-size: 12px;
|
|
}
|
|
#replying .message span, #typing .message span {
|
|
font-size: inherit;
|
|
}
|
|
#replying .action.remove {
|
|
background-color: var(--secondaryForeground);
|
|
}
|
|
|
|
#completions .body .list {
|
|
background-color: var(--tertiaryBackground);
|
|
border-radius: 10px;
|
|
padding: 5px;
|
|
overflow: hidden;
|
|
}
|
|
|
|
#completions .body .list .title {
|
|
font-weight: initial;
|
|
font-size: initial;
|
|
}
|
|
|
|
.lds-ellipsis {
|
|
display: inline-block;
|
|
position: relative;
|
|
transform: scale(0.3);
|
|
display: flex;
|
|
align-items: center;
|
|
height: 18px;
|
|
left: -7px;
|
|
}
|
|
.lds-ellipsis div {
|
|
position: absolute;
|
|
width: 13px;
|
|
height: 13px;
|
|
border-radius: 50%;
|
|
background: #fff;
|
|
animation-timing-function: cubic-bezier(0, 1, 1, 0);
|
|
}
|
|
.lds-ellipsis div:nth-child(1) {
|
|
left: 8px;
|
|
animation: lds-ellipsis1 0.6s infinite;
|
|
}
|
|
.lds-ellipsis div:nth-child(2) {
|
|
left: 8px;
|
|
animation: lds-ellipsis2 0.6s infinite;
|
|
}
|
|
.lds-ellipsis div:nth-child(3) {
|
|
left: 32px;
|
|
animation: lds-ellipsis2 0.6s infinite;
|
|
}
|
|
.lds-ellipsis div:nth-child(4) {
|
|
left: 56px;
|
|
animation: lds-ellipsis3 0.6s infinite;
|
|
}
|
|
@keyframes lds-ellipsis1 {
|
|
0% {
|
|
transform: scale(0);
|
|
}
|
|
100% {
|
|
transform: scale(1);
|
|
}
|
|
}
|
|
@keyframes lds-ellipsis3 {
|
|
0% {
|
|
transform: scale(1);
|
|
}
|
|
100% {
|
|
transform: scale(0);
|
|
}
|
|
}
|
|
@keyframes lds-ellipsis2 {
|
|
0% {
|
|
transform: translate(0, 0);
|
|
}
|
|
100% {
|
|
transform: translate(24px, 0);
|
|
}
|
|
}
|
|
|
|
.lds-facebook {
|
|
display: inline-block;
|
|
position: relative;
|
|
width: 80px;
|
|
height: 80px;
|
|
}
|
|
.lds-facebook div {
|
|
display: inline-block;
|
|
position: absolute;
|
|
left: 8px;
|
|
width: 16px;
|
|
background: #fff;
|
|
animation: lds-facebook 1.2s cubic-bezier(0, 0.5, 0.5, 1) infinite;
|
|
}
|
|
.lds-facebook div:nth-child(1) {
|
|
left: 8px;
|
|
animation-delay: -0.24s;
|
|
}
|
|
.lds-facebook div:nth-child(2) {
|
|
left: 32px;
|
|
animation-delay: -0.12s;
|
|
}
|
|
.lds-facebook div:nth-child(3) {
|
|
left: 56px;
|
|
animation-delay: 0;
|
|
}
|
|
@keyframes lds-facebook {
|
|
0% {
|
|
top: 8px;
|
|
height: 64px;
|
|
}
|
|
50%, 100% {
|
|
top: 24px;
|
|
height: 32px;
|
|
}
|
|
}
|
|
|
|
.lds-spinner {
|
|
color: official;
|
|
display: inline-block;
|
|
position: relative;
|
|
width: 80px;
|
|
height: 80px;
|
|
}
|
|
.lds-spinner div {
|
|
transform-origin: 40px 40px;
|
|
animation: lds-spinner 1.2s linear infinite;
|
|
}
|
|
.lds-spinner div:after {
|
|
content: " ";
|
|
display: block;
|
|
position: absolute;
|
|
top: 3px;
|
|
left: 37px;
|
|
width: 6px;
|
|
height: 18px;
|
|
border-radius: 20%;
|
|
background: #fff;
|
|
}
|
|
.lds-spinner div:nth-child(1) {
|
|
transform: rotate(0deg);
|
|
animation-delay: -1.1s;
|
|
}
|
|
.lds-spinner div:nth-child(2) {
|
|
transform: rotate(30deg);
|
|
animation-delay: -1s;
|
|
}
|
|
.lds-spinner div:nth-child(3) {
|
|
transform: rotate(60deg);
|
|
animation-delay: -0.9s;
|
|
}
|
|
.lds-spinner div:nth-child(4) {
|
|
transform: rotate(90deg);
|
|
animation-delay: -0.8s;
|
|
}
|
|
.lds-spinner div:nth-child(5) {
|
|
transform: rotate(120deg);
|
|
animation-delay: -0.7s;
|
|
}
|
|
.lds-spinner div:nth-child(6) {
|
|
transform: rotate(150deg);
|
|
animation-delay: -0.6s;
|
|
}
|
|
.lds-spinner div:nth-child(7) {
|
|
transform: rotate(180deg);
|
|
animation-delay: -0.5s;
|
|
}
|
|
.lds-spinner div:nth-child(8) {
|
|
transform: rotate(210deg);
|
|
animation-delay: -0.4s;
|
|
}
|
|
.lds-spinner div:nth-child(9) {
|
|
transform: rotate(240deg);
|
|
animation-delay: -0.3s;
|
|
}
|
|
.lds-spinner div:nth-child(10) {
|
|
transform: rotate(270deg);
|
|
animation-delay: -0.2s;
|
|
}
|
|
.lds-spinner div:nth-child(11) {
|
|
transform: rotate(300deg);
|
|
animation-delay: -0.1s;
|
|
}
|
|
.lds-spinner div:nth-child(12) {
|
|
transform: rotate(330deg);
|
|
animation-delay: 0s;
|
|
}
|
|
@keyframes lds-spinner {
|
|
0% {
|
|
opacity: 1;
|
|
}
|
|
100% {
|
|
opacity: 0;
|
|
}
|
|
}
|
|
|
|
#avatars {
|
|
width: 100%;
|
|
height: 100%;
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
z-index: -1;
|
|
opacity: 0;
|
|
}
|
|
|
|
body.compact .messageRow {
|
|
margin: 0 0 5px 0 !important;
|
|
margin-bottom: 5px !important;
|
|
padding: 2px !important;
|
|
display: inline-grid;
|
|
}
|
|
body.compact .messageRow .holder {
|
|
margin: 0 !important;
|
|
}
|
|
body.compact .messageRow .holder {
|
|
justify-content: flex-start !important;
|
|
}
|
|
body.compact .messageRow > .contents .user {
|
|
margin: 0 !important;
|
|
right: unset !important;
|
|
height: fit-content !important;
|
|
}
|
|
body.compact .messageRow.first .contents {
|
|
padding: 0 !important;
|
|
}
|
|
body.compact .messageRow .main {
|
|
line-height: 15px;
|
|
padding: 2px;
|
|
}
|
|
body.compact .messageRow > .contents {
|
|
display: flex !important;
|
|
flex-direction: column;
|
|
}
|
|
body.compact .messageRow .message {
|
|
max-width: unset !important;
|
|
padding: 0 !important;
|
|
background-color: transparent !important;
|
|
height: 100%;
|
|
}
|
|
body.compact .messageRow .hover {
|
|
width: auto;
|
|
}
|
|
body.compact .messageRow .hover > .time {
|
|
display: block !important;
|
|
position: absolute;
|
|
left: 0;
|
|
width: 55px;
|
|
margin: 0;
|
|
top: 4px;
|
|
line-height: unset;
|
|
text-align: right;
|
|
}
|
|
body.compact .messageRow .hover > .actions {
|
|
display: none !important;
|
|
}
|
|
body.compact .messageRow .message {
|
|
border-radius: unset !important;
|
|
}
|
|
body.compact .messageRow .user {
|
|
display: block !important;
|
|
}
|
|
body.compact .messageRow > .contents .user {
|
|
position: relative;
|
|
font-size: inherit;
|
|
line-height: unset;
|
|
margin: 0 5px !important;
|
|
font-weight: bold;
|
|
}
|
|
body.compact .messageRow .avatar {
|
|
height: 17px;
|
|
width: 17px;
|
|
display: block !important;
|
|
right: unset;
|
|
margin: 0 0 0 65px;
|
|
position: relative;
|
|
}
|
|
body.compact .messageRow .avatar .fallback {
|
|
font-size: 10px;
|
|
line-height: 20px;
|
|
}
|
|
body.compact .messageRow .linkHolder {
|
|
padding: 0;
|
|
}
|
|
body.compact .messageRow .linkHolder:not(:empty) {
|
|
align-self: flex-start;
|
|
margin: 2px 0 0 75px;
|
|
}
|
|
body.compact .messageRow .preview {
|
|
margin: 0 !important;
|
|
width: 100% !important;
|
|
}
|
|
body.compact .messageRow .preview .media {
|
|
overflow: hidden;
|
|
}
|
|
body.compact .messageRow .message.image img {
|
|
border-radius: 10px;
|
|
}
|
|
body.compact .messageRow > .contents .user {
|
|
color: var(--primaryForeground);
|
|
}
|
|
body.compact .messageRow .message .body {
|
|
color: var(--tertiaryForeground);
|
|
height: 100%;
|
|
}
|
|
body.compact .messageRow.emojis .body, body.compact .messageRow[data-style=fancy] .body {
|
|
font-size: inherit;
|
|
line-height: inherit;
|
|
}
|
|
body.compact .messageRow.replying {
|
|
align-items: flex-start;
|
|
}
|
|
body.compact .messageRow > .reply {
|
|
top: 0;
|
|
left: 0;
|
|
padding: 0;
|
|
justify-content: flex-start !important;
|
|
position: relative;
|
|
width: 100%;
|
|
max-width: unset;
|
|
overflow: hidden;
|
|
}
|
|
body.compact .messageRow > .reply .line {
|
|
height: 12px;
|
|
width: 40px;
|
|
margin: 5px 0 -3px 30px;
|
|
border-left-style: solid;
|
|
border-right-style: none;
|
|
border-top-left-radius: 5px;
|
|
border-top-right-radius: 0;
|
|
position: unset;
|
|
flex-shrink: 0;
|
|
}
|
|
body.compact .messageRow > .reply .contents {
|
|
justify-content: flex-start;
|
|
margin-left: 5px;
|
|
overflow: hidden;
|
|
display: grid;
|
|
grid-auto-flow: column;
|
|
line-height: 1.2em;
|
|
margin-top: -2px;
|
|
}
|
|
body.compact .messageRow.mention {
|
|
background-color: var(--quaternaryBackground);
|
|
}
|
|
body.compact .messageRow .main {
|
|
display: flex;
|
|
}
|
|
body.compact .messageRow .react {
|
|
margin-left: 75px !important;
|
|
align-self: flex-start;
|
|
}
|
|
body.compact .messageRow .reactions .reaction {
|
|
margin-left: 0 !important;
|
|
margin-right: 5px;
|
|
}
|
|
|
|
body.compact .messageRow .messageEffect {
|
|
margin-left: 75px !important;
|
|
align-self: flex-start;
|
|
}
|
|
|
|
|
|
#react .tabs {
|
|
display: flex;
|
|
font-size: inherit;
|
|
}
|
|
#react .tabs .tab {
|
|
margin: 0 10px 0 0;
|
|
color: var(--secondaryForeground);
|
|
font-size: inherit;
|
|
}
|
|
#react .tabs .tab:not(.active):hover {
|
|
opacity: 0.5;
|
|
cursor: pointer;
|
|
}
|
|
#react .tabs .tab.active {
|
|
color: var(--primaryForeground);
|
|
}
|
|
#react .search input {
|
|
display: none;
|
|
}
|
|
|
|
.messageRow .message.payment .txMessage:after {
|
|
content: "You received a payment. Click for transaction details.";
|
|
}
|
|
.messageRow.self .message.payment .txMessage:after {
|
|
content: "You sent a payment. Click for transaction details.";
|
|
}
|
|
|
|
#users .users .user .title:after,
|
|
#conversations .section.pms tr .title:after,
|
|
.messageRow .user:after,
|
|
#replying .name:after,
|
|
#chats .messageHeader tr[data-type=pms] .title:after,
|
|
#completions .list tr.user .title:after,
|
|
#typing .message span:after,
|
|
.popover[data-name=userContext] .user:after,
|
|
.cam .user .title:after {
|
|
content: "/";
|
|
font-size: inherit;
|
|
}
|
|
|
|
.popover[data-name=userContext] .user {
|
|
word-break: break-all;
|
|
}
|
|
|
|
#messageContainer {
|
|
height: 100%;
|
|
width: 100%;
|
|
position: relative;
|
|
}
|
|
|
|
#jumpToPresent {
|
|
position: absolute;
|
|
width: 100%;
|
|
height: 100%;
|
|
display: flex;
|
|
align-items: flex-end;
|
|
justify-content: flex-end;
|
|
z-index: 9999999;
|
|
}
|
|
#jumpToPresent > div {
|
|
padding: 5px;
|
|
background-color: var(--septenaryBackground);
|
|
opacity: 0.9;
|
|
position: fixed;
|
|
border-radius: 5px 5px 0 0;
|
|
z-index: 3;
|
|
float: right;
|
|
}
|
|
#jumpToPresent > div:hover {
|
|
cursor: pointer;
|
|
opacity: 1;
|
|
}
|
|
|
|
#confetti-canvas {
|
|
position: absolute;
|
|
height: 100%;
|
|
top: 0;
|
|
left: 0;
|
|
}
|
|
|
|
.popover .body {
|
|
position: relative;
|
|
}
|
|
|
|
.popover[data-name=qr] .body {
|
|
min-height: 60px;
|
|
position: relative;
|
|
}
|
|
|
|
#camera {
|
|
height: 350px;
|
|
width: 100%;
|
|
object-fit: cover;
|
|
pointer-events: none;
|
|
}
|
|
#frame {
|
|
display: none;
|
|
}
|
|
|
|
@media all and (max-width: 1000px) {
|
|
html,body {
|
|
min-width: 320px;
|
|
}
|
|
#blackout {
|
|
z-index: 9999999999;
|
|
}
|
|
.popover {
|
|
min-width: 300px;
|
|
z-index: 99999999999;
|
|
}
|
|
.header {
|
|
padding: 10px;
|
|
}
|
|
.header .logo {
|
|
display: none;
|
|
}
|
|
.header .center {
|
|
padding: 0 10px;
|
|
}
|
|
.header .center .domains {
|
|
width: 17px;
|
|
}
|
|
.header .end {
|
|
padding: 0 2px;
|
|
}
|
|
.header .domains select {
|
|
background-color: var(--quaternaryBackground);
|
|
background-position: calc(100% - 10px) calc(1em + 2px), calc(100% - 5px) calc(1em + 2px), calc(100% - 2.5em) 0.5em;
|
|
width: 0px !important;
|
|
padding: 0px 7px 0 10px;
|
|
}
|
|
.header .left,.header .right {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
.header .pinnedMessage {
|
|
display: none !important;
|
|
}
|
|
.pinnedMessage {
|
|
height: 40px;
|
|
flex: unset;
|
|
flex-shrink: 0;
|
|
padding: 0 10px;
|
|
border-left: none;
|
|
border-bottom: 1px solid var(--primaryBorderColor);
|
|
}
|
|
.content .pinnedMessage.shown {
|
|
display: flex !important;
|
|
}
|
|
.messageHeader {
|
|
flex: unset;
|
|
flex-shrink: 0;
|
|
}
|
|
#conversations {
|
|
position: absolute;
|
|
width: 200px;
|
|
height: calc(100% - 60px);
|
|
left: -200px;
|
|
transition: left .25s;
|
|
z-index: 999999999;
|
|
}
|
|
#conversations.showing {
|
|
left: 0;
|
|
}
|
|
#users {
|
|
position: absolute;
|
|
width: 200px;
|
|
height: calc(100% - 60px);
|
|
right: -200px;
|
|
transition: right .25s;
|
|
z-index: 999999999;
|
|
}
|
|
#users.showing {
|
|
right: 0;
|
|
}
|
|
.message.payment .amount {
|
|
font-size: 30px;
|
|
}
|
|
#messages .messageRow .preview .media iframe {
|
|
height: auto;
|
|
}
|
|
|
|
.messageRow .hover {
|
|
display: none;
|
|
}
|
|
|
|
.contextMenu[data-name=userContext], .contextMenu[data-name=messageContext] {
|
|
top: auto !important;
|
|
bottom: 50px;
|
|
left: auto !important;
|
|
}
|
|
|
|
body.menu .contextMenu[data-name=userContext], body.menu .contextMenu[data-name=messageContext] {
|
|
bottom: 10px;
|
|
}
|
|
|
|
body #closeMenu {
|
|
position: absolute;
|
|
height: 100%;
|
|
width: 100%;
|
|
background-color: rgba(0,0,0,0.3);
|
|
z-index: 99999999;
|
|
display: none;
|
|
}
|
|
body.menu #closeMenu {
|
|
display: block;
|
|
}
|
|
|
|
/*
|
|
.cam .info {
|
|
flex-direction: column;
|
|
height: 100%;
|
|
}
|
|
*/
|
|
|
|
.cam .info table {
|
|
transform: scale(0.75);
|
|
transform-origin: 0 0;
|
|
}
|
|
} |