body { overflow-x: hidden } .ffz-metadata-balloon { z-index: 999999999 !important; margin: 6px; } .tw-balloon { &[x-placement^="bottom"] > .tw-balloon__tail { bottom: 100%; .tw-balloon__tail-symbol { top: auto; bottom: -8px; left: 8px; } } &[x-placement^="top"] > .tw-balloon__tail { top: 100%; .tw-balloon__tail-symbol { top: auto; bottom: 8px; left: 8px; } } &[x-placement^="right"] > .tw-balloon__tail { right: 100%; .tw-balloon__tail-symbol { left: auto; right: -8px; top: 8px; } } &[x-placement^="left"] > .tw-balloon__tail { left: 100%; .tw-balloon__tail-symbol { left: auto; right: 8px; top: 8px; } } } .ffz-metadata-balloon, .ffz__tooltip { .loader { text-align: center; opacity: .5; margin: 1rem; font-size: 3rem; animation: ffz-rotateplane 1.2s infinite linear; } } .ffz__tooltip { z-index: 999999999; margin: 6px; border-radius: 2px; background: #0e0c13; color: #fff; font-size: 1.2rem; line-height: 1; text-align: left; white-space: pre-wrap; &.html { white-space: normal } .ffz__tooltip--arrow { position: absolute; width: 6px; height: 6px; transform: rotate(45deg); z-index: -1; background: #0e0c13; } &[x-placement^="bottom"] { .ffz__tooltip--arrow { top: -3px; border-radius: 2px 0 0; } } &[x-placement^="top"] { .ffz__tooltip--arrow { bottom: -3px; border-radius: 0 0 2px; } } &[x-placement^="right"] { .ffz__tooltip--arrow { left: -3px; border-radius: 0 2px 0 0; } } &[x-placement^="left"] { .ffz__tooltip--arrow { right: -3px; border-radius: 0 0 0 2px; } } .tw-root--theme-dark & { background: #fff; color: #0e0c13; .ffz__tooltip--arrow { background: #fff; } } } .ffz__tooltip--inner { display: block; max-width: 30rem; padding: .3rem .6rem; text-align: center; .preview-image { &.ffz-badge { height: 7.2rem; width: 7.2rem; background-size: 7.2rem; background-repeat: no-repeat; } display: block; margin: 3px auto 6px; } br { display: block; } .ffz-cheer { margin: 5px; } } .ffz__tooltip--badges { display: flex; flex-wrap: wrap; max-width: 20rem; padding: .1rem .2rem; } .ffz-badge-tip { margin: .2rem .4rem; } .ffz-rich-tip { max-width: 340px; width: 340px; text-align: left; position: relative; padding: 8px; /*.stats:after, .heading:after { content: ''; display: table; clear: both; } .tweet-heading { &:before { content: ''; position: absolute; top: 24px; right: 24px; width: 20px; height: 16px; background: url("//cdn.frankerfacez.com/script/twitter_sprites.png") -38px -15px; } .avatar { border-radius: 50%; } } .heading { .title { font-weight: bold; display: block; text-align: justify; } } .display-name { padding-top: 3px; font-size: 14px; display: block; &.big-name { font-size: 20px; padding-top: 18px; } } .quoted { .display-name { padding: 0 5px 0 0; display: inline; font-size: 12px; } } .avatar { float: left; margin-right: 8px; max-height: 48px; max-width: 100px; }*/ } .ffz--chat-card, .ffz-rich-tip { .body { line-height: 1.5em } .tweet-heading:before { content: ''; position: absolute; top: 24px; right: 24px; width: 20px; height: 16px; background: url("//cdn.frankerfacez.com/script/twitter_sprites.png") -38px -15px; } .stats:after, .heading:after { content: ''; display: table; clear: both; } .avatar { float: left; margin-right: 8px; max-height: 48px; max-width: 100px; } .tweet-heading .avatar { border-radius: 50%; } .heading .title { font-weight: bold; display: block; text-align: justify; } .display-name { padding-top: 3px; font-size: 14px; display: block; &.big-name { font-size: 20px; padding-top: 18px; } } .quoted .display-name { padding: 0 5px 0 0; display: inline; font-size: 12px; } .twitch-heading { .tip-badge.verified { height: 12px; width: 12px; margin: 2px 0 -1px 5px; background: url("https://static-cdn.jtvnw.net/badges/v1/d12a2e27-16f6-41d0-ab77-b780518f00a3/1"); background-size: contain; display: inline-block; } .big-name .tip-badge.verified { height: 18px; width: 18px; margin: 1px 0 0 10px; } } .tweet-heading .tip-badge { height: 12px; width: 12px; margin: 2px 0 -1px 5px; background: url("//cdn.frankerfacez.com/script/twitter_sprites.png"); display: inline-block; } .tip-badge { &.verified { background-position: 0 -15px; } &.translator { background-position: -12px -15px; } &.protected { background-position: -24px -15px; width: 14px; } } .emoji { height: 1em; vertical-align: middle; } .quoted > div:not(:first-child), > div:not(:first-child) { margin-top: 8px; } .quote-heading + .body { margin-top: 0 !important; } .replying { + .body { margin-top: 0 !important; } opacity: 0.6; font-size: 10px; } .subtitle, .quoted .body, .stats, .username { opacity: 0.6; } .stats { display: flex; .wide-stat { flex-grow: 1; } } time { flex-grow: 1; } .tweet-stats .stat:before { .tw-root--theme-dark & { filter: invert(100%); } content: ''; display: inline-block; background: url("//cdn.frankerfacez.com/script/twitter_sprites.png"); margin: 0 5px 0 10px; } .stat { &.likes:before { width: 17px; height: 14px; margin-bottom: -3px; } &.retweets:before { width: 20px; height: 12px; background-position: -34px 0; margin-bottom: -2px; } } .media { position: relative; text-align: center; &[data-count]:not([data-count="1"]) { display: flex; margin: 8px -5px -5px 0; flex-flow: column wrap; height: 329px; } .duration { position: absolute; bottom: 0; right: 0; margin: 4px; background: #000; color: #fff; opacity: .8; padding: 2px 4px; border-radius: 2px; z-index: 10; font-weight: 500; } } .sixteen-nine { width: 100%; overflow: hidden; margin: 0; padding-top: 56.25%; position: relative; img { position: absolute; top: 50%; left: 50%; width: 100%; transform: translate(-50%, -50%); } } .media { video { width: 100%; max-height: 324px; } &[data-count="4"] { flex-flow: row wrap; } &[data-count="2"] { height: 164.5px; } img { max-height: 324px; } } .quoted .media { &[data-count]:not([data-count="1"]), &[data-count="2"] { height: 150px; } video, img { max-height: 150px; } } .media { span { background: no-repeat center center; background-size: cover; } &[data-count="2"] span, &[data-count="3"] span, &[data-count="4"] span { width: calc(50% - 5px); height: calc(50% - 5px); margin: 0 5px 5px 0; } &[data-count="2"] span, &[data-count="3"] span:first-of-type { height: 100%; } } .profile-stats { display: flex; flex-flow: row; flex-wrap: wrap; div { flex-grow: 1; font-size: 16px; margin-right: 10px; } span { display: block; font-size: 12px; opacity: 0.7; } } .quoted { border: 1px solid #474747; border-radius: 5px; padding: 8px; } .media[data-type="video"]:after { position: absolute; content: ''; width: 64px; height: 64px; top: calc(50% - 32px); left: calc(50% - 32px); background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23FFF' d='M15 10.001c0 .299-.305.514-.305.514l-8.561 5.303C5.51 16.227 5 15.924 5 15.149V4.852c0-.777.51-1.078 1.135-.67l8.561 5.305c-.001 0 .304.215.304.514z'/%3E%3C/svg%3E"); } }