1
0
Fork 0
mirror of https://github.com/FrankerFaceZ/FrankerFaceZ.git synced 2025-08-03 16:38:31 +00:00
FrankerFaceZ/style.css

663 lines
No EOL
17 KiB
CSS

.ffz-ui-toggle {
display: block;
position: absolute;
top: 5px; right: 5px;
height: 18px; width: 24px;
cursor: pointer;
}
.emoticon-selector-toggle + script + .ffz-ui-toggle svg { height: 14px; width: 18px; }
.emoticon-selector-toggle + script + .ffz-ui-toggle {
height: 14px; width: 18px;
top: 28px;
}
.ffz-ui-toggle svg.svg-emoticons path { fill: rgba(0,0,0,0.2); }
.ffz-ui-toggle:hover svg.svg-emoticons path { fill: rgba(0,0,0,0.5); }
.ember-chat-container.dark .ffz-ui-toggle svg.svg-emoticons path,
.chat-container.dark .ffz-ui-toggle svg.svg-emoticons path,
.app-main.theatre .ffz-ui-toggle svg.svg-emoticons path,
.ffz-ui-toggle.dark svg.svg-emoticons path { fill: #888; }
.ember-chat-container.dark .ffz-ui-toggle:hover svg.svg-emoticons path,
.chat-container.dark .ffz-ui-toggle:hover svg.svg-emoticons path,
.app-main.theatre .ffz-ui-toggle:hover svg.svg-emoticons path,
.ffz-ui-toggle.dark:hover svg.svg-emoticons path { fill: #777; }
.ffz-ui-toggle.no-emotes svg.svg-emoticons path { fill: rgba(80,0,0,0.2); }
.ffz-ui-toggle.no-emotes:hover svg.svg-emoticons path { fill: rgba(80,0,0,0.5); }
.ffz-ui-toggle.live svg.svg-emoticons path { fill: rgba(100,65,165,0.5); }
.ffz-ui-toggle.live:hover svg.svg-emoticons path { fill: rgba(100,65,165,1); }
.ffz-ui-toggle.blue.live svg.svg-emoticons path { fill: rgba(47,88,185,0.5); }
.ffz-ui-toggle.blue.live:hover svg.svg-emoticons path { fill: rgba(47,88,185,1); }
.ember-chat-container.dark .ffz-ui-toggle.no-emotes svg.svg-emoticons path,
.app-main.theatre .ffz-ui-toggle.no-emotes svg.svg-emoticons path,
.chat-container.dark .ffz-ui-toggle.no-emotes svg.svg-emoticons path,
.ember-chat .chat-interface .textarea-contain .ffz-ui-toggle.dark.no-emotes svg.svg-emoticons path { fill: #453434; }
.ember-chat-container.dark .ffz-ui-toggle.no-emotes:hover svg.svg-emoticons path,
.app-main.theatre .ffz-ui-toggle.no-emotes:hover svg.svg-emoticons path,
.chat-container.dark .ffz-ui-toggle.no-emotes:hover svg.svg-emoticons path,
.ember-chat .chat-interface .textarea-contain .ffz-ui-toggle.dark.no-emotes:hover svg.svg-emoticons path { fill: #543f3f; }
.ember-chat-container.dark .ffz-ui-toggle.live svg.svg-emoticons path,
.app-main.theatre .ffz-ui-toggle.live svg.svg-emoticons path,
.chat-container.dark .ffz-ui-toggle.live svg.svg-emoticons path,
.ember-chat .chat-interface .textarea-contain .ffz-ui-toggle.dark.live svg.svg-emoticons path { fill: #513c78; }
.ember-chat-container.dark .ffz-ui-toggle.live:hover svg.svg-emoticons path,
.app-main.theatre .ffz-ui-toggle.live:hover svg.svg-emoticons path,
.chat-container.dark .ffz-ui-toggle.live:hover svg.svg-emoticons path,
.ember-chat .chat-interface .textarea-contain .ffz-ui-toggle.dark.live:hover svg.svg-emoticons path { fill: #5b4487; }
.ember-chat-container.dark .ffz-ui-toggle.blue.live svg.svg-emoticons path,
.app-main.theatre .ffz-ui-toggle.blue.live svg.svg-emoticons path,
.chat-container.dark .ffz-ui-toggle.blue.live svg.svg-emoticons path,
.ember-chat .chat-interface .textarea-contain .ffz-ui-toggle.dark.blue.live svg.svg-emoticons path { fill: #3c4e78; }
.ember-chat-container.dark .ffz-ui-toggle.blue.live:hover svg.svg-emoticons path,
.app-main.theatre .ffz-ui-toggle.blue.live:hover svg.svg-emoticons path,
.chat-container.dark .ffz-ui-toggle.blue.live:hover svg.svg-emoticons path,
.ember-chat .chat-interface .textarea-contain .ffz-ui-toggle.dark.blue.live:hover svg.svg-emoticons path { fill: #445887; }
.ffz-ui-toggle.live {
animation: ffzfade 8s linear infinite;
-webkit-animation: ffzfade 8s linear infinite;
}
@-webkit-keyframes ffzfade {
from, to { opacity: 1; }
50% { opacity: 0.75; }
}
@keyframes ffzfade {
from, to { opacity: 1; }
50% { opacity: 0.75; }
}
.ember-chat .chat-menu.ffz-ui-popup { padding: 0; }
.ffz-button {
float: right;
margin-top: -6px;
text-transform: none;
}
.ffz-noty .noty_message {
background-image: url("//cdn.frankerfacez.com/icon32.png") !important;
background-repeat: no-repeat !important;
background-position: 5px 10px !important;
padding-left: 42px !important;
text-align: left;
}
.ffz-ui-popup .button.live { overflow: hidden; background: #6441A5; color: #fff; }
.ffz-ui-popup .button.live span { z-index: 2; position: relative; }
.ffz-ui-popup .button.live:before, .ffz-ui-popup .button.live:after {
content: "";
display: block;
position: absolute;
width: 0px;
height: 0px;
border-radius: 999px;
-moz-border-radius: 999px;
-webkit-border-radius: 999px;
top: 50%;
left: 50%;
z-index: 1
}
.ffz-ui-popup .button.live.purple:before, .ffz-ui-popup .button.live.purple:after {
box-shadow: 0 0 3px 1px #a68ed2,inset 0 0 3px 1px #a68ed2;
-moz-box-shadow: 0 0 3px 1px #a68ed2,inset 0 0 3px 1px #a68ed2;
-webkit-box-shadow: 0 0 3px 1px #a68ed2,inset 0 0 3px 1px #a68ed2;
}
.ffz-ui-popup .button.live.blue:before, .ffz-ui-popup .button.live.blue:after {
box-shadow: 0 0 3px 1px #8ea2d1,inset 0 0 3px 1px #8ea2d1;
-moz-box-shadow: 0 0 3px 1px #8ea2d1,inset 0 0 3px 1px #8ea2d1;
-webkit-box-shadow: 0 0 3px 1px #8ea2d1,inset 0 0 3px 1px #8ea2d1;
}
.ffz-ui-popup .button.live:before {
animation: expand 1500ms infinite ease-in;
-moz-animation: expand 1500ms infinite ease-in;
-webkit-animation: expand 1500ms infinite ease-in;
-o-animation: expand 1500ms infinite ease-in
}
.ffz-ui-popup .button.live:after {
animation: expand 1500ms infinite 750ms ease-in;
-moz-animation: expand 1500ms infinite 750ms ease-in;
-webkit-animation: expand 1500ms infinite 750ms ease-in;
-o-animation: expand 1500ms infinite 750ms ease-in
}
#dash_main #stats .stat.dark#ffz_count svg path { fill: #cacaca; }
.ffz-agdq .follow-button span.follow {
padding: 0 10px !important;
width: inherit !important;
}
.ffz-agdq span.notify { cursor: pointer; }
#ffz-agdq-popup {
background-image: url('//cdn.frankerfacez.com/channel/602race/zreknarf.png');
background-repeat: no-repeat;
background-position: 115% -75%;
background-size: 50%;
}
.ffz-live-team-channel .ffz-game {
display: inline-block;
max-width: 150px;
text-overflow: ellipsis;
overflow: hidden;
margin-bottom: -5px;
}
/* Theater Mode hover bar */
.app-main.theatre .player-column:focus .stats-and-actions, .app-main.theatre .player-column:hover .stats-and-actions {
background-color: #19191f;
color: #aaa;
position: absolute;
bottom: 10px;
margin-right: 150px;
left: 10px;
z-index: 7;
padding: 10px;
opacity: 0.95;
}
.app-main.theatre .channel-stats .stat { color: #aaa; }
.app-main.theatre .channel-stats span:not(.live-count) svg path {
fill: rgba(255,255,255,0.35) !important;
}
.app-main.theatre .follow-button .notify:before,
.app-main.theatre .button.drop:after,
.app-main.theatre .follow-button .drop.follow:after {
border: 5px solid rgba(255,255,255,0.35);
border-left-color: transparent;
border-right-color: transparent;
border-bottom-color: transparent;
}
.app-main.theatre .follow-button .notify {
background-color: #25252a;
}
.app-main.theatre .button {
color: #a68ed2;
}
.app-main.theatre .button.glyph-only svg path {
fill: #a68ed2;
}
.app-main.theatre .button.primary.subscribe-button {
color: #fff;
}
/* SRL Race Support */
#ffz-ui-race {
position: relative;
}
#ffz-ui-race .button span {
display: inline-block;
height: 30px;
background: no-repeat 0 50%;
}
#ffz-ui-race .button span.logo {
padding-left: 44px;
background-image: url("//cdn.frankerfacez.com/channel/global/srl_button.png");
}
#ffz-race-popup {
position: absolute;
bottom: 5px;
background-image: url("//cdn.frankerfacez.com/channel/602race/zreknarf.png");
background-repeat: no-repeat;
background-position: 115% 110%;
}
#ffz-race-popup.right { right: 10px; }
#ffz-race-popup .heading {
margin: -20px -20px 20px;
width: 340px; height: 65px;
position: relative;
}
#ffz-race-popup .heading div {
padding: 10px 0 0 20px;
max-width: 240px;
}
#ffz-race-popup .heading h2 {
font-size: 1.5em;
padding-bottom: 5px;
display: block;
width: 240px;
max-height: 45px;
overflow: hidden;
text-overflow: ellipsis;
}
#ffz-race-popup .heading span {
line-height: 30px;
position: absolute;
top: 17.5px;
right: 20px;
padding: 0 5px;
background: rgba(0,0,0,0.5);
color: #fff;
border-radius: 5px;
}
#ffz-race-popup .right { text-align: right; }
#ffz-race-popup .table {
overflow-y: auto;
}
#ffz-race-popup table {
width: 100%;
text-align: center;
border-spacing: 0;
}
#ffz-race-popup table a {
color: inherit;
}
.ffz-about-table a.twitch,
.ffz-about-table a.youtube,
.ffz-about-table a.twitter,
#ffz-race-popup a.twitch,
#ffz-race-popup a.hitbox {
display: inline-block;
height: 16px;
margin-left: 5px;
background-repeat: no-repeat;
}
.ffz-about-table a.youtube {
width: 23px;
background-image: url("//cdn.frankerfacez.com/channel/global/youtube_logo.png");
}
.ffz-about-table a.twitter {
width: 20px;
background-image: url("//cdn.frankerfacez.com/channel/global/twitter_logo.png");
}
#ffz-race-popup a.twitch,
.ffz-about-table a.twitch {
width: 15px;
background-image: url("//cdn.frankerfacez.com/channel/global/twitch_logo.png");
}
#ffz-race-popup a.hitbox {
width: 12px;
background-image: url("//cdn.frankerfacez.com/channel/global/hitbox_logo.png");
}
#ffz-race-popup table tbody tr.done:nth-child(0n+1) td { background-color: rgba(255,255,0,.2); }
#ffz-race-popup table tbody tr.done:nth-child(0n+2) td { background-color: rgba(128,128,128,.2); }
#ffz-race-popup table tbody tr.done:nth-child(0n+3) td { background-color: rgba(210,100,0,.2); }
#ffz-race-popup table tbody tr.forfeit td { opacity: 0.5; background-color: rgba(210,100,100,.2); }
#ffz-race-popup table tbody tr.racing td.time { opacity: 0.5; }
#ffz-race-popup table th, #ffz-race-popup td { padding: 1px; }
#ffz-race-popup table th { border-bottom: 1px solid; }
/* Menu Options */
@media screen and (max-width: 369px) {
.ember-chat-container .ember-chat .chat-interface .emoticon-selector {
right: -10px;
}
}
.ffz-ui-menu-page {
overflow-y: auto;
padding: 0 20px;
margin: 0 -20px;
}
.chat-menu.ffz-ui-popup .ffz-ui-menu-page .chat-menu-content .heading,
.chat-menu.ffz-ui-popup .ffz-ui-menu-page .emoticon-grid .heading {
margin-bottom: 5px;
border-bottom: 1px solid rgba(0,0,0, 0.2);
text-align: left;
}
.chat-menu.ffz-ui-popup .ffz-ui-menu-page .emoticon-grid .heading {
padding-left: 23px;
background-repeat: no-repeat;
}
.chat-menu.ffz-ui-popup .ffz-ui-menu-page .chat-menu-content {
padding: 10px 0;
background-color: transparent;
}
.chat-menu.ffz-ui-popup .ffz-ui-menu-page .chat-menu-content + .chat-menu-content {
padding-top: 0;
}
.ffz-ui-menu-page span.help {
display: block;
opacity: 0.75;
}
.ffz-ui-menu-page span.help, .ffz-ui-menu-page p.option a {
margin-left: 50px;
}
.ffz-ui-popup ul.menu {
list-style-type: none;
margin: -20px;
margin-bottom: 0;
border-bottom: 1px solid rgba(0,0,0,0.2);
background-color: #eee;
}
.ffz-ui-popup.dark ul.menu {
background-color: #282828;
}
.ffz-ui-menu-page .heading .right,
.ffz-ui-popup ul.menu li.item {
float: right;
}
.ffz-ui-popup ul.menu li.title {
float: left;
}
.ffz-ui-popup ul.menu li.title > span {
display: block;
padding: 10px 20px;
line-height: 16px;
}
.ffz-ui-popup ul.menu a {
display: block;
padding: 10px;
height: 16px;
margin-bottom: -1px;
cursor: pointer;
border-left: 1px solid rgba(0,0,0,0.2);
border-bottom: 1px solid transparent;
}
.ffz-ui-popup ul.menu li.active {
background-color: #fff;
}
.ffz-ui-popup ul.menu li.active a {
border-bottom-color: #fff;
}
.ffz-ui-popup.dark ul.menu li.active {
background-color: #1e1e1e;
}
.ffz-ui-popup.dark ul.menu li.active a {
border-bottom-color: #1e1e1e;
}
.ffz-ui-popup.dark .ffz-ui-menu-page a { color: #fff; }
.ffz-ui-popup.dark ul.menu svg path { fill: #d3d3d3; }
.ffz-ui-popup ul.menu svg path { fill: #333; }
/* Chat Mentions */
.ember-chat .mentioned:empty,
.ember-chat .mentioning:empty {
display: none;
}
.ffz-chat-background .ember-chat .mentioning,
.ffz-chat-background .ember-chat .mentioned {
border-radius: 10px;
padding: 3px 7px;
font-weight: bold;
color: #32323e;
background-color: rgba(255,255,255, 0.75);
}
.ffz-chat-background .app-main.theatre .chat-container .chat-line .mentioned,
.ffz-chat-background .ember-chat-container.dark .chat-line .mentioned,
.ffz-chat-background .chat-container.dark .chat-line .mentioned,
.ffz-chat-background .app-main.theatre .chat-container .chat-line .mentioning,
.ffz-chat-background .ember-chat-container.dark .chat-line .mentioning,
.ffz-chat-background .chat-container.dark .chat-line .mentioning {
color: #8c8c9c;
background-color: rgba(16,16,20, 0.75);
}
/* Fix Moderation Cards */
.ember-chat .ffz-moderation-card {
box-shadow: #808080 0 0 5px;
}
.ember-chat .ffz-moderation-card button {
margin: 0;
padding: 0 5px;
}
.ember-chat .ffz-moderation-card button:not(.glyph-only):hover,
.ember-chat .ffz-moderation-card button:not(.glyph-only):focus {
color: #fff;
background-color: rgba(117,80,186, 1);
}
.ember-chat .ffz-moderation-card button.message {
height: 30px; width: 28px;
}
.ember-chat .ffz-moderation-card.ffz-is-mod .interface .mod-controls:last-of-type,
.ember-chat .ffz-moderation-card .interface span.right {
float: right;
}
.ember-chat .ffz-moderation-card:focus {
outline: none;
box-shadow: #000 0 0 5px;
}
.ember-chat-container.dark .ember-chat .ffz-moderation-card:focus,
.chat-container.dark .ember-chat .ffz-moderation-card:focus,
.app-main.theatre .ember-chat .ffz-moderation-card:focus {
box-shadow: #fff 0 0 5px;
}
.ember-chat-container.dark .ember-chat .ffz-moderation-card .interface,
.chat-container.dark .ember-chat .ffz-moderation-card .interface,
.app-main.theatre .ember-chat .ffz-moderation-card .interface {
background-color: #232329;
}
.ember-chat .ffz-moderation-card .interface:not(:last-of-type) {
border-bottom: none;
padding-bottom: 0;
}
.ember-chat .ffz-moderation-card .interface {
border-top: none;
}
.ember-chat .ffz-moderation-card h3.name {
display: inline-block;
text-shadow: black 0 0 5px;
}
.ember-chat .ffz-moderation-card .channel_background {
width: 100%;
top: 0;
}
/* Chat Rows */
.ffz-chat-background .more-messages-indicator {
/* This looks better when it's full width. */
margin: 0 -20px;
}
.ffz-chat-background .chat-line .message {
word-break: break-word;
}
.ffz-chat-background .ember-chat .chat-messages .tse-scroll-content {
padding: 0;
}
.ffz-chat-background .ember-chat .chat-messages .chat-line {
padding-left: 20px;
padding-right: 20px;
}
.ffz-chat-background .ember-chat .chat-messages .chat-line.ffz-alternate {
background-color: rgba(0,0,0, 0.1);
}
.ffz-chat-background .ember-chat .chat-messages .chat-line.ffz-mentioned {
background-color: rgba(255,127,127, 0.2);
}
.ffz-chat-background .ember-chat .chat-messages .chat-line.ffz-mentioned.ffz-alternate {
background-color: rgba(255,127,127, 0.4);
}
.ffz-chat-background .app-main.theatre .ember-chat .chat-messages .chat-line.ffz-alternate,
.ffz-chat-background .chat-container.dark .ember-chat .chat-messages .chat-line.ffz-alternate,
.ffz-chat-background .ember-chat-container.dark .ember-chat .chat-messages .chat-line.ffz-alternate {
background-color: rgba(255,255,255, 0.05);
}
.ffz-chat-background .app-main.theatre .ember-chat .chat-messages .chat-line.ffz-mentioned,
.ffz-chat-background .chat-container.dark .ember-chat .chat-messages .chat-line.ffz-mentioned,
.ffz-chat-background .ember-chat-container.dark .ember-chat .chat-messages .chat-line.ffz-mentioned {
background-color: rgba(255,0,0, 0.2);
}
.ffz-chat-background .app-main.theatre .ember-chat .chat-messages .chat-line.ffz-mentioned.ffz-alternate,
.ffz-chat-background .chat-container.dark .ember-chat .chat-messages .chat-line.ffz-mentioned.ffz-alternate,
.ffz-chat-background .ember-chat-container.dark .ember-chat .chat-messages .chat-line.ffz-mentioned.ffz-alternate {
background-color: rgba(255,0,0, 0.3);
}
/* Emoticon Tooltips */
.tipsy table.emote-data td { padding: 0 2px; }
.tipsy table.emote-data td:first-of-type {
text-align: right;
font-weight: bold;
padding-left: 0;
}
.tipsy table.emote-data td:last-of-type {
text-align: left;
padding-right: 0;
white-space: nowrap;
}
.tipsy table.emote-data td.center { text-align: center; }
/* Menu Page Loader */
.ffz-ui-menu-page:empty {
overflow: hidden;
}
.ffz-ui-menu-page:empty::after {
content: " ";
display: block;
width: 80px;
height: 63px;
background-image: url("//cdn.frankerfacez.com/script/spinner-dark.png");
margin: 50px auto;
-webkit-animation: ffz-rotateplane 1.2s infinite linear;
animation: ffz-rotateplane 1.2s infinite linear;
}
@-webkit-keyframes ffz-rotateplane {
0% { -webkit-transform: perspective(120px) rotateY(90deg) }
25% { -webkit-transform: perspective(120px) rotateY(180deg) }
75% { -webkit-transform: perspective(120px) rotateY(180deg) rotateX(180deg) }
100% { -webkit-transform: perspective(120px) rotateY(90deg) rotateX(180deg) }
}
@keyframes ffz-rotateplane {
0% { transform: perspective(120px) rotateY(90deg) }
25% { transform: perspective(120px) rotateY(180deg) }
75% { transform: perspective(120px) rotateY(180deg) rotateX(180deg) }
100% { transform: perspective(120px) rotateY(90deg) rotateX(180deg) }
}
/* Menu About Page */
.ffz-about-table {
width: 100%;
}
.ffz-about-table td:first-child {
text-align: left;
width: 100%;
}
.ffz-about-table .debug td {
padding-top: 10px;
opacity: 0.8;
font-size: 10px;
}
.ffz-about-subheading {
/*text-transform: uppercase;*/
letter-spacing: 2px;
margin: -5px 0 5px;
}
.button.ffz-donate {
margin-left: 10px;
background: #00b132;
color: #fff !important;
padding: 0 10px;
font-size: 12px;
}
.button.ffz-donate:not(.disabled):hover {
background: #08c43d;
}