@mixin fade-in { opacity: 0; /* make things invisible upon start */ @include animation-name(fadein); @include animation-fill-mode(forwards); @include animation-duration(0.75s); @include animation-timing-function(ease); } body.converse-fullscreen { margin: 0; background-color: var(--global-background-color); } #conversejs-bg { .converse-brand { display: flex; justify-content: space-between; margin-top: 15vh; @include animation-name(fadein); @include animation-fill-mode(forwards); @include animation-duration(5s); @include animation-timing-function(ease); } .converse-brand__padding { @include make-col-ready(); @include media-breakpoint-up(md) { @include make-col(4); } @include media-breakpoint-up(lg) { @include make-col(3); } @include media-breakpoint-up(xl) { @include make-col(2); } padding: 0; } .converse-brand__heading { @include make-col-ready(); @include media-breakpoint-up(md) { font-size: 4em; @include make-col(8); } @include media-breakpoint-up(lg) { font-size: 5em; @include make-col(9); } @include media-breakpoint-up(xl) { font-size: 6em; @include make-col(10); } padding: 0; display: flex; justify-content: center; margin: auto; svg { margin-top: 0.3em; } } .converse-brand__text { color: #ffffff; font-family: var(--branding-font); font-weight: normal; text-align: center; font-size: 140%; margin-left: 0.2em; .byline { margin: 0; font-family: var(--heading-font); font-size: 0.3em; opacity: 0.55; margin-bottom: 2em; margin-left: -2.7em; word-spacing: 5px; } } } #conversejs-bg, #conversejs { .subdued { opacity: 0.35; } } #conversejs { bottom: 0; height: 100%; position: fixed; padding-left: env(safe-area-inset-left); padding-right: env(safe-area-inset-right); color: var(--text-color); font-family: var(--normal-font); font-size: var(--font-size); direction: ltr; z-index: 1031; // One more than bootstrap navbar textarea:disabled { background-color: #EEE !important; } .nopadding { padding: 0 !important; } &.converse-overlayed { > .row { flex-direction: row-reverse; } } &.converse-fullscreen, &.converse-mobile { .converse-chatboxes { width: 100vw; left: -15px; // Hack due to padding added by bootstrap } } &.converse-overlayed { height: 3em; } &.converse-embedded { @include box-sizing(border-box); *, *:before, *:after { @include box-sizing(border-box); } bottom: auto; height: 100%; // When embedded, it fills the containing element position: relative; right: auto; width: 100%; } .brand-heading-container { text-align: center; } .brand-heading { display: inline-flex; flex-direction: row; align-items: flex-start; font-family: var(--branding-font); color: var(--link-color); margin-bottom: 1em; .brand-name { color: var(--link-color); display: flex; flex-direction: column; align-items: center; margin-top: -0.5em; } .brand-name__text { font-size: 120%; vertical-align: text-bottom; } .converse-svg-logo { color: var(--link-color); height: 1.5em; margin-right: 0.25em; margin-bottom: -0.25em; .cls-1 { isolation: isolate; } .cls-2 { opacity: 0.5; mix-blend-mode: multiply; } .cls-3 { fill: var(--link-color); } .cls-4 { fill: var(--link-color); } } } .brand-heading--inverse { .converse-svg-logo { margin-bottom: 0em; margin-top: -0.2em; } .byline { margin: 0; font-family: var(--heading-font); font-size: 0.25em; opacity: 0.55; margin-left: -7em; word-spacing: 5px; } } .popover { position: fixed; } .converse-chatboxes { z-index: 1031; // One more than bootstrap navbar position: fixed; bottom: 0; right: 0; } ::-webkit-input-placeholder { /* Chrome/Opera/Safari */ color: var(--subdued-color); } ::-moz-placeholder { /* Firefox 19+ */ color: var(--subdued-color); } :-ms-input-placeholder { /* IE 10+ */ color: var(--subdued-color); } :-moz-placeholder { /* Firefox 18- */ color: var(--subdued-color); } ::placeholder { color: var(--subdued-color); } ::selection { background-color: var(--highlight-color); } ::-moz-selection { background-color: var(--highlight-color); } @media screen and (max-width: $mobile-portrait-length) { margin: 0; right: 10px; left: 10px; bottom: 5px; } @media screen and (max-height: $mobile-landscape-height) { margin: 0; right: 10px; left: 10px; bottom: 5px; } ul li { height: auto; } div, span, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, em, img, strong, dl, dt, dd, ol, ul, li, fieldset, form, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font: inherit; vertical-align: baseline; } textarea, input[type=submit], input[type=button], input[type=text], input[type=password], button { font-size: var(--font-size); min-height: 0; } strong { font-weight: 700; } em { font-style: italic; } ol, ul { list-style: none; } li { height: 10px; } ul, ol, dl { font: inherit; margin: 0; } a, a:visited, a:not([href]):not([tabindex]) { text-decoration: none; color: var(--link-color); text-shadow: none; &:hover { color: var(--link-color-darken-20-percent); text-decoration: none; text-shadow: none; } &.fa, &.far, &.fas { color: var(--subdued-color); &:hover { color: var(--gray-color); } } } svg { border-radius: var(--chatbox-border-radius); } .fa, .far, .fas { color: var(--subdued-color); } .fa:hover, .far:hover, .fas:hover { color: var(--gray-color); } .modal { background-color: rgba(0, 0, 0, 0.4); .modal-body { p { padding: 0.25rem 0; } } .modal-footer { justify-content: flex-start; } } .selected { color: var(--link-color) !important; } .circle { border-radius: 50%; } .badge { line-height: 1; font-weight: normal; font-size: 90%; } .btn { font-weight: normal; color: #fff; .fa, .far, .fas { color: #fff; margin-right: 0.5em; } } .no-text-select { -webkit-touch-callout: none; @include user-select(none); } @keyframes colorchange-chatmessage { 0% {background-color: rgba(141, 216, 174, 1);} 25% {background-color: rgba(141, 216, 174, 0.75);} 50% {background-color: rgba(141, 216, 174, 0.5);} 75% {background-color: rgba(141, 216, 174, 0.25);} 100% {background-color: transparent;} } @-webkit-keyframes colorchange-chatmessage { 0% {background-color: rgba(141, 216, 174, 1);} 25% {background-color: rgba(141, 216, 174, 0.75);} 50% {background-color: rgba(141, 216, 174, 0.5);} 75% {background-color: rgba(141, 216, 174, 0.25);} 100% {background-color: transparent;} } @keyframes colorchange-chatmessage-muc { 0% {background-color: rgba(255, 181, 162, 1);} 25% {background-color: rgba(255, 181, 162, 0.75);} 50% {background-color: rgba(255, 181, 162, 0.5);} 75% {background-color: rgba(255, 181, 162, 0.25);} 100% {background-color: transparent;} } @-webkit-keyframes colorchange-chatmessage-muc { 0% {background-color: rgba(255, 181, 162, 1);} 25% {background-color: rgba(255, 181, 162, 0.75);} 50% {background-color: rgba(255, 181, 162, 0.5);} 75% {background-color: rgba(255, 181, 162, 0.25);} 100% {background-color: transparent;} } @keyframes fadein { 0% { opacity: 0 } 100% { opacity: 1 } } @-webkit-keyframes fadein { 0% { opacity: 0 } 100% { opacity: 1 } } @-webkit-keyframes fadeOut { 0% { opacity: 1; visibility: visible; } 100% { opacity: 0; visibility: hidden; } } @keyframes fadeOut { 0% { opacity: 1; visibility: visible; } 100% { opacity: 0; visibility: hidden; } } .fade-in { @include fade-in; } .visible { opacity:0; /* make things invisible upon start */ @include animation-name(fadein); @include animation-fill-mode(forwards); @include animation-duration(500ms); @include animation-timing-function(ease); } .hidden { opacity: 0 !important; display: none !important; } .fade-out { animation-duration: 0.5s; animation-fill-mode: forwards; animation-name: fadeOut; animation-timing-function: ease-in-out; } .collapsed { height: 0 !important; overflow: hidden !important; padding: 0 !important; } .locked { padding-right: 22px; } @include keyframes(spin) { from { @include transform(rotate(0deg)); } to { @include transform(rotate(359deg)); } } .spinner { @include animation(spin 2s infinite, linear); width: 1em; display: block; text-align: center; margin: 2em; font-size: 24px; } .left { float: left; } .right { float: right; } .centered { text-align: center; display: block; margin: auto; } .hor_centered { text-align: center; display: block; margin: 0 auto; clear: both; } .error { color: var(--error-color); } .info { color: var(--info-color); } .reg-feedback { font-size: 85%; margin-bottom: 1em; } .reg-feedback, #converse-login .conn-feedback { display: block; text-align: center; width: 100%; } .avatar { border-radius: var(--avatar-border-radius); border: var(--avatar-border); background-color: var(--avatar-background-color); } .activated { display: block !important; } .nav-pills .nav-link.active, .nav-pills .show > .nav-link { background-color: var(--primary-color); } .list-group-item.active { background-color: var(--primary-color); border-color: var(--primary-color-dark); } .badge { text-shadow: none; color: white; } .badge-light { color: var(--text-color); } .btn-primary, .button-primary, .badge-primary { background-color: var(--primary-color); border-color: transparent; &:hover { background-color: var(--primary-color-dark); border-color: transparent; } &.active { background-color: var(--primary-color-dark) !important; border-color: transparent !important; } } .badge-groupchat { background-color: var(--chatroom-badge-color); border-color: transparent; &:hover { background-color: var(--chatroom-badge-hover-color); border-color: transparent; } &.active { background-color: var(--chatroom-badge-hover-color) !important; border-color: transparent !important; } } .btn-info, .badge-info { background-color: var(--primary-color); border-color: var(--primary-color); &:hover { background-color: var(--primary-color-dark); border-color: var(--primary-color-dark); } } .button-cancel, .btn-secondary, .badge-secondary { color: white; background-color: var(--secondary-color); border-color: var(--secondary-color); &:hover { background-color: var(--secondary-color-dark); border-color: var(--secondary-color-dark); } } .btn-warning { color: white; background-color: var(--warning-color); border-color: var(--warning-color); &:hover { color: white; background-color: var(--warning-color-dark); border-color: var(--warning-color-dark) } } .btn-danger { color: white; background-color: var(--danger-color); border-color: var(--danger-color) !important; &:hover { background-color: var(--danger-color-dark); border-color: var(--danger-color-dark); } } } @media screen and (max-width: 575px) { body { .converse-brand { font-size: 3.75em; } } #conversejs:not(.converse-embedded) { .chatbox { .chat-body { border-radius: var(--chatbox-border-radius); } } .flyout { border-radius: var(--chatbox-border-radius); } } } @media screen and (min-width: 576px) { #conversejs .offset-sm-2 { margin-left: 16.666667%; } } @media screen and (min-width: 768px) { #conversejs .offset-md-2 { margin-left: 16.666667%; } #conversejs .offset-md-3 { margin-left: 25%; } } @media screen and (min-width: 992px) { #conversejs .offset-lg-2 { margin-left: 16.666667%; } #conversejs .offset-lg-3 { margin-left: 25%; } } @media screen and (min-width: 1200px) { #conversejs .offset-xl-2 { margin-left: 16.666667%; } } @media screen and (max-height: 450px) { #conversejs { left: 0; } }