$bubble-margin: .25rem; @keyframes bubbleSelected { 0% { opacity: 0; } 25% { opacity: 1; } to { opacity: 0; } } /* * zoom-fade-opacity */ @keyframes zoom-opacity-fade-in { 0% { //transform: scale(.8) translateZ(0); transform: scale3d(.8, .8, 1); //transform: scale(.8); opacity: 0; } 100% { //transform: scale(1) translateZ(0); transform: scale3d(1, 1, 1); //transform: scale(1); opacity: 1; } } .bubbles-date-group { position: relative; /* .sticky_sentinel { visibility: visible; background: #000; } */ .sticky_sentinel--top { /* Adjust the height and top values based on your on your sticky top position. e.g. make the height bigger and adjust the top so observeHeaders()'s IntersectionObserver fires as soon as the bottom of the sentinel crosses the top of the intersection container. */ height: $bubble-margin; top: 0; } // .sticky_sentinel--bottom { // /* Height should match the top of the header when it's at the bottom of the // intersection container. */ // height: 1px; // bottom: 0; // } } .bubble { padding-top: $bubble-margin; position: relative; z-index: 1; margin: 0 auto; &.is-highlighted, &.is-selected, /* #bubbles.is-selecting */ & { &:after { position: absolute; left: -50%; /* top: 0; bottom: 0; */ top: #{$bubble-margin / 2}; bottom: -#{$bubble-margin / 2}; content: " "; z-index: 1; } } /* &.is-highlighted, &.is-selected { &:not(.is-group-last):after { height: calc(100% + #{$bubble-margin / 2}) !important; } & + &:not(.is-group-last) { &:after { top: .125rem !important; height: calc(100% - #{$bubble-margin / 2}) !important; } } } */ // ! if turn this on, there will be an empty space /* &.is-highlighted, &.is-selected { &.is-group-last:after { bottom: #{$bubble-margin / 2} !important; } } */ &.is-highlighted:after { background-color: rgba(0, 132, 255, .3); animation: bubbleSelected 2s linear; } &.is-first-unread { @include respond-to(handhelds) { max-width: unset; } &:before { content: "Unread messages"; height: 30px; margin-bottom: $bubble-margin; margin-left: -50%; text-align: center; color: #538BCC; line-height: 2.1; font-weight: 500; font-size: 15px; background-color: rgba(255, 255, 255, 0.95); z-index: 2; position: relative; } &.is-highlighted, &.is-selected { &:after { top: #{2rem + $bubble-margin} !important; } } } &.is-selected { &:after { background-color: rgba(77, 142, 80, .4); animation: fade-in-opacity .2s linear forwards; } &.backwards:after { animation: fade-in-backwards-opacity .2s linear forwards; } } //&.is-highlighted:after, &.is-first-unread:before, &.is-selected:after { &:after, &:before { width: 200%; display: block; } &.is-date { position: sticky; top: $bubble-margin; //z-index: 3; z-index: 2; transition: opacity .3s ease; opacity: 0.99999; // for safari &.is-sticky { opacity: 0.00001; // for safari #bubbles-inner:not(.is-scrolling) & { //transition-delay: 1.35s; .bubble__container { cursor: default; } } /* #bubbles-inner.is-scrolling & { transition-delay: 0; } */ } .bubble__container { cursor: pointer; } } &.zoom-fade /* .bubble__container */ { //transform: scale(.8) translateZ(0); transform: scale3d(.8, .8, 1); //transform: scale(.8); opacity: 0; transform-origin: center; animation: zoom-opacity-fade-in .2s linear forwards; animation-delay: 0; } &-select-checkbox { z-index: 2; position: absolute; left: 0; //bottom: .75rem; // * by avatar bottom: 5px; // * by middle of one-line message /* left: 0; top: 50%; transform: translateY(-50%); */ display: flex; [type="checkbox"] { /* &:not(:checked) + .checkbox-caption:after { } */ &:checked + .checkbox-caption { &:after { background-color: #61c642; } } } .checkbox-caption { &:before { top: 7px !important; left: 3px !important; width: 6px !important; height: 11px !important; } &:after { box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, .4); border: 2px solid #fff !important; width: 22px; height: 22px; } } } &__container { //min-width: 60px; min-width: 56px; max-width: 100%; border-radius: 12px; box-shadow: 0 1px 2px 0 rgba(16, 35, 47, 0.15); position: relative; display: flex; flex-direction: column-reverse; /* font-size: 0; */ width: max-content; height: fit-content; z-index: 2; transition: .2s transform; @include respond-to(not-handhelds) { max-width: 85%; } @include respond-to(handhelds) { max-width: calc(100% - var(--message-handhelds-margin)); } > .user-avatar { position: absolute; left: -45px; //left: -3rem; # DO JS3 width: 40px; height: 40px; line-height: 40px; bottom: 0; font-size: 1rem; cursor: pointer; #bubbles.is-selecting & { transform: scale3d(1, 1, 1); transform-origin: bottom; transition: transform var(--layer-transition); } #bubbles.is-selecting:not(.backwards) & { transform: scale3d(.76, .76, 1); } // @include respond-to(handhelds) { // left: -45px; // } } } /* &.with-beside-button &__container { @include respond-to(handhelds) { max-width: calc(100% - var(--message-handhelds-margin)) !important; } } */ &.service { //padding: 1rem 0; padding: $bubble-margin 0; max-width: var(--messages-container-width); .bubble__container { /* justify-self: center; */ margin: 0 auto; max-width: 100%; } } &-beside-button { //opacity: 0; //transition: .2s opacity; position: absolute; right: -46px; bottom: 0; width: 38px; height: 38px; font-size: 1.5rem; align-items: center; display: flex; justify-content: center; color: #fff; border-radius: 50%; background: rgba(0, 0, 0, 0.16); cursor: pointer; } .forward { svg { width: 20px; height: 20px; } } .message strong { font-weight: 500 !important; } /* &.is-group-first { padding-top: 10px; } */ &.is-group-last { padding-bottom: $bubble-margin; .bubble-select-checkbox { bottom: 8px; } #bubbles-inner.is-chat &.is-in { .bubble-select-checkbox { bottom: 7px; } } } &:not(.forwarded) { &:not(.is-group-first) { .bubble__container > .name { display: none; } &:not(.is-message-empty):not(.is-reply) .message { padding-top: 6px; } } } &:not(.is-group-last) .bubble__container > .user-avatar { display: none; } &:not(.hide-name) { .audio { margin: 4px 0; } } /* .goto-original { opacity: 1; } */ .reply { width: auto; .reply-content { height: auto; min-height: 32px; } } &.photo, &.video { .bubble__container { width: min-content; } .box.web { /* width: max-content; */ // commented 10.02.2020 /* width: min-content; */ max-width: 100%; } } .preview-resizer { display: flex; } img.emoji { height: 18px; width: 18px; margin: 0 .05rem; vertical-align: bottom; } span.emoji { height: auto; width: auto; overflow: visible; vertical-align: unset; } .thumbnail { position: absolute; } &.emoji-big { font-size: 0; .bubble__container { background: none!important; box-shadow: none; line-height: 1; user-select: none; } &:not(.sticker) .attachment { padding-top: .5rem; padding-bottom: 1.5rem; //max-width: fit-content!important; max-height: fit-content!important; span.emoji { height: auto; width: auto; } } &.sticker .bubble__container { max-width: 140px !important; max-height: 140px !important; } } &.emoji-1x .attachment { font-size: 96px; img.emoji { height: 64px; width: 64px; /* height: 96px; width: 96px; */ } } &.emoji-2x .attachment { font-size: 64px; img.emoji { height: 48px; width: 48px; /* height: 64px; width: 64px; */ } } &.emoji-3x .attachment { font-size: 52px; img.emoji { height: 32px; width: 32px; /* height: 48px; width: 48px; */ } } &.sticker, &.round, &.emoji-big { .bubble__container { cursor: pointer; background: none!important; box-shadow: none; /* max-width: 300px; max-height: 300px; */ } img { object-fit: contain; } &.is-message-empty .message { background-color: rgba(0, 0, 0, .23); } /* &.is-message-empty .message { display: none; } &.is-message-empty:hover .message { display: block; } */ } &.sticker { .attachment { border-radius: 0; } .bubble__container { max-width: 200px !important; max-height: 200px !important; } } &.round { .attachment { max-width: 200px !important; max-height: 200px !important; img { border-radius: 50%; } } } &:not(.is-message-empty) .attachment/* , &:not(.is-message-empty).is-reply .attachment */ { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } &:not(.emoji-big) .attachment { font-size: 0; } .attachment { max-width: 100%; border-radius: inherit; overflow: hidden; user-select: none; display: flex; // lol justify-content: center; position: relative; img, video { max-width: 100%; cursor: pointer; opacity: 1; transition: opacity .3s ease; } .download { position: absolute; left: 0; top: 0; height: 100%; width: 100%; cursor: pointer; display: flex; justify-content: center; align-items: center; span { background-color: var(--message-time-background); font-size: 23px; color: #fff; text-align: center; } } .download, .preloader-container { & ~ .video-play { display: none; } } .preloader-container { z-index: 1; } } &:not(.sticker) { .attachment { max-width: unquote('min(480px, 100%)'); max-height: unquote('min(480px, 100%)'); width: max-content; } } img:not(.emoji), video { /* object-fit: contain; */ object-fit: cover; width: 100%; height: 100%; } html.is-safari &:not(.round) { img:not(.emoji), video { border-radius: inherit; } } &.is-album { .attachment { max-width: unquote('min(451px, 100%)'); max-height: none; .album-item { background-color: #000; background-size: cover; /* background-position: center center; */ /* flex: 1 0 auto; */ max-width: 100%; cursor: pointer; position: absolute; overflow: hidden; img, video { border-radius: inherit; } } } } //&.video { //.attachment { //max-height: fit-content; /*img { width: 100%; height: 100%; }*/ //} //} &.round { .attachment { max-height: 200px; max-width: 200px; //max-height: fit-content; //-webkit-clip-path: ellipse(100px 100px at center); //clip-path: ellipse(100px 100px at center); } } .box, .reply { font-size: .95rem; // margin: .25rem; margin: 4px 4px 4px 6px; //padding: .25rem; padding: 4px; margin-bottom: -5px; border-radius: 4px; //transition: anim(background-color); /* &:hover { cursor: pointer; } */ &.web { margin-top: -6px; // margin-bottom: 5px; max-width: 100%; overflow: hidden; .preview { max-height: unquote('min(400px, 100%)'); max-width: unquote('min(480px, 100%)'); /* max-height: 100%; max-width: 100%; */ border-radius: 4px; margin-bottom: 3px; overflow: hidden; user-select: none; cursor: pointer; position: relative; width: max-content; img, video { max-width: 100%; /* width: 100%; height: 100%; */ } } .title { letter-spacing: -0.2px; line-height: 1.2; font-weight: 500 !important; } .name { letter-spacing: -0.3px; display: block; html.no-touch &:hover { text-decoration: underline; } } .text { overflow: hidden; text-overflow: ellipsis; line-height: 1.2; letter-spacing: -0.3px; margin-top: 2px; font-size: 0.965rem; } } .quote { // padding-left: .5rem; padding-left: 0.55rem; max-width: 100%; overflow: hidden; width: 100%; } .text/* , .reply-subtitle */ { line-height: 1.2; } .name, .reply-title { font-weight: 500 !important; display: inline!important; } } &.is-square-photo { .bubble__container { width: fit-content; } .box.web { .quote { display: flex; justify-content: space-between; } .preview-resizer { order: 2; flex-shrink: 0; max-width: 5rem; max-height: 5rem; .preview { max-width: unquote('min(5rem, 100%)'); max-height: unquote('min(5rem, 100%)'); } } .quote-text { order: 1; padding-right: 1rem; } } } &.is-vertical-photo { .bubble__container { width: fit-content; } } .reply { margin-bottom: 6px; margin-top: 0; cursor: pointer; &-content { max-width: 300px; } } &.is-reply { &.emoji-big, &.sticker { .reply { padding: 10px; border-radius: 12px; border: 1px solid #ccc; max-width: 300px; height: 54px; max-height: 54px; white-space: nowrap; position: absolute; top: 0; margin-bottom: 0; @include respond-to(handhelds) { padding: 8px 6px 8px 8px; max-width: 94px; } .reply-content { margin-top: 0; } } } .reply-content { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; } } .message { font-size: 16px; //padding: 0 .6rem .2675rem .6rem; padding: 0 .6rem 6px .6rem; overflow: hidden; text-overflow: ellipsis; max-width: 100%; color: #000; line-height: 21px; word-break: break-word; /* * { overflow: hidden; text-overflow: ellipsis; } */ &:last-child { //padding-top: .2675rem; padding-top: 6px; } .emoji { font-size: 1.2rem; } pre, code { white-space: pre-wrap; /* css-3 */ white-space: -moz-pre-wrap; /* Mozilla, since 1999 */ white-space: -pre-wrap; /* Opera 4-6 */ white-space: -o-pre-wrap; /* Opera 7 */ word-wrap: break-word; /* Internet Explorer 5.5+ */ } } // all for audio (not voice) .message.audio-message { .audio { justify-content: unset; max-width: none; @include respond-to(handhelds) { height: 59px; padding-left: 47px; } // .preloader-container { // @include respond-to(handhelds) { // width: 30px; // height: 30px; // // left: 2px; // } // } &-time { padding-bottom: 7px; } &-time, &-subtitle { color: #4fae4e; line-height: 1.45; margin-top: 0; } &-title { font-weight: 500; margin-left: -1px; } &-details { margin-top: 8px; @include respond-to(handhelds) { margin-top: -1px; } } &-ico { font-size: 0; @include respond-to(handhelds) { margin-top: 1px; margin-left: 2px; } } } .progress-line { /* width: calc(100% + 50px); */ width: 191px; margin: 9px 0 9px; @include respond-to(handhelds) { width: unset; } &__filled { background-color: #47aa41; transform-origin: left; height: 2px; } &__seek { height: 2px; overflow: visible !important; background: rgba(124, 195, 107, 0.52); &::-webkit-slider-thumb { height: 12px; width: 12px; background: #47aa41; border: none; } } } //&.audio-message { min-width: 275px; //max-width: 380px !important; max-width: 275px !important; padding-top: 8px !important; padding-left: 8px !important; /* .audio-details * { overflow: visible; } */ //} /* @include respond-to(handhelds) { .preloader-container .you-spin-me-round { margin-top: 1px; margin-left: 2px; } } */ } .message.contact-message { min-width: 200px; padding-left: 8px; .contact { display: flex; padding: 2px 0; cursor: pointer; &-avatar { color: #fff; } &-details { padding-left: 12px; margin-top: 8px; } &-name { font-size: 1rem; font-weight: 500; } &-number { font-size: 14px; line-height: 1.4; } } } .message.document-message { max-width: 325px !important; .document { padding-left: 66px; height: 58px; @include respond-to(handhelds) { padding-left: 44px; } &-name { line-height: 1.4; margin-top: 1px; overflow: hidden; text-overflow: ellipsis; } } } .message { &.document-message, &.audio-message, &.voice-message, &.poll-message, &.contact-message { .time { position: absolute; right: 0; bottom: 0; } } } .message.voice-message { // ! SAFARI FIX BLINK ON SELECTION TRANSFORM ! overflow: visible !important; } &.is-message-empty { .message { position: absolute; bottom: .1rem; right: .2rem; border-radius: 12px; background-color: var(--message-time-background); padding: 0 .2rem; z-index: 2; .time { margin-left: 0; color: #fff; display: flex; align-items: center; padding: 0 2.5px; line-height: 20px; pointer-events: all; // show title .inner { display: none; } } } } .time { color: transparent; font-size: 12px; user-select: none; line-height: 1; vertical-align: middle; pointer-events: none; // do not show title display: inline-block; /* display: inline-flex; align-items: center; */ i { font-size: 1.15rem; margin-right: .4rem; /* margin-left: .1rem; */ } i.edited { overflow: visible; font-size: .8rem; } .inner { pointer-events: all; position: absolute; bottom: 0; right: 0; display: flex; align-items: center; line-height: 1; padding: inherit; } } .video-time { position: absolute; top: 3px; left: 3px; border-radius: 12px; background-color: var(--message-time-background); padding: 0px 6px 0px 6px; z-index: 2; font-size: 12px; color: white; display: flex; align-items: center; cursor: pointer; user-select: none; &.can-autoplay:after { content: $tgico-nosound; // * same as .iconVolume padding: 0 1px 0 3px; font-size: 1.25rem; color: #fff; } } .video-play { background-color: var(--message-time-background); color: #fff; text-align: center; font-size: 34px; line-height: 60px; cursor: pointer; @include respond-to(handhelds) { line-height: unset; } } &:not(.forwarded).hide-name, &.emoji-big { .name { display: none; } } .name { cursor: pointer; user-select: none; } &__container > .name { /* padding: .2675rem .6rem 0 .6rem; */ /* padding: .32rem .6rem 0 .6rem; */ padding: 5px .6rem 0 .6rem; font-weight: 500 !important; /* padding-bottom: 4px; */ color: $color-blue; font-size: .9rem; max-width: 100%; overflow: hidden; text-overflow: ellipsis; //width: max-content; //white-space: nowrap; } &:not(.webpage) { &.photo, &.video { .name { //padding-bottom: .2675rem; padding-bottom: 6px; } &:not(.is-message-empty) .message { //padding-top: .2675rem; padding-top: 6px; } } } &:not(.webpage):not(.is-album):not(.sticker):not(.round):not(.emoji-big) .attachment, .album-item { background-color: #000; } &.hide-name:not(.is-reply):not(.is-message-empty) .message { //padding-top: .2675rem; padding-top: 6px; } &:not(.sticker):not(.emoji-big) { &.hide-name, &:not(.is-group-first), &.is-out { .reply { margin-top: 6px; } } } &:not(.sticker):not(.emoji-big):not(.round).is-group-last .bubble__container:after { position: absolute; bottom: 0; width: 11px; height: 20px; background-repeat: no-repeat no-repeat; content: ''; background-size: 11px 20px; background-position-y: 1px; } &.photo, &.video { &.is-message-empty.is-group-last { .bubble__container:after { display: none; } } } &.is-message-empty.is-group-last.with-media-tail { .bubble__container:after { display: none; } .attachment { overflow: visible; } } &__media-container { cursor: pointer; } } .bubble.service { align-self: center; .service-msg { color: #fff; background-color: rgba(0, 0, 0, 0.24); font-size: 14px; padding: 0 8px; line-height: 24px; border-radius: 12px; user-select: none; display: flex; align-items: center; justify-content: center; text-align: center; i { font-style: normal; } a { color: #fff; } a, .name { &:hover { text-decoration: underline; } } .name { cursor: pointer; //margin-right: 5px; } img.emoji { margin-bottom: 3px; } } } .bubble.is-in { .bubble__container { margin-right: auto; background-color: #ffffff; &, .poll-footer-button { border-radius: 6px 12px 12px 6px; } } &.is-group-first { .bubble__container, .poll-footer-button { border-radius: 12px 12px 12px 6px; } } &.is-group-last { .bubble__container, .poll-footer-button { border-radius: 6px 12px 12px 0px; //border-radius: 12px 12px 12px 0px; } .bubble__container:after { left: -8.4px; background-image: url('assets/img/msg-tail-left.svg'); } } &.is-group-first.is-group-last { .bubble__container, .poll-footer-button { border-radius: 12px 12px 12px 0px; } } &.forwarded .attachment, &.is-reply .attachment, &:not(.hide-name).is-message-empty .attachment/* , &:not(.hide-name):not(.sticker) .attachment */ { border-top-left-radius: 0; border-top-right-radius: 0; } a { color: $color-blue; } .quote { html.no-touch &:hover { background-color: $light; } } &.is-reply { &.emoji-big, &.sticker { .reply { left: calc(100% + 10px); background-color: #fff; @include respond-to(handhelds) { left: calc(100% + 1px); } } } } .quote { border-left: 2px $color-blue solid; * { overflow: hidden; text-overflow: ellipsis; } } .quote .name, .reply-title { color: $color-blue; } .time { margin-left: -1px; padding-right: 8px; .inner { color: #a3adb6; margin-bottom: 4px; } } &.is-message-empty.is-group-last { &:not(.with-media-tail) { &.photo, &.video { .bubble__container { border-bottom-left-radius: 6px; } } } &.with-media-tail { .attachment { border-bottom-left-radius: 0; } .bubble__media-container { margin-left: -9px; } } } .audio-subtitle, .contact-number, .audio-time { color: #707579 !important; } .message.audio-message { .progress-line { &__seek { background: rgba(193, 207, 220, 0.39); } &__filled { background-color: #0089ff; } &__loaded { background-color: #cacaca; } input::-webkit-slider-thumb { background: #63a2e3; border: none; } } } /* .poll { &-answer-selected { &:before { margin-left: -1px; } } } */ } /* @include respond-to(handhelds) { .bubble.is-in { margin-right: auto; } .bubble.is-out { margin-left: auto; } } */ .bubble.is-out { .bubble__container { margin-left: auto; background-color: #eeffde; > .user-avatar { left: auto; right: -2.5rem; } &, .poll-footer-button { border-radius: 12px 6px 6px 12px; } } &.is-group-first { .bubble__container, .poll-footer-button { border-radius: 12px 12px 6px 12px; } } &.is-group-last { .bubble__container, .poll-footer-button { border-radius: 12px 6px 0px 12px; } .bubble__container:after { right: -8.4px; background-image: url('assets/img/msg-tail-right.svg'); } } &.is-group-first.is-group-last { .bubble__container, .poll-footer-button { border-radius: 12px 12px 0px 12px; } } &.forwarded .attachment, &.is-reply .attachment { border-top-left-radius: 0; border-top-right-radius: 0; } .quote { html.no-touch &:hover { background-color: rgba($color-green, 0.12); } } &.is-reply { &.emoji-big, &.sticker { .box, .reply { background-color: #eeffde; right: calc(100% + 10px); border-color: rgba($color-green, .12); } } } .quote { border-left: 2px $darkgreen solid; } .reply-border { background-color: $darkgreen; } .quote .name, .reply-title { color: $darkgreen; } .time { padding-right: 4px; margin-left: -4px; .inner { color: $darkgreen; bottom: 2px; } &:after, .inner:after { font-size: 19px; //vertical-align: middle; margin-left: 1px; line-height: 16px; // of message } } /* &.is-message-empty .time:after { margin-bottom: 1px; } */ &.forwarded { .name { color: $darkgreen; } } &.is-read { .time:after, .time .inner:after { content: $tgico-checks; } } &.is-sent { .time:after, .time .inner:after { content: $tgico-check; } } &.is-sending { .time:after, .time .inner:after { content: $tgico-sending; } } &.is-reply .name { display: none; } .document-ico:after { border-top-color: #eeffde; border-right-color: #eeffde; } .audio { &-waveform { rect { fill: #B8DDA9; &.active { fill: #68AB5A !important; } } } &-time, &-subtitle { color: #68AB5A; } &-toggle, &-download { background-color: #4FAE4E; } &-download:empty { display: none; } &.is-unread { rect { //fill: #68AB5A; fill: #B8DDA9; } .audio-time:after { background-color: #68AB5A; } } } &.is-message-empty.is-group-last { &:not(.with-media-tail) { &.photo, &.video { .bubble__container { border-bottom-right-radius: 6px; } } } &.with-media-tail { .attachment { border-bottom-right-radius: 0; } .bubble__media-container { margin-right: -9px; } } } .audio-subtitle, .contact-number, .document-size { color: #4FAE4E; } poll-element { .poll { &-desc, &-votes-count { color: $color-text-green; } &-line use { stroke: #4fae4e; } &-answer-selected { background-color: #4fae4e; } html.no-touch &-answer:hover { .animation-ring { background-color: rgba(79, 174, 78, 0.08); } } &-footer-button { color: #4fae4e; } } .progress-ring__circle { stroke: #4fae4e; } } &.is-sending poll-element { pointer-events: none; } .progress-line { &__loaded { background-color: #90e18d !important; } } .bubble-beside-button { right: auto; left: -46px; //transform: scaleX(-1); } } .reply-markup { position: absolute; width: 100%; &-row { margin-top: 5px; overflow: hidden; height: 40px; display: flex; &:last-child { border-bottom-left-radius: $border-radius-big; border-bottom-right-radius: $border-radius-big; } } &-button { display: flex; justify-content: center; align-items: center; border-radius: 6px; background-color: rgba(0, 0, 0, 0.23); z-index: 2; font-size: 14px; user-select: none; text-align: center; color: white !important; outline: none; border: none; width: 100%; cursor: pointer; position: relative; transition: background-color 0.35s ease; html.no-touch &:hover { background-color: rgba(0, 0, 0, 0.06); } & + & { margin-left: 5px; } &.is-link:before { content: $tgico-next; position: absolute; right: 2px; top: 2px; display: block; transform: rotate(-45deg); } /* img.emoji { vertical-align: middle !important; } */ } } poll-element { margin-top: -1px; display: block; //min-width: 280px; min-width: 330px; @include respond-to(handhelds) { min-width: 240px; } &:not(.is-closed):not(.is-voted) .poll-answer { cursor: pointer; } .poll { &-title { font-weight: 500; user-select: none; @include respond-to(handhelds) { max-width: 88%; } } &-desc { font-size: 14px; color: #707579; margin-top: 2px; margin-bottom: 7px; user-select: none; display: flex; position: relative; // @include respond-to(handhelds) { // max-width: 280px; // } } &-hint { position: absolute; font-size: 1.5rem; top: -4px; right: 2px; color: #50a2e9; cursor: pointer; transform: scale(1); transition: transform .2s ease; // @include respond-to(handhelds) { // right: 16px; // } &.active { transform: scale(0); pointer-events: none; } } &-send-vote { cursor: default; } &-avatars { display: flex; margin-left: 18px; } &-answer { display: flex; position: relative; padding-bottom: 20px; padding-left: 28px; margin-top: 1px; &-text { margin-top: 6px; margin-left: 12px; user-select: none; } &-percents { position: absolute; left: 0; top: 0; opacity: 0; font-weight: 500; margin-top: 7px; font-size: 14px; transition: .34s opacity; margin-left: -9px; text-align: right; width: 40px; user-select: none; } &-selected { position: absolute; bottom: 1px; left: 15px; color: #fff; background: #50a2e9; border-radius: 50%; height: 16px; width: 16px; font-weight: bold; font-size: 14px; line-height: 1.4; opacity: 0; animation: fade-in-opacity .1s ease forwards; animation-direction: reverse; animation-delay: .24s; text-align: center; &:before { content: $tgico-check; //margin-left: 1px; font-weight: bold; } } html.no-touch &:hover { .animation-ring { visibility: visible; transform: scale(1); } } &.is-voting { .progress-ring__circle { stroke-dashoffset: -19.792; animation: pollAnswerRotate 0.65s linear infinite; } } &:not(.is-correct):not(.is-chosen) { .poll-answer-selected { display: none; } } // Multiple answers &.is-chosing { .poll-answer-selected { opacity: 1; } & ~ .poll-footer { .poll-send-vote { cursor: pointer; } } } } &-votes-count { color: #707579; font-size: 14px; user-select: none; padding-top: 1px; } &-line { height: 35px; position: absolute; left: 10px; bottom: 2px; transition: stroke-dashoffset .34s linear, stroke-dasharray .34s linear; stroke-dashoffset: 0; stroke-dasharray: 0, 485.9; use { stroke-width: 4px; stroke-linecap: round; stroke: #50a2e9; fill: none; } } &-footer { text-align: center; margin-top: 7px; height: 27px; } &-footer-button { cursor: pointer; position: absolute; left: 0; margin-top: -7px; width: 100%; height: 41px; color: #50a2e9; //text-transform: uppercase; font-weight: 500; border-top-left-radius: 0 !important; border-top-right-radius: 0 !important; //border-bottom-left-radius: 6px; //border-bottom-right-radius: 12px; font-size: 1rem; line-height: 37px; user-select: none; overflow: hidden; } &-quiz-timer { width: 32px; height: 32px; stroke: #a3adb6; transform: rotate(270deg); top: -7px; fill: none; position: absolute; right: -2px; stroke-linecap: round; } &-time { font-size: 12px; font-weight: 500; position: absolute; right: 27px; color: #a3adb6; } } &.is-quiz .poll { &-answer { &.is-chosen:not(.is-correct) { use { stroke: #DF3F40; } .poll-answer-selected { background: #DF3F40; //line-height: 16px; &:before { content: $tgico-close; font-size: 12px; //margin-left: 2.5px; } } } } /* &-line { use { } } */ } avatar-element { width: 18px; height: 18px; border: 1px solid #fff; line-height: 20px; font-size: 10px; cursor: pointer; } .circle-hover { display: flex; justify-content: center; align-items: center; width: 34px; height: 34px; position: absolute; left: -1px; top: -1px; transform: scale(1); transition: .1s transform; .poll-answer-selected { display: flex!important; opacity: 0; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 20px; height: 20px; font-size: 20px; line-height: 16px; animation: none; transition: opacity .2s ease; } } .animation-ring { display: block; border-radius: 50%; height: 34px; width: 34px; transition: transform 0.12s; background-color: #f4f4f4; transform: scale(0.1); visibility: hidden; } .progress-ring { height: 26px; width: 26px; top: unset; left: unset; &__circle { transform-origin: center; transform: rotate(-90deg); transition: stroke-dashoffset 0.15s; stroke-dasharray: 56.5487, 56.5487; stroke-dashoffset: 0; stroke-opacity: 1; stroke-width: 2; stroke: #dadbdc; fill: transparent; } } &.is-voted { .circle-hover, .animation-ring { transform: scale(0); } .poll-answer-percents { opacity: 1; } .poll-answer-selected { animation-direction: normal; } } &.is-retracting { .circle-hover { transition-delay: .24s; } .animation-ring { transition-delay: .22s; } } } @keyframes pollAnswerRotate { to { transform: rotate(270deg); } }