@charset "UTF-8";

/*
 * Favorite Colors
 * rgb(51,  122,  183) - #337ab7
 * rgb(76,  159,  224) - #4c9fe0
 * rgb(83,  105,  255) - #5369ff
 */

:root {
  /* Colors */
  --cx-color-red: rgb(255, 0, 0);
  --cx-color-blue: rgb(0, 0, 255);
  --cx-color-green: rgb(0, 255, 0);
  --cx-color-yellow: rgb(255, 255, 0);
  --cx-color-orange: rgb(255, 165, 0);
  --cx-color-purple: rgb(128, 0, 128);
  --cx-color-white: rgb(255, 255, 255);
  --cx-color-gray: rgb(128, 128, 128);
  --cx-color-black: rgb(0, 0, 0);
  --cx-color-transparent: rgba(0, 0, 0, 0);
  /* Greys */
  --cx-color-extra-dark-gray: rgb(34, 34, 34);
  --cx-color-dark-gray: rgb(64, 64, 64);
  --cx-color-medium-gray: rgb(180, 180, 180);
  --cx-color-light-gray: rgb(204, 204, 204);
  --cx-color-extra-light-gray: rgb(238, 238, 238);
  /* Icons - Not used but just to remember */
  --cx-icon-class-a: #5369ff;
  --cx-icon-class-b: #292929;
  --cx-icon-class-c: #999999;
  --cx-icon-class-r: #ff0000;
  /* Coding colors */
  --cx-code-key: rgb(215, 48, 39);
  --cx-code-value: rgb(69, 117, 180);
  --cx-code-string: rgb(168, 82, 2);
  --cx-code-number: rgb(69, 117, 180);
  --cx-code-boolean: rgb(102, 102, 0);
  --cx-code-null: rgb(69, 117, 180);
  --cx-code-comment: rgb(58, 115, 0);
  /* Favorite UI colors */
  --cx-color-ui-background: rgba(255, 255, 255, 0.95);
  --cx-color-ui-font: rgb(34, 34, 34);
  --cx-color-widgets: rgb(83, 105, 255);
  --cx-color-widgets-hover: rgba(83, 105, 255, 0.1);
  /* Favorite UI Styles - Not used but just to remember */
  --cx-color-modern: rgb(83, 105, 255);
  --cx-color-modern-hover: rgba(83, 105, 255, 0.1) ;
  --cx-color-stripped: rgb(230, 230, 230) ;
  --cx-color-stripped-hover: rgba(180, 180, 180, 0.3);
  --cx-color-old: linear-gradient(rgb(240, 240, 240), rgb(230, 230, 230));
  --cx-color-old-hover: rgba(230,230,230,0.1);
  --cx-color-bms: rgb(190, 43, 187);
  --cx-color-bms-hover: rgba(190, 43, 187, 0.1);
  --cx-color-bms2: rgb(89, 84, 84);
  --cx-color-bms2-hover: rgba(89, 84, 84, 0.1);
  /* UI: These are the exposed variables */
  --cx-font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif !important;
  --cx-border-radius: 5px;
  --cx-border-width: 1px;
  --cx-border-style: solid;
  --cx-border-transparent: var(--cx-border-width) var(--cx-border-style) var(--cx-color-transparent);
  /* Font */
  --cx-small-font-size: 9px;
  --cx-font-size: 12px;
  --cx-large-font-size: 13px;
  --cx-x-large-font-size: 15px;
  --cx-font-color: var(--cx-color-ui-font);
  --cx-font: normal var(--cx-font-size) var(--cx-font-family);
  --cx-large-font: normal var(--cx-large-font-size) var(--cx-font-family);
  --cx-x-large-font: normal var(--cx-x-large-font-size) var(--cx-font-family);
  --cx-font-bold: bold var(--cx-font-size) var(--cx-font-family);
  --cx-large-font-bold: bold var(--cx-large-font-size) var(--cx-font-family);
  --cx-x-large-font-bold: bold var(--cx-x-large-font-size) var(--cx-font-family);
  --cx-font-italic: italic var(--cx-font-size) var(--cx-font-family);
  --cx-large-font-italic: italic var(--cx-large-font-size) var(--cx-font-family);
  --cx-x-large-font-italic: italic var(--cx-x-large-font-size) var(--cx-font-family);
  --cx-small-font-italic: italic var(--cx-small-font-size) var(--cx-font-family);
  /* Background */
  --cx-background-widgets-color: var(--cx-color-ui-background);
  --cx-background-color: var(--cx-color-widgets);
  --cx-background-hover-color: var(--cx-color-widgets-hover);
  --cx-background-border-hover-color: var(--cx-color-white);
  --cx-background-accent-color: var(--cx-color-widgets-hover);
  --cx-background-contrast-color: var(--cx-background-color);
  /* Border */
  --cx-border: var(--cx-border-width) var(--cx-border-style) var(--cx-color-widgets);
  /* Callouts */
  --cx-callout-size: 8px;
  --cx-callout-radius: 10px;
  --cx-callout-border-width: 1px;
  --cx-callout-background-color: var(--cx-color-ui-background);
  --cx-callout-border-color: var(--cx-color-widgets);
}

*,
:after,
:before {
  box-sizing: border-box;
}

input[type="color"]::-webkit-color-swatch-wrapper {
  padding: 0;
}

input[type="color"]::-webkit-color-swatch {
  border: none;
}

.unselectable,
img,
svg,
img.cX-code,
svg.cX-code,
pre.cX-code-content code::before,
div.cX-bin,
div.cX-bin-container,
div.cX-bin-name-container,
table.cX-bin-table,
span.cX-bin,
div.CanvasXpressDataTable,
div.CanvasXpressDataTableToolbar,
div.CanvasXpressDataTableContainer,
div.CanvasXpressDataTableVertical,
div.CanvasXpressDataTableHorizontal,
div.CanvasXpressDataTableMask,
img.CanvasXpressDataTableToolbarImage,
svg.CanvasXpressDataTableToolbarImage,
img.CanvasXpressDataTableToolbarImageNB,
svg.CanvasXpressDataTableToolbarImageNB,
svg.CanvasXpressDataTableToolbarImageLogo,
table.CanvasXpressDataTable,
th.CanvasXpressTableCellHead,
th.CanvasXpressTableCellHeadActive,
td.CanvasXpressTableCell,
td.CanvasXpressTableCellActive,
a.CanvasXpressTableCellHead,
a.CanvasXpressTableCellHeadActive,
div.CanvasXpressDataFilter,
div.CanvasXpressDataFilterToolbar,
div.CanvasXpressDataFilterHead,
div.CanvasXpressDataFilterHeadActive,
div.CanvasXpressToolbar img.CanvasXpressToolbarImage,
div.CanvasXpressToolbar svg.CanvasXpressToolbarImage,
div.CanvasXpressMarker {
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Safari */
  -khtml-user-select: none;
  /* Konqueror HTML */
  -moz-user-select: none;
  /* Old versions of Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently supported by Chrome, Edge, Opera and Firefox */
}

/*****************
 * SVG No border *
 *****************/

svg.cX-bin,
svg.cX-code,
svg.cX-chat,
img.CanvasXpressDataFilterToolbarImage,
svg.CanvasXpressDataFilterToolbarImage,
img.CanvasXpressDataFilterToolbarImageNB,
svg.CanvasXpressDataFilterToolbarImageNB {
  background: var(--cx-color-transparent) !important;
  border: none !important;
  box-shadow: 0 0 0px var(--cx-color-transparent) !important;
  cursor: default;
  float: right;
  margin: 5px 8px 0px 0px !important;
}

/*****************
 *  SVG  Border  *
 *****************/

svg.cX-code {
  border-radius: 5px;
  border: var(--cx-border) !important;
  padding: 5px;
}

/*****************
 * Loading Timer *
 *****************/

.cX-loading {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
}

.cX-loading div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 64px;
  height: 64px;
  margin: 8px;
  border: 8px solid var(--cx-color-widgets);
  border-radius: 50%;
  animation: cX-loading 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: var(--cx-color-widgets) transparent transparent transparent;
}

.cX-loading div:nth-child(1) {
  animation-delay: -0.45s;
}

.cX-loading div:nth-child(2) {
  animation-delay: -0.3s;
}

.cX-loading div:nth-child(3) {
  animation-delay: -0.15s;
}

@keyframes cX-loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/*****************
 *     Code      *
 *****************/

.cX-code-key {
  color: var(--cx-code-key);
  font-weight: bold;
}

.cX-code-value {
  color: var(--cx-code-value);
}

.cX-code-string {
  color: var(--cx-code-string);
}

.cX-code-number {
  color: var(--cx-code-number);
}

.cX-code-boolean {
  color: var(--cx-code-boolean);
}

.cX-code-null {
  color: var(--cx-code-null);
}

.cX-code-comment {
  color: var(--cx-code-comment);
}

div.cX-code,
div.cX-code-container,
div.cX-code-content,
div.cX-code-error {
  box-sizing: border-box;
}

div.cX-code {
  border: var(--cx-border);
  border-radius: 5px;
  background-color: var(--cx-color-extra-light-gray);
  cursor: move;
  color: var(--cx-font-color);
  font: var(--cx-font);
  margin: 2px 3px;
  padding: 10px 20px 20px 10px;
  position: absolute;
  white-space: nowrap;
}

div.cX-code-container {
  clear: both;
  width: 600px;
  overflow: auto;
  resize: horizontal;
  background-color: var(--cx-color-white);
  position: relative;
  top: 10px;
}

div.cX-code-content {
  margin: 2px 3px;
  padding: 2px 3px;
}

div.cX-code-error {
  height: 36px;
  width: 300px;
  float: left;
  clear: none;
  resize: none;
  top: 5px;
  left: 20px;
  background-color: var(--cx-color-extra-light-gray);
  overflow: hidden;
  white-space: normal;
  color: var(--cx-color-red);
  position: relative;
  cursor: pointer;
}

pre.cX-code,
pre.cX-code-content,
pre.cX-code-content code {
  padding: 0;
  margin: 0;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  border: none;
}

pre.cX-code {
  text-align: left;
  word-break: inherit;
  word-wrap: inherit;
  background-color: inherit;
  border-radius: inherit;
  counter-reset: line;
}

pre.cX-code-content {
  white-space: pre;
  outline: none;
  cursor: text;
  font-size: small;
}

pre.cX-code-content:before {
  counter-reset: listing;
}

pre.cX-code-content code {
  counter-increment: listing;
  line-height: 1.5;
}

pre.cX-code-content code::before {
  content: counter(listing) " ";
  display: inline-block;
  width: 3em;
  border-right: 1px solid rgb(221, 221, 221);
  text-align: right;
  background-color: var(--cx-color-extra-light-gray);
}

/******************
 * Chat Interface *
 ******************/

div.cX-chat {
  border: none;
  background-color: var(--cx-color-transparent);
  max-width: 600px;
  min-height: 100px;
  margin: 10px auto 0 auto;
}

div.cX-chat-container {
  border: none;
  border-radius: 10px;
  background-color: var(--cx-color-extra-light-gray);
  color: var(--cx-font-color);
  font: var(--cx-x-large-font);
  display: flex;
  align-items: center;
}

div.cX-chat-container-text {
  float: left;
  border: none;
  background-color: var(--cx-color-transparent);
  min-height: 50px;
}

p.cX-chat-question {
  border: none;
  background-color: var(--cx-color-extra-light-gray);
  margin: 0;
  display: inline;;
}

[contenteditable] {
  outline: 0px solid transparent;
}

div.cX-chat-container-icon {
  float: right;
  border: none;
  background-color: var(--cx-color-transparent);
}

div.cX-chat-container-thumbs {
  float: left;
  border: none;
  background-color: var(--cx-color-transparent);
  margin: 0;
}

svg.cX-chat-thumbs {
  background: var(--cx-color-transparent) !important;
  border: none !important;
  box-shadow: 0 0 0px var(--cx-color-transparent) !important;
  cursor: default;
  float: left;
}

/****************
 * LLM Examples *
 ****************/

div.cX-LLM-window {
  position: absolute;
  border: 1px solid #555555;
  max-width: 545px;
  overflow: hidden;
  border-radius: 5px;
  background-color: var(--cx-color-extra-light-gray);
  z-index: 10000;
}

a.cX-LLM-window-close {
  position: sticky;
  top: 0;
  left: 500px;
  font-size: xx-large;
}

div.cX-LLM-examples {
  position: relative;
  overflow: scroll;
  max-height: 1000px;
}

div.cX-LLM-content {
  top: 25px;
  left: 25px;
  position: absolute;
}

div.cX-LLM-container {
  border: 1px solid #d3d3d3;
  position: relative;
  border-radius: 4px;
  background: white;
  float: left;
  margin: 5px;
  max-width: 810px;
}

div.cX-LLM-title {
  position: relative;
  height: 40px;
  line-height: 40px;
  border-radius: 4px;
  font-size: 22px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-align: center !important;
  font-weight: bold;
  border-bottom: 1px solid var(--cx-color-light-gray);
}

div.cX-LLM-plot {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 8px;
}

/***************
 *   Bin Data  *
 ***************/

div.cX-bin,
div.cX-bin-name-container {
  border: var(--cx-border);
  border-radius: 5px;
  background-color: var(--cx-background-widgets-color);
  box-sizing: border-box;
}

div.cX-bin {
  cursor: move;
  color: var(--cx-font-color);
  font: var(--cx-large-font);
  margin: 2px 3px;
  padding: 2px 3px 5px 3px;
  position: absolute;
  white-space: nowrap;
}

div.cX-bin-container {
  background-color: var(--cx-background-widgets-color);
  box-sizing: border-box;
  clear: both;
  text-align: left;
  display: flex;
  flex-direction: column;
}

div.cX-bin-name-container {
  box-sizing: border-box;
  border: none;
  max-height: 400px;
  overflow-y: auto;
  padding: 5px;
}

input.cX-bin {
  background-color: var(--cx-background-widgets-color);
  border: var(--cx-border);
  color: var(--cx-font-color);
  cursor: default;
  font: var(--cx-large-font);
  line-height: 24px;
  padding-left: 3px;
  border-radius: 5px;
  margin: 3px;
}

input.cX-bin-button {
  float: left;
  background-color: var(--cx-background-hover-color);
  border: var(--cx-border);
  border-radius: 5px;
  color: var(--cx-font-color);
  cursor: pointer;
  font: var(--cx-large-font-bold);
  line-height: 24px;
  margin: 0px 10px 10px 10px;
  padding: 3px;
}

table.cX-bin-table {
  border-collapse: collapse !important;
  color: var(--cx-font-color);
  cursor: default;
  font: var(--cx-large-font-bold);
  line-height: 24px;
}

th.cX-bin {
  text-align: center;
  line-height: 24px;
  color: var(--cx-font-color);
  background-color: var(--cx-background-hover-color);
  border: var(--cx-border);
  font: var(--cx-large-font-bold);
}

span.cX-bin {
  font: var(--cx-large-font-bold);
  color: var(--cx-font-color);
  margin-left: 5px;
}

svg.cX-bin::selection,
span.cX-bin::selection {
  background: var(--cx-color-transparent) !important;
  border: 0px none !important;
  box-shadow: 0 0 0px var(--cx-color-transparent) !important;
  color: rgb(0, 0, 0);
  margin: 0px !important;
}

/* BEGIN OF CUSTOMIZER CSS */
/* https://cssgrid-generator.netlify.app/ */

/*
 * CanvasXpress Customizer
 */

.customizerPanelLeft {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr 8fr 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  position: fixed;
  z-index: 10001;
  line-height: 100%;
  /*height: calc(100% - 5px);*/
  background-color: rgb(255, 255, 255);
  font-family: var(--cx-font-family);
  font-weight: normal;
  color: var(--cx-font-color);
}

.customizerLeftPanelTop,
.customizerLeftPanelBottom {
  background: var(--cx-background-color);
  border-top: var(--cx-border) !important;
  border-left: var(--cx-border) !important;
  border-bottom: var(--cx-border) !important;
  border-right: none !important;
}

.customizerLeftPanelTop {
  grid-area: 1 / 1 / 2 / 2;
  border-top-left-radius: 10px;
}

.customizerLeftPanelBottom {
  grid-area: 3 / 1 / 4 / 2;
  border-bottom-left-radius: 10px;
}

.customizerLeftPanelMiddle {
  grid-area: 2 / 1 / 3 / 2;
  background: var(--cx-color-transparent);
}

.customizerLeftPanelTop .customizerLeftItem:hover svg,
.customizerLeftPanelTop .customizerLeftItemActive svg,
.customizerLeftPanelBottom .customizerLeftItem:hover svg,
.customizerLeftPanelBottom .customizerLeftItemActive svg {
  border: 1px solid rgb(255, 255, 255) !important;
  background: var(--cx-color-transparent);
}

.customizerRightPanel {
  background: var(--cx-color-transparent);
  position: absolute;
  z-index: 10000;
  line-height: 100%;
  top: 0px;
  font-family: var(--cx-font-family);
  font-weight: normal;
  color: var(--cx-font-color);
}

.customizerRightPanel {
  border-left: var(--cx-border) !important;
  border-right: var(--cx-border)!important;
}

/*
 * CanvasXpress Customizer Left Items
 */

.customizerLeftItem,
.customizerLeftItemActive,
.customizerLeftItemNB {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr 4fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  margin: 5px;
  border-radius: 5px;
  align-items: center;
}

.customizerLeftItem,
.customizerLeftItemActive {
  border: var(--cx-border) !important;
}

.customizerLeftItem:hover,
.customizerLeftItemActive {
  background: var(--cx-background-hover-color);
}

.customizerLeftItem:hover svg,
.customizerLeftItemActive svg {
  background: rgb(255, 255, 255);
}

.customizerLeftItemNB:hover svg {
  border-color: var(--cx-background-border-hover-color) !important;
  background: var(--cx-background-hover-color) !important;
}

.customizerLeftItemTop {
  grid-area: 1 / 1 / 2 / 2;
  margin: auto;
  margin-top: 5px;
}

.customizerLeftItemBottom {
  grid-area: 2 / 1 / 3 / 2;
  margin: auto;
}

.customizerLeftIcon,
.customizerLeftIconNB {
  padding: 5px;
  border-radius: 5px;
}

.customizerLeftIconNB {
  border-width: 1px;
  border-style: solid;
  border-color: var(--cx-background-color);
}

.customizerLeftIcon {
  border: var(--cx-border) !important;
}

/*
 * CanvasXpress Customizer Right Items
 */

.customizerRightItem {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 3fr 2fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  border-radius: 5px;
  width: 95%;
}

.customizerRightItem {
  border: var(--cx-border) !important;
}

.customizerRightItemTop {
  grid-area: 1 / 1 / 2 / 2;
  padding-top: 5px;
  margin: auto;
}

.customizerRightItemBottom {
  display: grid;
  grid-area: 2 / 1 / 3 / 2;
  margin: auto;
}

/*
 * CanvasXpress Customizer Right Items Comb
 */

.customizerRightItemCombo {
  display: grid;
  grid-template-columns: 1fr 5fr;
  grid-template-rows: 2fr 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

.customizerRightItemCombo {
  border-top: var(--cx-border);
}

.customizerRightItemComboNB {
  display: grid;
  grid-template-columns: 1fr 5fr;
  grid-template-rows: 2fr 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  border: none !important;
}

.customizerRightItemComboLeft {
  grid-area: 1 / 1 / 3 / 2;
  display: flex;
  align-items: center;
  justify-content: center;
}

.customizerRightItemComboTopRight {
  grid-area: 1 / 2 / 2 / 3;
  display: flex;
  align-items: center;
  justify-content: center;
}

.customizerRightItemComboBottomRight {
  grid-area: 2 / 2 / 3 / 3;
  display: flex;
  align-items: center;
  padding-left: 15px;
  padding-bottom: 2px;
}

/*
 * CanvasXpress Customizer Right Item Header
 */

.customizerRightItemHeader,
.customizerRightItemHeaderNB {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 2fr 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  color: var(--cx-font-color);
  padding-left: 5px;
}

.customizerRightItemHeader,
.customizerRightItemHeaderNB {
  background: var(--cx-background-hover-color);
}

.customizerRightItemHeader {
  border-bottom: var(--cx-border) !important;
}

.customizerRightItemHeaderNB {
  border-bottom: none !important;
}

.customizerRightItemHeaderTop {
  grid-area: 1 / 1 / 2 / 2;
  display: flex;
  align-items: center;
}

.customizerRightItemHeaderBottom {
  grid-area: 2 / 1 / 3 / 2;
  display: flex;
  align-items: center;
  padding-left: 10px;
  overflow: auto;
}

.customizerRightItemHeaderMain {
  grid-area: 1 / 1 / 3 / 2;
  display: flex;
  align-items: center;
}

/*
 * CanvasXpress Customizer Right Item Sub Header
 */

.customizerRightItemSubHeader {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

.customizerRightItemSubHeader {
  background: var(--cx-background-hover-color);
}

.customizerRightItemSubHeaderRow {
  grid-area: 1 / 1 / 2 / 2;
  display: flex;
  align-items: center;
}

.customizerRightItemSubHeaderRaw {
  display: flex;
  align-items: center;
  border-radius: 5px;
}

.customizerRightItemSubHeaderRaw {
  border: var(--cx-border) !important;
  background-color: var(--cx-background-hover-color);
}

/*
 * CanvasXpress Customizer Right Item Launcher
 */

.customizerRightItemLauncher {
  display: grid;
  grid-template-columns: 1fr 6fr;
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

.customizerRightItemLauncher {
  border-top: var(--cx-border) !important;
}

.customizerRightItemLauncherNB {
  display: grid;
  grid-template-columns: 1fr 6fr;
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  border: none !important;
}

.customizerRightItemLauncher:hover,
.customizerRightItemLauncherNB:hover {
  background-color: var(--cx-background-hover-color);
}

.customizerRightItemLauncherLeft {
  grid-area: 1 / 1 / 2 / 2;
  display: flex;
  align-items: center;
  justify-content: center;
}

.customizerRightItemLauncherLeft {
  background-color: var(--cx-background-hover-color);
}

.customizerRightItemLauncherRight {
  grid-area: 1 / 2 / 2 / 3;
  display: flex;
  align-items: center;
  padding-left: 5px;
}

/*
 * CanvasXpress Customizer Right Item Input
 */

.customizerRightItemInput {
  display: grid;
  grid-template-columns: 1fr 6fr;
  grid-template-rows: repeat(2, 1fr);
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

.customizerRightItemInputTopLeft {
  grid-area: 1 / 1 / 2 / 2;
  display: flex;
  align-items: center;
}

.customizerRightItemInputTopRight {
  grid-area: 1 / 2 / 2 / 3;
  display: flex;
  align-items: center;
}

.customizerRightItemInputBottom {
  grid-area: 2 / 1 / 3 / 3;
  display: flex;
  align-items: center;
}

/*
 * CanvasXpress Customizer Right Item Cols
 */

.customizerRightItemFullCol {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  margin: 5px;
  height: fit-content;
}

.customizerRightItemHalfCol {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  margin: 5px;
  height: fit-content;
}

.customizerRightItemThirdCol {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  margin: 5px;
  height: fit-content;
}

.customizerRightItemFourthCol {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  margin: 5px;
  height: fit-content;
}

.customizerRightItemFifthCol {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  margin: 5px;
  height: fit-content;
}

.customizerRightItemSixthCol {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  margin: 5px;
  height: fit-content;
}

.customizerRightItemCol1 {
  grid-area: 1 / 1 / 2 / 2;
  display: flex;
  align-items: center;
  justify-content: center;
}

.customizerRightItemCol2 {
  grid-area: 1 / 2 / 2 / 3;
  display: flex;
  align-items: center;
  justify-content: center;
}

.customizerRightItemCol3 {
  grid-area: 1 / 3 / 2 / 4;
  display: flex;
  align-items: center;
  justify-content: center;
}

.customizerRightItemCol4 {
  grid-area: 1 / 4 / 2 / 5;
  display: flex;
  align-items: center;
  justify-content: center;
}

.customizerRightItemCol5 {
  grid-area: 1 / 5 / 2 / 6;
  display: flex;
  align-items: center;
  justify-content: center;
}

.customizerRightItemCol6 {
  grid-area: 1 / 6 / 2 / 7;
  display: flex;
  align-items: center;
  justify-content: center;
}

.customizerRightItemColMid {
  grid-area: 1 / 3 / 2 / 5;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
}

.customizerRightItemColMid {
  border: var(--cx-border) !important;
}

.customizerRightItemSelect>select:hover,
.customizerRightItemTextArea>svg:hover,
.customizerRightItemTextArea>textarea:hover,
.customizerContainerRaw>svg:hover,
.customizerRightItemCol1>svg:hover,
.customizerRightItemCol2>svg:hover,
.customizerRightItemCol3>svg:hover,
.customizerRightItemCol4>svg:hover,
.customizerRightItemCol5>svg:hover,
.customizerRightItemCol6>svg:hover,
.customizerRightItem:hover {
  background-color: var(--cx-background-hover-color);
}

/*
 * Other Customizer classes
 */

.customizerContainer {
  height: fit-content;
  border-radius: 5px;
  margin: 10px;
  float: left;
}

.customizerWrangling {
  height: 102px;
  margin: 0px 0px 10px 10px;
  border-radius: 5px;
  overflow-y: auto;
  overflow-x: hidden;
}

.customizerNumeric,
.customizerString,
.customizerUnique,
.customizerWrangling,
.customizerContainer {
  border: var(--cx-border) !important;
}

.customizerWrangling:hover {
  border: 1px dashed var(--cx-color-red) !important;
}

.customizerContainerRaw {
  border: none !important;
  float: left;
  display: flex;
  align-items: center;
  justify-content: center;
}

.customizerMask {
  background: var(--cx-color-transparent) !important;
  border: 0px none !important;
  box-shadow: 0 0 0px var(--cx-color-transparent) !important;
  position: absolute;
  left: 0px;
  top: 0px;
  margin: 0px !important;
  width: 100%;
  height: 20px;
}

.customizerNumeric,
.customizerString,
.customizerUnique {
  border-radius: 5px;
  cursor: move;
  margin: 3px;
  padding: 3px;
  word-wrap: normal;
  display: inline-block;
  text-align: start;
  max-width: 150px;
  overflow: hidden;
  position: relative;
}

.customizerNumeric {
  color: var(--cx-font-color);
  background-color: var(--cx-color-transparent);
}

.customizerString {
  color: var(--cx-color-green);
  background-color: var(--cx-color-transparent);
}

.customizerUnique {
  color: var(--cx-color-blue);
  background-color: var(--cx-color-transparent);
}
.customizerListNumeric,
.customizerListString,
.customizerListUnique {
  border: none;
  cursor: move;
  color: var(--cx-font-color);
  margin: 0;
  padding: 0 0 0 3px;
  width: 350px;
  white-space: nowrap;
  display: inline-block;
  text-align: start;
  overflow: hidden;
  position: relative;
}

.customizerListNumeric {
  color: var(--cx-font-color);
}

.customizerListString {
  color: var(--cx-color-green);
}

.customizerListUnique {
  color: var(--cx-color-blue);
}

.customizerListNumeric,
.customizerListString,
.customizerListUnique {
  background-color: var(--cx-color-transparent);
}

.customizerListNumeric:hover,
.customizerListString:hover,
.customizerListUnique:hover {
  background: var(--cx-background-hover-color);
}

.customizerListNumeric:before,
.customizerListString:before,
.customizerListUnique:before {
  font: normal 10px courier;
}

.customizerListNumeric:before,
.customizerListString:before,
.customizerListUnique:before {
  color: var(--cx-background-color);
}

.customizerListNumeric:before {
  content: "\00a0#\00a0\00a0";
}

.customizerListString:before {
  content: "Abc\00a0";
}

.customizerListUnique:before {
  content: "Unq\00a0";
}

.customizerMask::selection,
.customizerNumeric::selection,
.customizerString::selection,
.customizerUnique::selection,
.customizerListNumeric::selection,
.customizerListString::selection,
.customizerListUnique::selection {
  background: var(--cx-color-transparent);
  color: var(--cx-color-black);
  padding: 0;
}

/*
 * Search Customizer
 */

input.customizerSearch {
  margin: 9px;
  background-color: var( --cx-background-widgets-color);
  color: var(--cx-font-color);
  cursor: default;
  font: inherit;
  height: 40px;
  border-radius: 4px;
  float: left;
  clear: left;
}

select.customizerSearch,
input.customizerSearch {
  border: var(--cx-border);
}

input.customizerSearch[type="color"] {
  padding: 0;
  overflow: hidden;
}

input.customizerSearch:not([type="color"]) {
  padding: 5px;
}

select.customizerSearch {
  margin: 9px;
  background-color: var( --cx-background-widgets-color);
  color: var(--cx-font-color);
  cursor: default;
  font: inherit;
  padding-left: 3px;
  border-radius: 4px;
  float: left;
  clear: left;
}

span.customizerSearch {
  color: var(--cx-font-color);
  font: inherit;
  line-height: 20px;
  list-style: none;
  position: relative;
  margin: 5px 5px 0 15px;
  float: left;
  clear: left;
}

span.customizerSearchSelect,
span.customizerSearchDescription,
span.customizerSearchCategory,
span.customizerSearchCurrent {
  font: inherit;
  line-height: 28px;
  list-style: none;
  position: relative;
  height: 28px;
  margin-top: 5px;
  float: left;
  clear: left;
  left: 15px;
}

span.customizerSearchSelect {
  color: var(--cx-font-color);
}

span.customizerSearchDescription,
span.customizerSearchCategory {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

span.customizerSearchDescription,
span.customizerSearchCategory,
span.customizerSearchCurrent {
  color: var(--cx-background-color);
}

span.customizerSearchSelect:before {
  color: var(--cx-font-color);
  font-weight: bold;
  content: "Select property (";
}

span.customizerSearchSelect:after {
  color: var(--cx-font-color);
  font-weight: bold;
  content: ")";
}

span.customizerSearchDescription:before {
  color: var(--cx-font-color);
  font-weight: bold;
  content: "Description [ ";
}

span.customizerSearchCategory:before {
  color: var(--cx-font-color);
  font-weight: bold;
  content: "Category [ ";
}

span.customizerSearchDescription:after,
span.customizerSearchCategory:after {
  color: var(--cx-font-color);
  font-weight: bold;
  content: " ]";
}

span.customizerSearchCurrent:before {
  color: var(--cx-font-color);
  font-weight: bold;
  content: "Current Value [ ";
}

span.customizerSearchCurrent:after {
  color: var(--cx-font-color);
  font-weight: bold;
  content: " ]";
}

/*
 * Password
 */

div.CanvasXpressPassword {
  border-radius: 5px;
  background-color: var(--cx-background-widgets-color);
  box-sizing: border-box;
  cursor: move;
  color: var(--cx-font-color);
  font: normal 16px arial, tahoma, sans-serif;
  margin: 2px 3px;
  overflow: hidden;
  padding: 1px 12px;
  width: 200px;
  height: 185px;
  white-space: nowrap;
  position: relative;
  text-align: left;
}

img.CanvasXpressPassword,
svg.CanvasXpressPassword {
  background: var(--cx-color-transparent) !important;
  border: 0px none !important;
  box-shadow: 0 0 0px rgb(0 0 0 / 0%) !important;
  box-sizing: border-box;
  cursor: default;
  float: right;
  margin: 5px 0px 0px 0px !important;
  cursor: default;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  -ms-user-select: none;
}

div.CanvasXpressPasswordContainer {
  box-sizing: border-box;
  border-radius: 0px 0px 5px 5px;
  color: var(--cx-font-color);
  display: block;
  left: 0px;
  line-height: 100%;
  position: relative;
  top: 15px;
  margin-top: 5px;
  -ms-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
}

span.CanvasXpressPassword {
  margin-bottom: 5px;
  margin-left: 5px;
  float: left;
}

input.CanvasXpressPassword {
  float: left;
  margin-bottom: 5px;
  padding: 5px;
  border-radius: 5px;
  border: 1px solid rgb(170, 170, 170);
  width: 170px;
}

/*
 * CanvasXpressDrag
 */

div.CanvasXpressDrag {
  opacity: 0.75;
  box-sizing: border-box;
  filter: alpha(opacity=75);
  background-color: rgba(255, 255, 255, 0.95);
  position: absolute;
}

div.CanvasXpressDragLayout {
  opacity: 0.65;
  box-sizing: border-box;
  filter: alpha(opacity=65);
  background-color: rgba(51, 122, 183, 0.65);
  position: absolute;
}

/*
 * Tooltip
 */

div.CanvasXpressTooltip {
  border: 1px solid rgb(83, 105, 255);
  border-radius: 5px;
  background-color: rgba(255, 255, 255, 0.95);
  box-sizing: border-box;
  cursor: move;
  color: var(--cx-font-color);
  font: var(--cx-font);
  margin: 2px 3px;
  overflow: hidden;
  padding: 5px 6px;
  position: absolute;
  white-space: nowrap;
  text-align: left;
}

div.CanvasXpressTooltipInfo {
  border: 1px solid rgb(83, 105, 255);
  border-radius: 5px;
  background-color: rgba(255, 255, 255, 0.95);
  cursor: move;
  color: var(--cx-font-color);
  font: var(--cx-font);
  margin: 2px 3px;
  max-height: 800px;
  overflow: hidden;
  padding: 5px 6px;
  position: absolute;
  white-space: nowrap;
  text-align: left;
  z-index: 1;
}

/*****************************************************/
/* Generators                                        */
/* A collection of Tooltips/Speech Bubbles           */
/* https://css-generators.com/tooltip-speech-bubble/ */
/*****************************************************/

div.CanvasXpressTooltipInfoNone,
div.CanvasXpressTooltipInfoBottom,
div.CanvasXpressTooltipInfoTop,
div.CanvasXpressTooltipInfoLeft,
div.CanvasXpressTooltipInfoRight {
  color: var(--cx-font-color);
  font: var(--cx-font);
  max-height: 800px;
  padding: 10px;
  position: absolute;
  white-space: nowrap;
  text-align: left;
  z-index: 1;
}

div.CanvasXpressTooltipInfoBottom {
  border-radius: var(--cx-callout-radius) var(--cx-callout-radius)
    min(var(--cx-callout-radius), 50% - var(--cx-callout-size) * tan(45deg))
    min(var(--cx-callout-radius), 50% - var(--cx-callout-size) * tan(45deg)) /
    var(--cx-callout-radius);
  clip-path: polygon(
    0 100%,
    0 0,
    100% 0,
    100% 100%,
    min(100%, 50% + var(--cx-callout-size) * tan(45deg)) 100%,
    50% calc(100% + var(--cx-callout-size)),
    max(0%, 50% - var(--cx-callout-size) * tan(45deg)) 100%
  );
  background: var(--cx-callout-border-color);
  border-image: conic-gradient(var(--cx-callout-border-color) 0 0) fill 0 /
    var(--cx-callout-radius) max(0%, 50% - var(--cx-callout-size) * tan(45deg))
    0 max(0%, 50% - var(--cx-callout-size) * tan(45deg)) / 0 0
    var(--cx-callout-size) 0;
}

div.CanvasXpressTooltipInfoBottom:before {
  content: "";
  position: absolute;
  z-index: -1;
  padding: var(--cx-callout-border-width);
  border-radius: inherit;
  clip-path: polygon(
    0 100%,
    0 0,
    100% 0,
    100% 100%,
    min(
        100% - var(--cx-callout-border-width),
        50% + var(--cx-callout-size) * tan(45deg) -
          var(--cx-callout-border-width) * tan(22.5deg)
      )
      calc(100% - var(--cx-callout-border-width)),
    50%
      calc(
        100% + var(--cx-callout-size) - var(--cx-callout-border-width) /
          sin(45deg)
      ),
    max(
        var(--cx-callout-border-width),
        50% - var(--cx-callout-size) * tan(45deg) +
          var(--cx-callout-border-width) * tan(22.5deg)
      )
      calc(100% - var(--cx-callout-border-width))
  );
  background: var(--cx-callout-background-color) content-box;
  border-image: conic-gradient(var(--cx-callout-background-color) 0 0) fill 0 /
    var(--cx-callout-radius)
    max(
      var(--cx-callout-border-width),
      50% - var(--cx-callout-size) * tan(45deg)
    )
    0
    max(
      var(--cx-callout-border-width),
      50% - var(--cx-callout-size) * tan(45deg)
    ) / 0 0 var(--cx-callout-size) 0;
}

div.CanvasXpressTooltipInfoTop {
  border-radius: min(
      var(--cx-callout-radius),
      50% - var(--cx-callout-size) * tan(45deg)
    )
    min(var(--cx-callout-radius), 50% - var(--cx-callout-size) * tan(45deg))
    var(--cx-callout-radius) var(--cx-callout-radius) / var(--cx-callout-radius);
  clip-path: polygon(
    0 0,
    0 100%,
    100% 100%,
    100% 0,
    min(100%, 50% + var(--cx-callout-size) * tan(45deg)) 0,
    50% calc(-1 * var(--cx-callout-size)),
    max(0%, 50% - var(--cx-callout-size) * tan(45deg)) 0
  );
  background: var(--cx-callout-border-color);
  border-image: conic-gradient(var(--cx-callout-border-color) 0 0) fill 0 / 0
    max(0%, 50% - var(--cx-callout-size) * tan(45deg)) var(--cx-callout-radius)
    max(0%, 50% - var(--cx-callout-size) * tan(45deg)) / var(--cx-callout-size)
    0 0 0;
}

div.CanvasXpressTooltipInfoTop:before  {
  content: "";
  position: absolute;
  z-index: -1;
  padding: var(--cx-callout-border-width);
  border-radius: inherit;
  clip-path: polygon(
    0 0,
    0 100%,
    100% 100%,
    100% 0,
    min(
        100% - var(--cx-callout-border-width),
        50% + var(--cx-callout-size) * tan(45deg) -
          var(--cx-callout-border-width) * tan(22.5deg)
      )
      var(--cx-callout-border-width),
    50%
      calc(var(--cx-callout-border-width) / sin(45deg) - var(--cx-callout-size)),
    max(
        var(--cx-callout-border-width),
        50% - var(--cx-callout-size) * tan(45deg) +
          var(--cx-callout-border-width) * tan(22.5deg)
      )
      var(--cx-callout-border-width)
  );
  background: var(--cx-callout-background-color) content-box;
  border-image: conic-gradient(var(--cx-callout-background-color) 0 0) fill 0/ 0
    max(
      var(--cx-callout-border-width),
      50% - var(--cx-callout-size) * tan(45deg)
    ) var(--cx-callout-radius) max(
      var(--cx-callout-border-width),
      50% - var(--cx-callout-size) * tan(45deg)
    ) / var(--cx-callout-size) 0 0 0;
}


div.CanvasXpressTooltipInfoLeft {
  border-radius: var(--cx-callout-radius) /
    min(var(--cx-callout-radius), 50% - var(--cx-callout-size) * tan(45deg))
    var(--cx-callout-radius) var(--cx-callout-radius)
    min(var(--cx-callout-radius), 50% - var(--cx-callout-size) * tan(45deg));
  clip-path: polygon(
    0 0,
    100% 0,
    100% 100%,
    0 100%,
    0 min(100%, 50% + var(--cx-callout-size) * tan(45deg)),
    calc(-1 * var(--cx-callout-size)) 50%,
    0 max(0%, 50% - var(--cx-callout-size) * tan(45deg))
  );
  background: var(--cx-callout-border-color);
  border-image: conic-gradient(var(--cx-callout-border-color) 0 0) fill 0 /
    max(0%, 50% - var(--cx-callout-size) * tan(45deg)) var(--cx-callout-radius)
    max(0%, 50% - var(--cx-callout-size) * tan(45deg)) 0/0 0 0
    var(--cx-callout-size);
}

div.CanvasXpressTooltipInfoLeft::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  padding: var(--cx-callout-border-width);
  border-radius: inherit;
  clip-path: polygon(
    0 0,
    100% 0,
    100% 100%,
    0 100%,
    var(--cx-callout-border-width)
      min(
        100% - var(--cx-callout-border-width),
        50% + var(--cx-callout-size) * tan(45deg) -
          var(--cx-callout-border-width) * tan(22.5deg)
      ),
    calc(var(--cx-callout-border-width) / sin(45deg) - var(--cx-callout-size))
      50%,
    var(--cx-callout-border-width)
      max(
        var(--cx-callout-border-width),
        50% - var(--cx-callout-size) * tan(45deg) +
          var(--cx-callout-border-width) * tan(22.5deg)
      )
  );
  background: var(--cx-callout-background-color) content-box;
  border-image: conic-gradient(var(--cx-callout-background-color) 0 0) fill 0 /
    max(
      var(--cx-callout-border-width),
      50% - var(--cx-callout-size) * tan(45deg)
    )
    var(--cx-callout-radius)
    max(
      var(--cx-callout-border-width),
      50% - var(--cx-callout-size) * tan(45deg)
    )
    0/0 0 0 var(--cx-callout-size);
}

div.CanvasXpressTooltipInfoRight {
  border-radius: var(--cx-callout-radius) / var(--cx-callout-radius)
    min(var(--cx-callout-radius), 50% - var(--cx-callout-size) * tan(45deg))
    min(var(--cx-callout-radius), 50% - var(--cx-callout-size) * tan(45deg))
    var(--cx-callout-radius);
  clip-path: polygon(
    100% 0,
    0 0,
    0 100%,
    100% 100%,
    100% min(100%, 50% + var(--cx-callout-size) * tan(45deg)),
    calc(100% + var(--cx-callout-size)) 50%,
    100% max(0%, 50% - var(--cx-callout-size) * tan(45deg))
  );
  background: var(--cx-callout-border-color);
  border-image: conic-gradient(var(--cx-callout-border-color) 0 0) fill 0 /
    max(0%, 50% - var(--cx-callout-size) * tan(45deg)) 0
    max(0%, 50% - var(--cx-callout-size) * tan(45deg)) var(--cx-callout-radius) /
    0 var(--cx-callout-size) 0 0;
}

div.CanvasXpressTooltipInfoRight::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  padding: var(--cx-callout-border-width);
  border-radius: inherit;
  clip-path: polygon(
    100% 0,
    0 0,
    0 100%,
    100% 100%,
    calc(100% - var(--cx-callout-border-width))
      min(
        100% - var(--cx-callout-border-width),
        50% + var(--cx-callout-size) * tan(45deg) -
          var(--cx-callout-border-width) * tan(22.5deg)
      ),
    calc(
        100% + var(--cx-callout-size) - var(--cx-callout-border-width) /
          sin(45deg)
      )
      50%,
    calc(100% - var(--cx-callout-border-width))
      max(
        var(--cx-callout-border-width),
        50% - var(--cx-callout-size) * tan(45deg) +
          var(--cx-callout-border-width) * tan(22.5deg)
      )
  );
  background: var(--cx-callout-background-color) content-box;
  border-image: conic-gradient(var(--cx-callout-background-color) 0 0) fill 0 /
    max(
      var(--cx-callout-border-width),
      50% - var(--cx-callout-size) * tan(45deg)
    )
    0
    max(
      var(--cx-callout-border-width),
      50% - var(--cx-callout-size) * tan(45deg)
    )
    var(--cx-callout-radius) / 0 var(--cx-callout-size) 0 0;
}

div.CanvasXpressMousePosition {
  background: rgba(0, 0, 0, 0) !important;
  border: 0px none !important;
  box-shadow: 0 0 0px rgba(0, 0, 0, 0) !important;
  cursor: move;
  color: var(--cx-font-color);
  font: var(--cx-font);
  position: absolute;
  white-space: nowrap;
  text-align: left;
  z-index: 1;
}

img.CanvasXpressMousePosition,
svg.CanvasXpressMousePosition {
  background: rgba(0, 0, 0, 0) !important;
  border: 0px none !important;
  box-shadow: 0 0 0px rgba(0, 0, 0, 0) !important;
  cursor: default;
  margin: 0px !important;
  padding: 0px !important;
  position: relative;
  left: -13px;
  top: -13px;
  cursor: default;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  -ms-user-select: none;
}

span.CanvasXpressMousePosition {
  background: rgba(0, 0, 0, 0) !important;
  border: 0px none !important;
  box-shadow: 0 0 0px rgba(0, 0, 0, 0) !important;
  cursor: move;
  color: var(--cx-font-color);
  font: var(--cx-font);
  position: absolute;
  left: 4px;
  top: -20px;
  white-space: nowrap;
  text-align: left;
  z-index: 1;
}

div.CanvasXpressCanvasResizerClose {
  box-sizing: border-box;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAOCAYAAAD9lDaoAAAAcUlEQVR42mM8e/bsfwYCgBGkSE9PD6eCS5cuIRSxsrIy/P79Gy4J42MoAgGQBDIbRRFMNwzATMVQhGwNVjehm/T582cwfevWLfxu+vTpO8Pt29ew++7Hjx8MvLy8mIpgAKTg/38WOB+uiGCIE1JAXUUA5WZpcWW3WYkAAAAASUVORK5CYII=);
}

div.CanvasXpressCanvasResizerloading1 {
  box-sizing: border-box;
  background-image: url(data:image/gif;base64, );
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

div.CanvasXpressCanvasResizerloading2 {
  box-sizing: border-box;
  background-image: url(data:image/gif;base64, );
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

/**********
 * Motion *
 **********/

div.CanvasXpressMotion {
  color: var(--cx-font-color);
  font: var(--cx-font);
}

img.CanvasXpressMotion,
svg.CanvasXpressMotion {
  margin: 0px !important;
  background: var(--cx-color-transparent) !important;
  border: 0px none !important;
  box-shadow: 0 0 0px var(--cx-color-transparent) !important;
}

div.CanvasXpressMotionContainer {
  box-sizing: border-box;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAOCAYAAADuQ3ZcAAAAF0lEQVR42mNkAAJGNOLChQv/cRNYdAAA0dgUqRX/AM0AAAAASUVORK5CYII=);
  background-repeat: repeat-x;
}

div.CanvasXpressMotionCurrent {
  box-sizing: border-box;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAlUlEQVR42mNkgIIDBw78ZyACODg4MCLzGWGa7e3tidHPcPDgQRRDGEGaTc0tidIMA6dPHocbAjZAV9eQJAMuXz5PZQM0NA1IMuDG9QuoBqioqJBkwJ07d1ANkJRWJ8mA509vUtkAUVFFkgx4/fo+qgG8fHIkGfD50yMqGgAiQIaws4oTpfnn75eoSRnGoCgzUQIoNgAAbjRcEcsB8BEAAAAASUVORK5CYII=);
  background-repeat: no-repeat;
  float: left;
  height: 14px;
  position: relative;
  width: 14px;
  z-index: 1000002;
}

div.CanvasXpressMotionRange {
  box-sizing: border-box;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAOCAYAAADuQ3ZcAAAAFklEQVR42mNkAAJGNMKxcdd/3AQWHQAD/g7xOirtNAAAAABJRU5ErkJggg==);
  background-repeat: repeat-x;
  float: left;
  height: 14px;
  left: 0px;
  top: -1px;
  position: relative;
  z-index: 1000001;
}

/*********
* Marker *
**********/

div.CanvasXpressMarker {
  box-sizing: border-box;
  border: var(--cx-border);
  border-radius: 5px;
  background-color: var(--cx-background-widgets-color);
  cursor: move;
  font: var(--cx-font);
  height: 502px;
  width: 286px;
  left: 0px;
  line-height: 100%;
  position: absolute;
  top: 0px;
  padding: 2px;
}

/*************
 *  Toolbar  *
 *************/

div.CanvasXpressToolbarTop {
  position: absolute;
  width: auto;
  top: 0px;
  left: 0px;
  overflow: hidden;
  display: flex;
  justify-content: center;
  z-index: 10000;
}

div.CanvasXpressToolbarTopContainer {
  border: var(--cx-border);
  border-radius: 0 0 8px 8px;
  border-top: none;
  width: auto;
  padding: 1px;
  background-color: var(--cx-background-widgets-color);
}

div.CanvasXpressToolbarTopOverContainer {
  border: var(--cx-border);
  border: none;
  width: auto;
  padding: 1px;
  background-color: var(--cx-background-widgets-color);
}

div.CanvasXpressToolbarTopOverContainer img.CanvasXpressToolbarTopImage,
div.CanvasXpressToolbarTopOverContainer svg.CanvasXpressToolbarTopImage {
  background: var(--cx-color-transparent) !important;
  border: 0px none !important;
  box-shadow: 0 0 0px var(--cx-color-transparent) !important;
  cursor: pointer;
  float: right;
  margin: 5px 8px 0px 0px;
}

div.CanvasXpressToolbarTopContainer img.CanvasXpressToolbarTopImage,
div.CanvasXpressToolbarTopContainer svg.CanvasXpressToolbarTopImage {
  background: var(--cx-color-transparent) !important;
  border: 0px none !important;
  box-shadow: 0 0 0px var(--cx-color-transparent) !important;
  cursor: pointer;
  float: right;
  margin: 5px 8px 0px 0px;
}

div.CanvasXpressToolbarBottom {
  position: absolute;
  width: auto;
  top: 0px;
  left: 0px;
  overflow: hidden;
  display: flex;
  justify-content: center;
  z-index: 10000;
}

div.CanvasXpressToolbarBottomContainer {
  border: var(--cx-border);
  border-radius: 8px 8px 0 0;
  border-bottom: none;
  width: auto;
  padding: 1px;
  background-color: var(--cx-background-widgets-color);
}

div.CanvasXpressToolbarBottomRound {
  border-radius: 50%;
  overflow: hidden;
}

div.CanvasXpressToolbarBottomRound,
div.CanvasXpressToolbarBottomStripe {
  cursor: pointer;
  float: left;
}

div.CanvasXpressToolbarLeft {
  position: absolute;
  top: 0px;
  left: 0px;
  overflow: hidden;
  align-content: center;
  z-index: 10000;
}

div.CanvasXpressToolbarLeftContainer {
  border: var(--cx-border);
  border-radius: 0 8px 8px 0;
  border-left: none;
  align-content: center;
  height: auto;
  padding: 1px;
  background-color: var(--cx-background-widgets-color);
}

div.CanvasXpressToolbarLeftContainer img.CanvasXpressToolbarLeftImage,
div.CanvasXpressToolbarLeftContainer svg.CanvasXpressToolbarLeftImage {
  background: var(--cx-color-transparent) !important;
  border: 0px none !important;
  box-shadow: 0 0 0px var(--cx-color-transparent) !important;
  cursor: pointer;
  float: right;
  margin: 5px 8px 0px 0px;
}

div.CanvasXpressToolbarRight {
  position: absolute;
  top: 0px;
  left: 0px;
  overflow: hidden;
  align-content: center;
  z-index: 10000;
}

div.CanvasXpressToolbarRightContainer {
  border: var(--cx-border);
  border-radius: 8px 0 0 8px;
  border-right: none;
  align-content: center;
  height: auto;
  padding: 1px;
  background-color: var(--cx-background-widgets-color);
}

div.CanvasXpressToolbarRightFont {
  padding: 5px;
  cursor: pointer;
}

/*************
 *  Tooltip  *
 *************/
div.CanvasXpressAltTooltip {
  background-color: var(--cx-background-widgets-color);
  border: var(--cx-border);
  border-radius: 5px;
  box-shadow: 0 0 5px var(--cx-color-transparent);
  color: var(--cx-font-color);
  font: var(--cx-font);
  font-size: var(--cx-font-size);
  line-height: 100%;
  padding: 5px;
  position: absolute;
  display: none;
  text-wrap: nowrap;
  z-index: 1000000;
}

/******************
 * Data Table DOE *
 ******************/

table.CanvasXpressDataTableDOE {
  border-spacing: 0 !important;
  font-size: var(--cx-font-size) !important;
  padding: 0 !important;
  border: none !important;
}

th.CanvasXpressDataTableDOE {
  padding: 0 !important;
  font-size: var(--cx-font-size) !important;
  font-weight: bold !important;
  padding-left: 5px !important;
  padding-right: 5px !important;
  height: 18px !important;
  line-height: 18px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  max-height: 18px !important;
  border: none !important;
}

td.CanvasXpressDataTableDOE {
  padding: 0 !important;
  font-size: var(--cx-font-size) !important;
  padding-left: 5px !important;
  padding-right: 18px !important;
  height: 18px !important;
  line-height: 18px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  max-height: 18px !important;
  border: none !important;
}

tr.CanvasXpressDataTableDOE {
  font-size: var(--cx-font-size) !important;
}

/****************/
/*  Data Table  */
/****************/

div.CanvasXpressDataTableUpload {
  border: 1px solid rgba(35, 82, 124, 0.2);
  border-radius: 6px;
  margin: -1px;
  background-image: url('data:image/png;base64, ');
  background-size: contain;
  background-repeat: no-repeat;
  position: relative;
}

div.CanvasXpressDataTable,
div.CanvasXpressDataTableToolbar,
div.CanvasXpressDataTableContainer,
div.CanvasXpressDataTableVertical,
div.CanvasXpressDataTableHorizontal,
div.CanvasXpressDataTableMask {
  box-sizing: border-box;
  position: absolute;
}

div.CanvasXpressDataTable,
div.CanvasXpressDataTableToolbar,
div.CanvasXpressDataTableVertical,
div.CanvasXpressDataTableHorizontal {
  color: var(--cx-font-color);
  background-color: var(--cx-background-widgets-color)
}

div.CanvasXpressDataTable {
  border: var(--cx-border);
  border-radius: 5px;
  clear: both;
  overflow: hidden;
}

div.CanvasXpressDataTableToolbar {
  border-bottom: var(--cx-border);
  border-radius: 5px 5px 0px 0px;
  height: 36px;
  left: 0px;
  line-height: 100%;
  top: 0px;
}

div.CanvasXpressDataTableContainer {
  border-radius: 0px 0px 5px 5px;
  display: block;
  left: 0px;
  line-height: 100%;
}

div.CanvasXpressDataTableVertical {
  overflow-x: hidden;
  overflow-y: auto;
  right: 6px;
  top: 2px;
  width: 16px;
}

div.CanvasXpressDataTableHorizontal {
  bottom: 12px;
  height: 16px;
  left: 2px;
  overflow-x: auto;
  overflow-y: hidden;
}

div.CanvasXpressDataTableMask {
  border: 0px;
  top: 0px;
  overflow: hidden;
}

img.CanvasXpressDataTableToolbarImage,
svg.CanvasXpressDataTableToolbarImage,
img.CanvasXpressDataTableToolbarImageNB,
svg.CanvasXpressDataTableToolbarImageNB {
  background: var(--cx-color-transparent) !important;
  border-radius: 5px;
  padding: 2px;
  box-shadow: 0 0 0px var(--cx-color-transparent) !important;
  cursor: pointer;
  float: right;
  margin: 5px 8px 0px 0px !important;
}

img.CanvasXpressDataTableToolbarImage,
svg.CanvasXpressDataTableToolbarImage {
  border: var(--cx-border) !important;
}

img.CanvasXpressDataTableToolbarImageNB,
svg.CanvasXpressDataTableToolbarImageNB {
  border: none !important;
}

img.CanvasXpressDataTableToolbarImageLogo,
svg.CanvasXpressDataTableToolbarImageLogo {
  border: none !important;
  float: left;
  margin: 5px 0px 0px 10px !important;
}


img.CanvasXpressDataTableVertical {
  max-height: unset !important;
  height: revert-layer !important;
}

img.CanvasXpressDataTableHorizontal {
  max-width: unset !important;
}

table.CanvasXpressDataTable {
  border: 0px;
  border-spacing: 1px;
  color: var(--cx-font-color);
  left: 1px;
  position: absolute;
  opacity: 0.95;
  table-layout: fixed;
  top: 1px;
}

th.CanvasXpressTableCellHead,
th.CanvasXpressTableCellHeadActive {
  border-top: none;
  border-bottom: var(--cx-border-transparent);
  border-left: none;
  border-right: var(--cx-border-transparent);
  font-weight: normal;
  opacity: 0.95;
  padding: 2px;
  vertical-align: middle;
}

tr > th.CanvasXpressTableCell:last-child,
tr > th.CanvasXpressTableCellActive:last-child {
  border-right: var(--cx-border-transparent);
}

th.CanvasXpressTableCellHead {
  background: var(--cx-background-accent-color);
  font: var(--cx-x-large-font);
  font-weight: normal;
  color: var(--cx-font-color);
}

th.CanvasXpressTableCellHeadActive {
  background: var(--cx-background-accent-color);
  font: var(--cx-x-large-font);
  font-weight: normal;
  color: var(--cx-font-color);
}

a.CanvasXpressTableCellHead,
a.CanvasXpressTableCellHeadActive {
  cursor: pointer;
  position: absolute;
  right: 8px;
  white-space: normal;
  text-decoration: none;
  font-style: normal;
  width: 14px;
}

a.CanvasXpressTableCellHead {
  color: var(--cx-font-color);
}

a.CanvasXpressTableCellHeadActive {
  color: var(--cx-background-color);
}

td.CanvasXpressTableCell,
td.CanvasXpressTableCellActive {
  border-top: none !important;
  border-bottom: var(--cx-border-transparent);
  border-left: none !important;
  border-right: var(--cx-border-transparent);
  font: var(--cx-x-large-font);
  color: var(--cx-font-color);
  padding: 2px !important;
  vertical-align: middle;
}

tr > td.CanvasXpressTableCell:last-child,
tr > td.CanvasXpressTableCellActive:last-child {
  border-right: var(--cx-border-transparent);
}

div.CanvasXpressTableCell,
div.CanvasXpressTableCellLink {
  box-sizing: border-box;
  color: var(--cx-font-color);
  margin: 2px 2px 1px 5px;
  overflow: hidden;
  position: relative;
  text-align: left;
  white-space: pre-wrap;
  word-break: break-word;
}

div.CanvasXpressTableCell:hover {
  background-color: var(--cx-background-hover-color);
}

div.CanvasXpressTableCellLink:hover {
  background-color: var(--cx-background-hover-color);
  text-decoration: underline var(--cx-border);
  cursor: pointer;
}

th.CanvasXpressTableCellHead div.CanvasXpressTableCell,
th.CanvasXpressTableCellHeadActive div.CanvasXpressTableCell {
  border-radius: 5px;
}

th.CanvasXpressTableCellHead div.CanvasXpressTableCell {
  /* border: var(--cx-border-transparent); */
}

th.CanvasXpressTableCellHeadActive div.CanvasXpressTableCell {
  /* border: var(--cx-border) */
}

/***************/
/* Data Filter */
/***************/

div.CanvasXpressDataFilter,
div.CanvasXpressDataFilterToolbar,
span.CanvasXpressDataFilterToolbarText,
span.CanvasXpressDataFilterText,
span.CanvasXpressDataFilterTextActive,
select.CanvasXpressDataFilterContainerString {
  font-family: var(--cx-font-family);
  font-size: var(--cx-x-large-font-size);
  color: var(--cx-font-color);
}

div.CanvasXpressDataFilter,
div.CanvasXpressDataFilterToolbar {
  box-sizing: border-box;
  line-height: 100%;
  margin: 0px;
  position: absolute;
}

div.CanvasXpressDataFilterToolbar {
  border: var(--cx-border) !important;
  border-radius: 4px;
  left: 0px;
  opacity: 0.95;
  top: 0px;
}

span.CanvasXpressDataFilterToolbarText,
span.CanvasXpressDataFilterText,
span.CanvasXpressDataFilterTextActive {
  left: 8px;
  line-height: 100%;
  position: relative;
  top: 9px;
  background-repeat: no-repeat;
  background-position: -0px;
}

select.CanvasXpressDataFilterContainerString {
  background-color: var(--cx-background-widgets-color);
  margin-left: 3px;
  margin-bottom: 3px;
}

div.CanvasXpressDataFilterContent {
  box-sizing: border-box;
  background-color: var(--cx-background-widgets-color);
  border: var(--cx-border);
  border-radius: 0px 0px 4px 4px;
  border-top: 0px;
  font-family: var(--cx-font-family);
  font-size: var(--cx-x-large-font-size);
  color: var(--cx-font-color);
  overflow-y: auto;
  overflow-x: hidden;
  padding: 2px;
}

input[type=checkbox].CanvasXpressCheckbox {
  accent-color: var(--cx-background-accent-color);
  border-radius: 5px;
  height: 14px;
  width: 14px;
  margin: 2px;
}

label.CanvasXpressCheckboxLabel {
  width: 220px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow-x: hidden;
  margin: 0 0 0 3px !important;
}

div.CanvasXpressDataFilterContainer,
div.CanvasXpressDataFilterContainerMask,
div.CanvasXpressDataFilterContainerItem,
div.CanvasXpressDataFilterContainerItemSelected,
div.CanvasXpressDataFilterContainerHoverable {
  box-sizing: border-box;
}

div.CanvasXpressDataFilterContainer {
  border: 0px;
  left: 0px;
  margin: 0px;
  padding: 0px;
  position: absolute;
}

div.CanvasXpressDataFilterContainerMask {
  border: var(--cx-border);
  margin: 5px;
  overflow-x: hidden;
  overflow-y: scroll;
}

div.CanvasXpressDataFilterContainerItem,
div.CanvasXpressDataFilterContainerItemSelected {
  height: 20px;
  padding: 1px 0px 0px 1px;
  overflow: hidden;
  white-space: nowrap;
}

div.CanvasXpressDataFilterContainerItemSelected,
div.CanvasXpressDataFilterContainerHoverable:hover {
  background-color: var(--cx-background-hover-color);
}

div.CanvasXpressDataFilterContainerHoverable {
  border: var(--cx-border);
  border-radius: 5px;
  margin: 2px;
  margin-bottom: 4px;
}

div.CanvasXpressDataFilterHead,
div.CanvasXpressDataFilterHeadActive {
  border: var(--cx-border);
  border-radius: 4px;
  box-sizing: border-box;
  color: var(--cx-font-color);
  cursor: pointer;
  float: left;
  height: 38px;
  margin-top: 2px;
  overflow: hidden;
  opacity: 0.95;
  padding: 2px;
  text-align: left;
  vertical-align: middle;
}

div.CanvasXpressDataFilterHeadActive {
  background:var(--cx-background-hover-color);
  border-bottom: var(--cx-border-transparent) !important;
  border-radius: 4px 4px 0px 0px;
}

div.CanvasXpressDataFilterContainerTicks {
  display: flex;
  justify-content: space-between;
  padding: 0px 10px;
  height: 18px;
}

span.CanvasXpressDataFilterContainerTicks,
span.CanvasXpressDataFilterContainerTicksLong {
  position: relative;
  display: flex;
  justify-content: center;
  width: 1px;
  background: var(--cx-background-color);
  line-height: 10px;
  margin-bottom: 10px;
}

span.CanvasXpressDataFilterContainerTicks {
  height: 5px;
}

span.CanvasXpressDataFilterContainerTicksLong {
  height: 10px;
}

img.CanvasXpressDataFilterToolbarImage,
svg.CanvasXpressDataFilterToolbarImage {
  border: var(--cx-border) !important;
  border-radius: 5px !important;
  padding: 2px;
}

img.CanvasXpressDataFilterToolbarImageNB,
svg.CanvasXpressDataFilterToolbarImageNB {
  border: none !important;
}

span.CanvasXpressDataFilterText {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAASElEQVR42mNkoBAwUt2A/0AAlgACsg0A6QWZQ4whOA2AsgkagtcAYgwhaAAhQ4gyAJ8htHcBRWFAUSxQlA7AEuSmRFLBwBsAAMDpRxF7e4BAAAAAAElFTkSuQmCC);
}

span.CanvasXpressDataFilterTextActive {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAASUlEQVR42mNkoBAwjhqAMOA/EBCtCQiwGoAkjhOA7MFqADGGoGvGGga4DMGmGWcgohuCSzNOA5ANwacZrwFIhuBVM4gS0oAZAAD1oisRsByngAAAAABJRU5ErkJggg==);
}

div.CanvasXpressDataFilterContainerMaskNoOverflow,
div.CanvasXpressDataFilterContainerMaskNoOverflowOut {
  box-sizing: border-box;
  margin: 5px;
  overflow: hidden;
}

div.CanvasXpressDataFilterContainerMaskNoOverflow {
  border: var(--cx-border);
}

div.CanvasXpressDataFilterContainerMaskNoOverflowOut {
  border: none;
}

input.CanvasXpressDateFilterContainerInputLeft {
  float: left;
  margin: 10px;
  border: none;
  border-radius: 5px;
  font-size: small;
  color: var(--cx-background-color);
}

input.CanvasXpressDateFilterContainerInputRight {
  float: right;
  margin: 10px;
  border: none;
  border-radius: 5px;
  font-size: small;
  color: var(--cx-background-color);
}

/***************/
/*   Toggle    */
/***************/

div.CanvasXpressToggle {
  border: none;
  margin: 5px;
  height: 18px;
}

label.CanvasXpressToggle {
  cursor: pointer;
}

div.CanvasXpressToggleSwitch {
  display: inline-block;
  background: rgb(204, 204, 204);
  border-radius: 16px;
  width: 28px;
  height: 18px;
  position: relative;
  vertical-align: middle;
  transition: background 0.25s;
}

div.CanvasXpressToggleSwitch:before,
div.CanvasXpressToggleSwitch:after {
  content: "";
}

div.CanvasXpressToggleSwitch:before {
  display: block;
  background: linear-gradient(to bottom, rgb(255, 255, 255) 0%, rgb(238, 238, 238) 100%);
  border-radius: 50%;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);
  width: 14px;
  height: 14px;
  position: absolute;
  top: 2px;
  left: 2px;
  transition: left 0.25s;
}

label.CanvasXpressToggle:hover div.CanvasXpressToggleSwitch:before {
  background: linear-gradient(to bottom, rgb(255, 255, 255)0%, rgb(255, 255, 255)100%);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5);
}

input.CanvasXpressToggle:checked+div.CanvasXpressToggleSwitch {
  background: var(--cx-background-color);
}

input.CanvasXpressToggle:checked+div.CanvasXpressToggleSwitch:before {
  left: 12px;
}

input.CanvasXpressToggle {
  position: absolute;
  visibility: hidden;
}

span.CanvasXpressToggle {
  margin-left: 5px;
  margin-right: 5px;
  position: relative;
}

/****************/
/* Range Slider */
/****************/

div.CanvasXpressRangeSliderContainer {
  border: none;
  margin: auto;
  height: 110px;
}

div.CanvasXpressRangeSliderContainerTop {
  height: 18px;
  margin: 5px;
  position: relative;
  display: flex;
}

span.CanvasXpressRangeSliderContainerTop {
  border: none;
}

div.CanvasXpressRangeSliderContainerBottom {
  height: 80px;
  position: relative;
}

div.CanvasXpressRangeSliderInput {
  position: relative;
  z-index: 10001;
  height: 22px;
  margin: 8px 0;
}

input.CanvasXpressRangeSliderMin,
input.CanvasXpressRangeSliderMax {
  color: var(--cx-background-color);
  border: 1px solid var(--cx-background-widgets-color);
  border-radius: 5px;
  font: var(--cx-font);
  margin-bottom: 2px;
  line-height: 100%;
  width: 60px;
}

input.CanvasXpressRangeSliderMin {
  float: left;
  margin-left: 1px;
}

input.CanvasXpressRangeSliderMax {
  float: right;
  margin-right: 1px;
  text-align: right;
}

div.CanvasXpressRangeSlider {
  position: relative;
  z-index: 10001;
  height: 8px;
  margin: 0 15px;
}

div.CanvasXpressRangeSlider>div.CanvasXpressRangeSliderTrack {
  position: absolute;
  z-index: 10001;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  border-radius: 5px;
  background-color: rgb(238, 238, 238);
}

div.CanvasXpressRangeSlider>div.CanvasXpressRangeSliderRange {
  background-color: var(--cx-background-color);
  position: absolute;
  z-index: 10002;
  left: 0%;
  right: 0%;
  top: 0;
  bottom: 0;
  border-radius: 5px;
}

div.CanvasXpressRangeSlider>div.CanvasXpressRangeSliderThumbLeft,
div.CanvasXpressRangeSlider>div.CanvasXpressRangeSliderThumbRight {
  position: absolute;
  z-index: 10003;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  transition: box-shadow .3s ease-in-out;
}

div.CanvasXpressRangeSlider>div.CanvasXpressRangeSliderThumbLeft,
div.CanvasXpressRangeSlider>div.CanvasXpressRangeSliderThumbRight {
  background-color: var(--cx-background-color);
  box-shadow: 0 0 0 0 var(--cx-background-hover-color);
}

div.CanvasXpressRangeSlider>div.CanvasXpressRangeSliderThumbLeft {
  left: 0%;
  transform: translate(-15px, -5px);
}

div.CanvasXpressRangeSlider>div.CanvasXpressRangeSliderThumbRight {
  right: 0%;
  transform: translate(15px, -5px);
}

div.CanvasXpressRangeSlider>div.CanvasXpressRangeSliderThumbLeft:hover,
div.CanvasXpressRangeSlider>div.CanvasXpressRangeSliderThumbRight:hover {
  box-shadow: 0 0 0 10px var(--cx-background-hover-color);
}

input[type=range].customizerRightItemRangeSelect {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 8px;
  border-radius: 5px;
  background: var(--cx-color-extra-light-gray);
  outline: none;
  opacity: 1;
}

input[type=range].customizerRightItemRangeSelect::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: var(--cx-background-color);
  cursor: pointer;
}

input[type=range].customizerRightItemRangeSelect::-moz-range-thumb {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: var(--cx-background-color);
  cursor: pointer;
}

input[type=range] {
  position: absolute;
  pointer-events: none;
  -webkit-appearance: none;
  z-index: 10002;
  height: 10px;
  width: 100%;
  opacity: 0;
}

input[type=range]::-webkit-slider-thumb {
  pointer-events: all;
  width: 30px;
  height: 30px;
  border-radius: 0;
  border: 0 none;
  background-color: red;
  -webkit-appearance: none;
}

div.CanvasXpressRangeSliderTicks,
div.CanvasXpressRangeSliderTicksLog {
  display: flex;
  padding: 0px 10px;
  height: 18px;
  margin-top: 10px;
}

div.CanvasXpressRangeSliderTicks {
  justify-content: space-between;
}

span.CanvasXpressRangeSliderTicksLong,
span.CanvasXpressRangeSliderTicks {
  position: relative;
  display: flex;
  justify-content: center;
  width: 1px;
  background: var(--cx-background-color);
  margin-bottom: 10px;
}

span.CanvasXpressRangeSliderTicksLong {
  color: var(--cx-background-color);
  height: 10px;
  line-height: 35px;
  font-size: small;
}

span.CanvasXpressRangeSliderTicks {
  height: 5px;
  line-height: 10px;
}

/**
 * Input type number
 */

input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

/***************/
/*  Scrollbars */
/***************/

/* All scrollbar buttons*/

div.CanvasXpressDataTableHorizontal::-webkit-scrollbar-button,
div.CanvasXpressDataTableVertical::-webkit-scrollbar-button,
/*div.CanvasXpressDataFilterContent::-webkit-scrollbar-button,*/
div.CanvasXpressDataFilterContainerMask::-webkit-scrollbar-button,
div.CanvasXpressDataFilterContainerMaskNoOverflow::-webkit-scrollbar-button,
div.CanvasXpressDataExplorer::-webkit-scrollbar-button,
div.CanvasXpressDataCustomizer::-webkit-scrollbar-button,
select.CanvasXpressSearchCustomizer::-webkit-scrollbar-button,
select.CanvasXpressConfigurator::-webkit-scrollbar-button,
div.CanvasXpressConfiguratorExample::-webkit-scrollbar-button,
div.CanvasXpressConfiguratorExampleContent::-webkit-scrollbar-button,
select.CanvasXpressSlider::-webkit-scrollbar-button,
div.cX-bin-name-container::-webkit-scrollbar-button {
  width: 4px;
  height: 4px;
}

/* Tracks can be of two different colors */

/*div.CanvasXpressDataFilterContent::-webkit-scrollbar-track,*/
div.CanvasXpressDataFilterContainerMask::-webkit-scrollbar-track,
div.CanvasXpressDataFilterContainerMaskNoOverflow::-webkit-scrollbar-track,
select.CanvasXpressSearchCustomizer::-webkit-scrollbar-track,
select.CanvasXpressConfigurator::-webkit-scrollbar-track,
select.CanvasXpressSlider::-webkit-scrollbar-track {
  background-color: rgb(255, 255, 255);
}

div.CanvasXpressDataTableHorizontal::-webkit-scrollbar-track,
div.CanvasXpressDataTableVertical::-webkit-scrollbar-track,
div.CanvasXpressDataExplorer::-webkit-scrollbar-track,
div.CanvasXpressDataCustomizer::-webkit-scrollbar-track,
div.CanvasXpressConfiguratorExample::-webkit-scrollbar-track,
div.CanvasXpressConfiguratorExampleContent::-webkit-scrollbar-track,
div.cX-bin-name-container::-webkit-scrollbar-track {
  background-color: rgb(245, 245, 245);
}

/* All tracks -hovers */

div.CanvasXpressDataTableHorizontal::-webkit-scrollbar-track:hover,
div.CanvasXpressDataTableVertical::-webkit-scrollbar-track:hover,
/*div.CanvasXpressDataFilterContent::-webkit-scrollbar-track:hover,*/
div.CanvasXpressDataFilterContainerMask::-webkit-scrollbar-track:hover,
div.CanvasXpressDataFilterContainerMaskNoOverflow::-webkit-scrollbar-track:hover,
div.CanvasXpressDataExplorer::-webkit-scrollbar-track:hover,
div.CanvasXpressDataCustomizer::-webkit-scrollbar-track:hover,
select.CanvasXpressSearchCustomizer::-webkit-scrollbar-track:hover,
select.CanvasXpressConfigurator::-webkit-scrollbar-track:hover,
div.CanvasXpressConfiguratorExample::-webkit-scrollbar-track:hover,
div.CanvasXpressConfiguratorExampleContent::-webkit-scrollbar-track:hover,
select.CanvasXpressSlider::-webkit-scrollbar-track:hover,
div.cX-bin-name-container::-webkit-scrollbar-track:hover {
  background-color: var(--cx-background-hover-color);
  border-radius: 8px;
}

/* scrollbar background could be of two different colors but match the style tracks above */

/*div.CanvasXpressDataFilterContent::-webkit-scrollbar,*/
div.CanvasXpressDataFilterContainerMask::-webkit-scrollbar,
div.CanvasXpressDataFilterContainerMaskNoOverflow::-webkit-scrollbar,
select.CanvasXpressSearchCustomizer::-webkit-scrollbar,
select.CanvasXpressConfigurator::-webkit-scrollbar,
select.CanvasXpressSlider::-webkit-scrollbar {
  width: 8px;
  height: 8px;
  background-color: rgb(255, 255, 255);
}

div.CanvasXpressDataTableHorizontal::-webkit-scrollbar,
div.CanvasXpressDataTableVertical::-webkit-scrollbar,
div.CanvasXpressDataExplorer::-webkit-scrollbar,
div.CanvasXpressDataCustomizer::-webkit-scrollbar,
div.CanvasXpressConfiguratorExample::-webkit-scrollbar,
div.CanvasXpressConfiguratorExampleContent::-webkit-scrollbar,
div.cX-bin-name-container::-webkit-scrollbar {
  width: 8px;
  height: 8px;
  background-color: rgb(245, 245, 245);
}

/* All tracks thumbs */

div.CanvasXpressDataTableHorizontal::-webkit-scrollbar-thumb,
div.CanvasXpressDataTableVertical::-webkit-scrollbar-thumb,
/*div.CanvasXpressDataFilterContent::-webkit-scrollbar-thumb,*/
div.CanvasXpressDataFilterContainerMask::-webkit-scrollbar-thumb,
div.CanvasXpressDataFilterContainerMaskNoOverflow::-webkit-scrollbar-thumb,
div.CanvasXpressDataExplorer::-webkit-scrollbar-thumb,
div.CanvasXpressDataCustomizer::-webkit-scrollbar-thumb,
select.CanvasXpressSearchCustomizer::-webkit-scrollbar-thumb,
select.CanvasXpressConfigurator::-webkit-scrollbar-thumb,
div.CanvasXpressConfiguratorExample::-webkit-scrollbar-thumb,
div.CanvasXpressConfiguratorExampleContent::-webkit-scrollbar-thumb,
select.CanvasXpressSlider::-webkit-scrollbar-thumb,
div.cX-bin-name-container::-webkit-scrollbar-thumb {
  background-color: var(--cx-background-contrast-color);
  border-radius: 8px;
  border: none;
}

div.CanvasXpressDataFilter::selection,
div.CanvasXpressDataFilterToolbar::selection {
  background: var(--cx-color-transparent);
  color: var(--cx-font-color);
}

div.CanvasXpressDataFilterContainerItem::selection {
  background: var(--cx-color-transparent);
  color: var(--cx-background-color);
}

/*
 * Menu
 */

div.CanvasXpressLink {
  box-sizing: border-box;
  background-color: rgba(255, 255, 255, 0.95);
  background-image: url(data:image/gif;base64,R0lGODlh+gABAIcAAOLj4/Dw8P///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAD6AAEAAAgfAAMIHEiwoMGBAAQcXMiwocOHECNKnEixosWLGCMGBAA7);
  background-repeat: repeat-y;
  border: 1px solid rgb(83, 105, 255);
  border-radius: 3px;
  box-shadow: rgba(154, 154, 154, 0.2) 3px 3px;
  color: var(--cx-font-color);
  cursor: default;
  font: var(--cx-font);
  line-height: 100%;
  margin: 0px;
  opacity: 0.95;
  padding: 0px;
  position: absolute;
  -moz-box-shadow: rgba(154, 154, 154, 0.2) 3px 3px;
}

div.CanvasXpressTabMenuConfigurator {
  box-sizing: border-box;
  position: relative;
}

input.CanvasXpressTabMenuConfigurator {
  display: none;
}

input:not(:checked).CanvasXpressTabMenuConfigurator+section.CanvasXpressTabMenuConfigurator>div.CanvasXpressTabMenuConfigurator {
  display: none;
}

section.CanvasXpressTabMenuConfigurator>h1.CanvasXpressTabMenuConfigurator {
  float: left;
}

section.CanvasXpressTabMenuConfigurator>div.CanvasXpressTabMenuConfigurator {
  float: right;
  width: 100%;
  margin: 22 0 0 -100%;
}

section.CanvasXpressTabMenuConfigurator>h1.CanvasXpressTabMenuConfigurator>label.CanvasXpressTabMenuConfigurator {
  cursor: pointer;
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
}

section.CanvasXpressTabMenuConfigurator>div.CanvasXpressTabMenuConfigurator {
  box-sizing: border-box;
  padding: 0.5px;
  border: 1px solid rgb(238, 238, 238);
  border-radius: 4px;
  background: rgb(255, 255, 255)
}

section.CanvasXpressTabMenuConfigurator>h1.CanvasXpressTabMenuConfigurator {
  box-sizing: border-box;
  margin: 0;
  padding: 0.5px;
  overflow: hidden;
  font: var(--cx-font);
  color: var(--cx-font-color);
  line-height: 100%;
}

section.CanvasXpressTabMenuConfigurator>h1.CanvasXpressTabMenuConfigurator>label.CanvasXpressTabMenuConfigurator {
  display: block;
  padding: 5px;
  border: 1px solid rgb(238, 238, 238);
  border-bottom: none;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  background: rgb(255, 255, 255)
}

input:first-child.CanvasXpressTabMenuConfigurator+section.CanvasXpressTabMenuConfigurator>h1.CanvasXpressTabMenuConfigurator {
  padding-left: 0;
}

section.CanvasXpressTabMenuConfigurator>div.CanvasXpressTabMenuConfigurator {
  position: relative;
  z-index: 1;
}

input:checked.CanvasXpressTabMenuConfigurator+section.CanvasXpressTabMenuConfigurator>h1.CanvasXpressTabMenuConfigurator {
  position: relative;
  z-index: 2;
}

div.CanvasXpressMenu {
  box-sizing: border-box;
  background-color: rgba(255, 255, 255, 0.95);
  border: 1px solid rgb(83, 105, 255);
  border-radius: 3px;
  box-shadow: rgba(154, 154, 154, 0.2) 3px 3px;
  color: var(--cx-font-color);
  cursor: default;
  font: var(--cx-x-large-font);
  line-height: 100%;
  margin: 0px;
  padding: 0px;
  position: absolute;
  opacity: 0.95;
  -moz-box-shadow: rgba(154, 154, 154, 0.2) 3px 3px;
}

ul.CanvasXpressList {
  background: transparent;
  border: 0px none;
  cursor: default;
  list-style: none;
  margin: 0px;
  overflow: auto;
  padding: 2px !important;
  height: calc(100% - 100px);
}

li.CanvasXpressListItemSep {
  cursor: default;
  display: block;
  font: var(--cx-x-large-font);
  color: var(--cx-font-color);
  font-size: 1px;
  height: 100%;
  line-height: 1px;
  list-style: none;
  margin: 0px;
  padding: 1px;
  /* width: 100%; */
  white-space: nowrap;
}

input.CanvasXpressListItem {
  cursor: default;
  display: block;
  font: var(--cx-x-large-font);
  color: var(--cx-font-color);
  line-height: 100%;
  list-style: none;
  margin: 0px;
  padding: 1px;
  white-space: nowrap;
}

input[type=file] {
  display: block;
}

div.CanvasXpressListItem {
  box-sizing: border-box;
  border: 1px solid rgb(83, 105, 255);
  font: var(--cx-x-large-font);
  color: var(--cx-font-color);
  line-height: 24px;
}

li.CanvasXpressListItem {
  border-color: rgba(0, 0, 0, 0);
  border-style: solid;
  border-width: 1px 0px;
  cursor: default;
  display: block;
  font: var(--cx-x-large-font);
  color: var(--cx-font-color);
  height: 100%;
  line-height: 100%;
  list-style: none;
  margin: 0px;
  padding: 0px;
  width: 100%;
  white-space: nowrap;
  text-align: left;
}

li.CanvasXpressListItemActive {
  background: rgba(83, 105, 255, 0.1);
  border-color: rgb(83, 105, 255);
  border-style: solid;
  border-width: 1px 0px;
  cursor: default;
  display: block;
  font: var(--cx-x-large-font);
  color: var(--cx-font-color);
  height: 100%;
  line-height: 100%;
  list-style: none;
  margin: 0px;
  padding: 0px;
  width: 100%;
  white-space: nowrap;
  text-align: left;
}

li.CanvasXpressListItemScrollTop {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAFCAYAAACw/UeDAAAARUlEQVR42mNkQAMXL178z0Ah0NfXZ0Tmo3BAFkhLS+M1IDw8kmHlyuV41Tx9+hTFIjiDWAtggBSLGMmxgFSLGKkRB4QAAILWJXgE49MrAAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border: 0px;
  cursor: pointer;
  height: 9px;
  line-height: 9px;
  width: 100%;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
}

li.CanvasXpressListItemScrollTopActive {
  background-color: rgb(219, 236, 244);
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAFCAYAAACw/UeDAAAAbUlEQVR42mNkQAOHb/38z0AhsFVjZ0Tmo3BAFmjIsOHULMLJwKDs1sFwd1cFw5vvuC258eQXikWMyBYoSOC2QIYXYgEMgCx68hm3RQ9eICxihFkgzI/bAk0xVAuQLbr+CrdFbz9CLGKkRhwQAgBYqyubRxy5uAAAAABJRU5ErkJggg==);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border: 1px;
  border-color: rgb(170, 204, 246);
  border-style: solid;
  cursor: pointer;
  height: 9px;
  line-height: 9px;
  width: 100%;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
}

li.CanvasXpressListItemScrollBottom {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAFCAYAAACw/UeDAAAASUlEQVR42mO8ePHifwYaA0YQAbJIWloar8Lw8EgMsZUrl+PV8/TpUwZ9fX1GRpgAqRYRawHcJ6RaRIoFGJbALCIcyvgBsgUgAACiryV42XltywAAAABJRU5ErkJggg==);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border: 0px;
  cursor: pointer;
  height: 9px;
  line-height: 9px;
  width: 100%;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
}

li.CanvasXpressListItemScrollBottomActive {
  background-color: rgb(219, 236, 244);
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAFCAYAAACw/UeDAAAAcklEQVR42mM8fOvnfwYaA0YQAbJImJ8NpyJNMQYGZbcODPG7uyoYrr/Cbfjbj78YbNXYGRlhAiCLFCRwWyTDi2oRyIInn3Fb8OAFxAK4T5At0pDBbZEIJ8QikAVvvuO24MYThAUYlsAsIjPo4QDZAhAAAK/AK5vjVTSgAAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border: 1px;
  border-color: rgb(170, 204, 246);
  border-style: solid;
  cursor: pointer;
  height: 9px;
  line-height: 9px;
  width: 100%;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
}

li.CanvasXpressListItemScrollSearch {
  border-color: rgb(170, 204, 246);
  border-style: solid;
  border-width: 1px;
  width: 100%;
}

input.CanvasXpressListItemScrollSearch {
  color: var(--cx-font-color);
  cursor: default;
  font: var(--cx-x-large-font);
  line-height: 24px;
  list-style: none;
  margin: 3px;
  outline-style: none;
  outline-width: 0px;
  padding-left: 5px;
  width: 93%;
}

a.CanvasXpressListItemA {
  border-color: rgba(0, 0, 0, 0);
  border-style: solid;
  border-width: 0px 1px;
  color: var(--cx-font-color);
  cursor: pointer;
  display: block;
  font: var(--cx-x-large-font);
  line-height: 24px;
  list-style: none;
  margin: 0px;
  outline-style: none;
  outline-width: 0px;
  padding: 3px 3px 3px 38px;
  position: relative;
  text-decoration: none;
  white-space: nowrap;
}

a.CanvasXpressListItemAActive {
  border-color: rgb(170, 204, 246);
  border-style: solid;
  border-width: 0px 1px;
  color: var(--cx-font-color);
  cursor: pointer;
  display: block;
  font: var(--cx-x-large-font);
  line-height: 24px;
  list-style: none;
  margin: 0px;
  outline-style: none;
  outline-width: 0px;
  padding: 3px 3px 3px 38px;
  position: relative;
  text-decoration: none !important;
  white-space: nowrap;
}

a.CanvasXpressListItemAArrow {
  background: url(data:image/gif;base64,R0lGODlhDAAJAIcAACluvipxvzJ1vyxwwCt1yjp6zkD/QDiC1jmE0zyE0z2I3UeLyUGJ2VWUzlKg7FSg6Weg1WKq8Y7D9orD/JXL/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAYALAAAAAAMAAkAAAgzAA8YGEiwoAEFCQwaJEABgUKCBCRMYPDQAIEHESAIeEjAQYMAFQksAFDR4oCSBgqgNBAQADs=) no-repeat scroll right 50% transparent;
  border-color: rgba(0, 0, 0, 0);
  border-style: solid;
  border-width: 0px 1px;
  color: var(--cx-font-color);
  cursor: pointer;
  display: block;
  font: var(--cx-x-large-font);
  line-height: 24px;
  list-style: none;
  margin: 0px;
  outline-style: none;
  outline-width: 0px;
  padding: 3px 3px 3px 38px;
  position: relative;
  text-decoration: none;
  white-space: nowrap;
}

a.CanvasXpressListItemAArrowActive {
  background: url(data:image/gif;base64,R0lGODlhDAAJAIcAACluvipxvzJ1vyxwwCt1yjp6zkD/QDiC1jmE0zyE0z2I3UeLyUGJ2VWUzlKg7FSg6Weg1WKq8Y7D9orD/JXL/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAYALAAAAAAMAAkAAAgzAA8YGEiwoAEFCQwaJEABgUKCBCRMYPDQAIEHESAIeEjAQYMAFQksAFDR4oCSBgqgNBAQADs=) no-repeat scroll right 50% transparent;
  border-color: rgb(170, 204, 246);
  border-style: solid;
  border-width: 0px 1px;
  color: var(--cx-font-color);
  cursor: pointer;
  display: block;
  font: var(--cx-x-large-font);
  line-height: 24px;
  list-style: none;
  margin: 0px;
  outline-style: none;
  outline-width: 0px;
  padding: 3px 3px 3px 38px;
  position: relative;
  text-decoration: none !important;
  white-space: nowrap;
}

img.CanvasXpressListIcon,
svg.CanvasXpressListIcon {
  background-position: center;
  border: 0px none !important;
  color: var(--cx-font-color);
  cursor: pointer;
  font: var(--cx-x-large-font);
  height: 24px;
  line-height: 24px;
  list-style: none;
  left: 3px;
  margin: 0px !important;
  padding: 0px;
  position: absolute;
  top: 3px;
  vertical-align: top;
  width: 24px;
  white-space: nowrap;
  background: rgba(0, 0, 0, 0) !important;
  box-shadow: 0 0 0px rgba(0, 0, 0, 0) !important;
}

span.CanvasXpressListItemText {
  color: var(--cx-font-color);
  cursor: pointer;
  font: var(--cx-x-large-font);
  line-height: 24px;
  list-style: none;
  margin-right: 10px;
  white-space: nowrap;
}

input.CanvasXpressListItemText {
  color: var(--cx-font-color);
  cursor: pointer;
  font: var(--cx-x-large-font);
  line-height: 24px;
  list-style: none;
  white-space: nowrap;
}

span.CanvasXpressListItemTextShort {
  color: var(--cx-font-color);
  cursor: pointer;
  float: right;
  font: var(--cx-small-font-italic);
  line-height: 24px;
  list-style: none;
  margin-left: 10px;
  white-space: nowrap;
}

span.CanvasXpressListItemTextSep {
  background-color: rgb(224, 224, 224);
  border-bottom: 1px solid;
  border-bottom-color: rgb(255, 255, 255);
  cursor: default;
  display: block;
  font: var(--cx-x-large-font);
  color: var(--cx-font-color);
  font-size: 1px;
  line-height: 1px;
  list-style: none;
  margin: 2px 3px;
  overflow: hidden;
  white-space: nowrap;
}

table.CanvasXpressListItemTable {
  border: collapse;
  line-height: 20px;
  color: var(--cx-font-color);
  cursor: default;
  font: var(--cx-x-large-font);
  color: var(--cx-font-color);
  line-height: 24px;
  padding-left: 3px;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
}

img.CanvasXpressToolbarHelp,
svg.CanvasXpressToolbarHelp {
  background: rgba(0, 0, 0, 0) !important;
  border: 0px none !important;
  box-shadow: 0 0 0px rgba(0, 0, 0, 0) !important;
  cursor: default;
  float: right;
  margin: 0px 0px 0px 2px !important;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  -ms-user-select: none;
}

div.CanvasXpressToolbarHelp {
  box-sizing: border-box;
  background-color: rgba(255, 255, 255, 0.95);
  border-radius: 5px;
  border: 1px solid rgb(83, 105, 255);
  box-shadow: rgba(154, 154, 154, 0.2) 3px 3px;
  color: var(--cx-font-color);
  cursor: default;
  font: var(--cx-x-large-font);
  line-height: 24px;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  -ms-user-select: none;
}

p.CanvasXpressToolbarHelp {
  cursor: default;
  font: var(--cx-x-large-font);
  color: var(--cx-font-color);
  line-height: 24px;
  margin: 0px;
  padding: 5px 5px 5px 20px;
}

div.CanvasXpressForm {
  box-sizing: border-box;
  border: 1px solid rgb(83, 105, 255);
  border-radius: 5px;
  background-color: rgba(255, 255, 255, 0.95);
  color: var(--cx-font-color);
  cursor: move;
  font: var(--cx-x-large-font);
  margin: 8px;
  padding: 8px;
  position: absolute;
  white-space: nowrap;
}

input.CanvasXpressFormButton {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAYAAADtlXTHAAAAFklEQVR42mP88OHDf0aSiGfPntGaAAAL8XAJa+SuYgAAAABJRU5ErkJggg==);
  background-repeat: repeat-x;
  border: 1px solid rgb(83, 105, 255);
  border-radius: 5px 5px 5px 5px;
  color: var(--cx-font-color);
  cursor: pointer;
  float: left;
  height: 22px;
  margin-top: 2px;
  overflow: hidden;
  padding: 2px;
  vertical-align: middle;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  -ms-user-select: none;
}

input.CanvasXpressFormButtonActive {
  background-color: rgba(255, 255, 255, 0.95);
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAYAAADtlXTHAAAAFklEQVR42mN89fnvf0aSiBvPf9GaAABVL3D5nF6uqAAAAABJRU5ErkJggg==);
  background-repeat: repeat-x;
  border: 1px solid rgb(83, 105, 255);
  border-radius: 5px 5px 0px 0px;
  color: var(--cx-font-color);
  cursor: pointer;
  float: left;
  height: 22px;
  margin-top: 2px;
  overflow: hidden;
  opacity: 0.95;
  padding: 2px;
  vertical-align: middle;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  -ms-user-select: none;
}

input.CanvasXpressFormText {
  background-color: rgba(255, 255, 255, 0.95);
  border: 1px solid rgb(83, 105, 255);
  color: var(--cx-font-color);
  cursor: default;
  font: var(--cx-x-large-font);
  line-height: 24px;
  padding-left: 3px;
}

form.CanvasXpressFormForm {
  background-color: rgba(255, 255, 255, 0.95);
  border: 1px solid rgb(83, 105, 255);
  color: var(--cx-font-color);
  cursor: default;
  font: var(--cx-x-large-font);
  line-height: 24px;
  margin: 8px;
  overflow: auto;
  padding-left: 3px;
}

div.CanvasXpressConfiguratorColor {
  box-sizing: content-box;
  border: 1px solid rgb(83, 105, 255);
  font: var(--cx-font);
  color: rgb(34, 34, 34);
  line-height: 18px;
}

div.CanvasXpressConfiguratorColorMain {
  box-sizing: content-box;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALUAAABlCAIAAACEDzXRAAAKQ0lEQVR42u2d23IjKwxFBeRh5v8/9uQlzXlI2gGELoCEm6pxubp6PI69WoV3C20uIQPAH4A/AH/p41/pDcTxP4BPGDtq3vYJGPpv8craeRdo/fyTI8ZhHnodOGgcV/3rnx8QI0SABO2xfAbiCfVR8Wj+CD8jenbRJNyGOxLoAaH1iLu4EUEHAv1+MsQ4zLE4AiIOcpibv4u9OET6+cP4ASnJ1JH4/G60A9km+GbBxLlpKAkADoR2JnaBrvWD/x1GCZn9EYLEHqVfI6Efx0D7E9tDF/rBSJ54l8FqTUse0J+EvxPrdK0fD4aOLXQi7zyGxMaRvvWjjH2U8o9I44OKnf+wyCpHoR/Phk6d/COq8481YrNI3/qR2B+kMl1Fl6J8o/JrU/GEA6HdiB2ha/0YBVx7rFwNHAj9JuIl6EI/qKyJug4Yvg7xA0QEpB8nQe8itoQu9EOT8M3mTsqUSUzykH6cBO1PbA9d91+ShDzV9xrtcgW21IT6L0yfcS90FKCdw+wS6Q9ISWjVfLTVVT2mdiPGGRduFKWm7dBStWlLmI0j/QExdgp7gT5qCu2BLKiLqtc94hI7PB8auQP4KuyIvSJ960fUqXWcd2F48Khr1bHSj2dDp/afmg7tMrFxpG/9mHMFuqrH3spFw0s0Bgr9OAzamdgFutaPpMuqo6WVEXWJdSL14xhof2J76MKfS2yXWGOVB1WXXGOVdxFSx587CXoLsTE0689RH7VW4RMLeKI9wPpzz4XeS2wDzdbXR52AWStjwiSAA6HdiB2h1f6cqT0whzzuzz0LejuxATTy90Xt40v7CzdGRvKS4O/zQ0AiXaRW5x/dv4vS4A/a308LYR5pFquRRvlHIrKWoCj5woCVId4eR/KPNDjURg2tdEC7rSQN5B9DYR70X5YivVxft7AyrOvrD4V2JnaBJurr+qpemLEywlRhT6qvPx16C7ExdK0fSjcj0maAzsqgBt7rfIxGP46B9iT2gi70I842bNj0U4wd/WAG/L5VP3p0W4iNoYv6Oh6eoJmSMW5laIzF8iT1TtgeV9RZoZ7QvdEUzsQu0CP+HOMKDFoZvDFg6s89CNqf2B5a4e8Hts84W0pgeohBtspBXYp8H3Tk/H23MBtHuvbn5mp7dlU9TUkP+XNJMabzHdCIbnuYDSItzZ+bdgUWrAwNPhwInRxw1/wXuYGj+4vo7flboRpjEQ6EjgojYK9/K04NFfNTauEBypXQWQLAfqQoHl9CfvpQ6C3ExtC9/q2YW2u6X1JWzfsYFPKX3L99LrQ/sT10XR+jKh+UN2AxlDOyXfLQaxxf/fkvT4d2JnaBZv258M6h4IFu2Em7/sezoLcQG0Mjfy6xrqLnVBLGWHw1i69WP5LCCn0TNEL3DLNXpCV/n5oo5jAVLY5Em6i8Pwm6uSNuCrNxpNX+nDira20qqyZriv384xhoZ2IX6Lr/wg8eiwpXYGQqPEgjsBrX+er3X46B9ie2h6bX/4i6IfcLS2mIY++7TfoCuLj6hwgN89CwBJ3Gx8rOVsn0kQ48tDS/4X1L8SzMb3BbkGdtwsD05AbP9YOU8xui+uljZei/P/3qx2HQbsSO0Ar/lveHLZYCVK4GeN1P5N+eAb2R2Aya9ueUY+8dlhLtdhWvgfEfz4AeGf9hR2wcaeTPpacvRdzLTx8J/Qq1Ij995PrJ3/mp0p8LO5YyF0s215g/9yxoZ2IXaLo+FiwtgTlvIAznp4+G3khsBk3Pf5mYvqOwMqZnNnw3i9cRDoT2JPaCZuvreskDuXkHxfQMvfbBgdBbiI2hC/3QLCg6lESZZkrfJ7nSj3gWNEMcRkYJsf5L0BXENBl1WV8/aquMLM9/eSJ0UtxZmFGGg4MigZ75ovHnvsOcUX09zRbzjCrU/K/Rev0gT2i2vu4cZrNI1+sH2e49Yb3lRC6e9fSS9ETohjj7hdkx0rQ/57/rxIrhBQdCv494Hlrtz1lo30Qjz1z+cRh02ndTNIMm1j8NxtmePs+76i+/esJHrH/6dGh/YntoRf9l2RtQWgJXzY4bdtbqx0OhnYldoHv7I79jf4+rOGGaRWr14yToLcTG0Ky/v32rjAsdX9S5vgI4ENqT2Asa7Z/9vq0yStiGNNVHkOe/RGmqwBQ0jEDHFpoJ85BLN+jPaRoHGWl2/2yx3msxVRHjZ0Td4GfV/Bf9bCM1dBiBfrHeJ1HR6dKEedDf5yPdBLilp/efC3Ribb1VxlUHGQe8iTb0598+Hdqf2B6a3b9SOerezsoIBWaJ3IBn1fp0j4PeQmwMzc5/idLK3UZWRkmKX2zA4Vc/DoPeSGwGrdvfY24RpKmVjrLuCQdCuxE7Qkv64TZ3Z44dVPrxUOh3EK9C1/lHGpz7ZzpVsYTF7K8Hyj+Ogd5FbAk9uL9H9LIyYg821sjo13gYtD+xPbRU/9Ds/b1sZTTIr5OStMGHA6GdiV2gUf2UmQcfJdUbXOoe6HoN1A0b2uQD4EBosXJqQTwKnXvXAEX+oZlfGaS9ewetDGCLeV1exH4e9Mr+2TDpv2iggYFW+LdBsTbngv/yUroGH0jleEX7MOgtxMbQ7PzKoMuajKyM8pYIiB194HnQzsQu0Gp/LvpulVHylsgK/TgG2p/YHrqXf6T3bJUBhfxFWUDPg95CbAytm/+ycasM9WOxWu0PnTniLWE2iLRi/4Z3bJXRvY76s0+Arl93I3aMNOHPBce2PdSkL7Kpnwe9l9gGutCPoFgkUtytXAGbex0vKCznSOs00o+ToLcQG0N/QErCrG6jrTIynVUDwo896vCzssPrNnAYtD+xPfR9fwmKeu/CVhm5OAn1STPkvhxBW1KXjeP60Y/DoJ2JXaAL/RCPy+PXc80L9d7OV294dVPbC/fb4EDoLcTG0IV+TCDrrIxMHIFg512BWj9OgvYk9oK+9SMoZG55q/JMiGS40/sLjacu28T3MVfd0Aha+u3QJXr+0Q//MBtHutaPQOzh3H0RBoZS5OJ/MjqJ9x2vQb7qgSuvX0StH0+FLptzrvTDh9gl0oV+iAbi2lAsqNmbK3yBAyLNdbRzW8Y6Btqf2B76A2IURE2zZY16KGfZlwqofJSL4feABka+xCNX+ekx0LuILaFr/Zit7s4ZA7y5Qg2sDr/t4zDodxCvQt/6occctDKGriMPzH85D9qN2BG61g/QwcLSVDSGl78C6LePY6A3EptBf0BKcjWWH/GqyJqoxKnMufEVBLJxAJwJ7U9sDH3fX0CxnIB4orMyuilTyRh6g+0bfDgQ2p/YHrrQD+jV6qb/SdRrMit8TRWwyEabxgFwJrQnsQt0rR+LR3VqFNiGHRBv73ge9EZiM+haPyicuRcVmIxzAMTMl9wfi3sGtBuxF3ShH92C29yJTteU+ohbRrZk3Qe9hdgY+tYPnOqanA+mTN33ZGKE06HQbsQu0LV+MF8+94rU5dK8B8/KyJaI+6D9ie2hC/3Q12QnSnYLn5p9P/6d0D7EltAh5wz/Hv8exON/LUjHOuz5CksAAAAASUVORK5CYII=);
  background-repeat: no-repeat;
  box-sizing: content-box;
  border: none;
  font: var(--cx-font);
  color:var(--cx-font-color);
  float: left;
  cursor: crosshair;
}

div.CanvasXpressConfiguratorColorExtra {
  box-sizing: content-box;
  background-image: url(data:image/gif;base64,R0lGODlhDwAPAKEBAAAAAP///////////yH5BAEKAAIALAAAAAAPAA8AAAIklB8Qx53b4otSUWcvyiz4/4AeQJbmKY4p1HHapBlwPL/uVRsFADs=);
  background-repeat: no-repeat;
  border: none;
  font: var(--cx-font);
  color: var(--cx-font-color);
  cursor: crosshair;
  overflow: hidden;
}

/*
 * Slider
 */

div.CanvasXpressSlider {
  background: rgba(0, 0, 0, 0);
  border: 1px solid rgba(35, 82, 124, 0.2);
  border-radius: 50%;
  height: 36px;
  position: absolute;
  margin-left: 3px;
  margin-right: 3px;
  width: 36px;
}

div.CanvasXpressSliderRemote {
  background: rgba(0, 0, 0, 0);
  height: 36px;
  position: absolute;
  margin-left: 3px;
  margin-right: 3px;
  width: 36px;
}

div.CanvasXpressSlider:hover {
  background: rgba(0, 0, 0, 0.4);
}

@media screen and (max-width: 480px) {
  div.CanvasXpressSlider {
    width: 20px;
    height: 20px;
  }
}

div.CanvasXpressSliderLeft {
  left: -50px;
}

div.CanvasXpressSliderLeft img,
div.CanvasXpressSliderLeft svg {
  margin: 5px 5px 3px 3px;
}

@media screen and (max-width: 480px) {
  div.CanvasXpressSliderLeft {
    left: -25px;
  }

  div.CanvasXpressSliderLeft img,
  div.CanvasXpressSliderLeft svg {
    margin: -4px 0px 0px -2px;
  }
}

div.CanvasXpressSliderRight {
  right: -50px;
}

div.CanvasXpressSliderRight img,
div.CanvasXpressSliderRight svg {
  margin: 5px 3px 3px 8px;
}

@media screen and (max-width: 480px) {
  div.CanvasXpressSliderRight {
    right: -25px;
  }

  div.CanvasXpressSliderRight img,
  div.CanvasXpressSliderRight svg {
    margin: -4px -2px 0px 2px;
  }
}

div.CanvasXpressSliderDotsContainer {
  top: 25%;
}

div.CanvasXpressSliderDots {
  width: 10px;
  height: 10px;
}

@media screen and (max-width: 480px) {
  div.CanvasXpressSliderDots {
    width: 5px;
    height: 5px;
    margin-left: 1px;
    margin-right: 1px;
  }
}

input.CanvasXpressSlider,
select.CanvasXpressSlider {
  padding: 2px 3px 2px 2px;
  cursor: default;
  color: var(--cx-font-color);
  border-left: none;
  border-right: none;
  border-top: none;
  border-bottom: 1px solid rgb(83, 105, 255);
  background: rgba(0, 0, 0, 0);
  width: 100%;
  max-Width: 100%;
  line-height: 22px;
  margin: 0;
}

input.CanvasXpressSlider:focus,
select.CanvasXpressSlider:focus {
  outline: 0;
}


/*
@media (max-width: 480px) {
  img {
    height : 16px;
    width : 16px;
  }
}
*/


/*
 * Parent Node
 */

div.CanvasXpress-ParentNode {
  /*
    border: 1px solid 'rgba(0,0,0,0)'
    margin: auto;
    display: table;
    padding: 0;
    */
  -moz-transform: none;
  -webkit-transform: none;
  -o-transform: none;
  -ms-transform: none;
  transform: none;
}

/*
 * CanvasXpress Tab Panel
 */

div.CanvasXpressTabPanel {
  font: var(--cx-x-large-font);
  float: left;
  width: 100%
}

/* Customizer */

div.CanvasXpressTabPanelCustomizer {
  position: relative;
  border-bottom: 1px solid rgb(238, 238, 238);
  top: -10px;
  overflow: hidden;
}

div.CanvasXpressTabPanelRibbonSection {
  width: fit-content;
  position: relative;
  border: 1px solid rgb(83, 105, 255);
  border-radius: 5px;
  padding-left: 8px;
  padding-top: 5px;
  margin-top: 12px;
  float: left;
}

span.CanvasXpressTabPanelRibbonSection {
  margin-left: -3px;
  background-color: white;
  position: absolute;
  float: left;
  top: -14px;
  padding: 3px;
}

div.CanvasXpressTabPanelRibbon {
  float: left;
  margin-right: 10px;
}

span.CanvasXpressTabPanelRibbon {
  color: var(--cx-font-color);
  font: var(--cx-x-large-font);
  line-height: 28px;
  list-style: none;
  white-space: nowrap;
  position: relative;
  height: 28px;
}

div.CanvasXpressTabPanelRibbonContainer {
  border: 1px solid rgb(83, 105, 255);
  border-radius: 5px;
  background-color: rgb(238, 238, 238);
}

svg.CanvasXpressTabPanelRibbon {
  float: left;
  border: 1px solid rgb(83, 105, 255);
  margin-left: 5px;
  margin-top: 5px;
  padding: 2px;
  border-radius: 5px;
  background-color: rgb(255, 255, 255);
}

svg.CanvasXpressTabPanelRibbon:hover {
  background: rgba(83, 105, 255, 0.1)
}

/* Header */

div.CanvasXpressTabPanelHeader {
  font: var(--cx-x-large-font);
  border-bottom: 2px solid rgb(83, 105, 255);
  height: 38px;
  width: 100%;
  float: left;
}

div.CanvasXpressTabPanelHeaderTab {
  font: var(--cx-x-large-font);
  margin-left: 20px;
  margin-right: 20px;
  float: left;
}

input.CanvasXpressTabPanelHeader {
  border-width: 1px 1px 0 1px;
  border-color: rgb(83, 105, 255);
  border-style: solid;
  border-radius: 5px 5px 0 0;
  padding: 8px;
  font: var(--cx-x-large-font);
  max-width: 100px;
  outline: none;
  text-align: center;
}

input.CanvasXpressTabPanelHeaderActive {
  border-bottom-width: 2px;
  border-left-color: rgb(83, 105, 255);
  border-top-color: rgb(83, 105, 255);
  border-right-color: rgb(83, 105, 255);
  border-bottom-color: rgb(255, 255, 255);
  border-style: solid;
  border-radius: 5px 5px 0 0;
  padding: 8px;
  font: var(--cx-x-large-font);
  max-width: 100px;
  outline: none;
  text-align: center;
}

/* Content */

div.CanvasXpressTabPanelContent {
  display: block;
  float: left;
  width: 100%;
  position: relative;
}

/* Rows */

div.CanvasXpressRow {
  clear: both;
  display: flex;
  flex-wrap: wrap;
  float: left;
  width: 100%;
}

div.CanvasXpressRow:before,
div.CanvasXpressRow:after {
  content: " ";
  display: table;
}

div.CanvasXpressRow:after {
  clear: both;
}

div.CanvasXpressRowColumnFull,
div.CanvasXpressRowColumnTwoThird,
div.CanvasXpressRowColumnThreeFourth,
div.CanvasXpressRowColumnFourFifth,
div.CanvasXpressRowColumnFiveSixth,
div.CanvasXpressRowColumnHalf,
div.CanvasXpressRowColumnThird,
div.CanvasXpressRowColumnFourth,
div.CanvasXpressRowColumnFifth,
div.CanvasXpressRowColumnSixth {
  float: left;
  /*
    padding-left: 1rem;
    padding-right: 1rem;
    */
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

div.CanvasXpressRowColumnFull:hover,
div.CanvasXpressRowColumnTwoThird:hover,
div.CanvasXpressRowColumnThreeFourth:hover,
div.CanvasXpressRowColumnFourFifth:hover,
div.CanvasXpressRowColumnFiveSixth:hover,
div.CanvasXpressRowColumnHalf:hover,
div.CanvasXpressRowColumnThird:hover,
div.CanvasXpressRowColumnFourth:hover,
div.CanvasXpressRowColumnFifth:hover,
div.CanvasXpressRowColumnSixth:hover {
  border: 1px dashed rgb(238, 238, 238);
}

div.CanvasXpressRowColumnFull {
  border: 1px dashed white;
  width: 100%;
}

div.CanvasXpressRowColumnFullActive {
  border: 1px dashed rgb(83, 105, 255);
  width: 100%;
}

div.CanvasXpressRowColumnTwoThird {
  border: 1px dashed white;
  width: 66.7%;
}

div.CanvasXpressRowColumnTwoThirdActive {
  border: 1px dashed rgb(83, 105, 255);
  width: 66.7%;
}

div.CanvasXpressRowColumnThreeFourth {
  border: 1px dashed white;
  width: 75%;
}

div.CanvasXpressRowColumnThreeFourthActive {
  border: 1px dashed rgb(83, 105, 255);
  width: 75%;
}

div.CanvasXpressRowColumnFourFifth {
  border: 1px dashed white;
  width: 80%;
}

div.CanvasXpressRowColumnFourFifthActive {
  border: 1px dashed rgb(83, 105, 255);
  width: 80%;
}

div.CanvasXpressRowColumnFiveSixth {
  border: 1px dashed white;
  width: 83.4%;
}

div.CanvasXpressRowColumnFiveSixthActive {
  border: 1px dashed rgb(83, 105, 255);
  width: 83.4%;
}

div.CanvasXpressRowColumnHalf {
  border: 1px dashed white;
  width: 50%;
}

div.CanvasXpressRowColumnHalfActive {
  border: 1px dashed rgb(83, 105, 255);
  width: 50%;
}

div.CanvasXpressRowColumnThird {
  border: 1px dashed white;
  width: 33.3%;
}

div.CanvasXpressRowColumnThirdActive {
  border: 1px dashed rgb(83, 105, 255);
  width: 33.3%;
}

div.CanvasXpressRowColumnFourth {
  border: 1px dashed white;
  width: 25%;
}

div.CanvasXpressRowColumnFourthActive {
  border: 1px dashed rgb(83, 105, 255);
  width: 25%;
}

div.CanvasXpressRowColumnFifth {
  border: 1px dashed white;
  width: 20%;
}

div.CanvasXpressRowColumnFifthActive {
  border: 1px dashed rgb(83, 105, 255);
  width: 20%;
}

div.CanvasXpressRowColumnSixth {
  border: 1px dashed white;
  width: 16.6%;
}

div.CanvasXpressRowColumnSixthActive {
  border: 1px dashed rgb(83, 105, 255);
  width: 16.6%;
}

/*
 * CanvasXpress
 */

canvas.CanvasXpress {
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  user-select: none;
  -ms-user-select: none;
}

canvas.CanvasXpress:hover {
  border: 1px solid rgba(35, 82, 124, 0.2);
  border-radius: 6px;
  margin: -1px;
}

canvas.CanvasXpressUpload {
  border: 1px solid rgba(35, 82, 124, 0.2);
  border-radius: 6px;
  margin: -1px;
  background-image: url('data:image/png;base64, ');
  background-size: contain;
  background-repeat: no-repeat;
}

canvas.CanvasXpress::selection {
  background: rgba(0, 0, 0, 0);
  color: rgb(0, 0, 0);
}

div.CanvasXpressPlay {
  background-color: rgba(0, 0, 0, 0.05);
  background-image: url('data:image/png;base64, ');
  background-position-x: 50%;
  background-position-y: center;
  background-size: 25%;
  background-repeat: no-repeat;
  position: absolute;
}

div.CanvasXpressPlay:hover {
  background-color: rgba(0, 0, 0, 0);
}

div.CanvasXpressContainer {
  box-sizing: border-box;
  position: relative;
  float: left;
}

div.CanvasXpressWrapper {
  box-sizing: border-box;
  position: relative;
  float: left;
  line-height: 100%;
}

/*
 * full-screen-warning-container
 */

#full-screen-warning-container {
  background-color: transparent !important;
  opacity: 0.4 !important;
}

#full-screen-warning-container[fade-warning-out] {
  transition-property: opacity !important;
  transition-duration: 1ms !important;
  opacity: 0.0 !important;
}

#full-screen-warning-message {
  padding: 15px !important;
}

.full-screen-description {
  font-size: 100% !important;
}

#full-screen-domain-text {
  font-size: 100% !important;
  font-weight: bold !important;
}

.full-screen-approval-button,
#full-screen-remember-decision {
  font-size: 100% !important;
}

@media (min-width: 300px) {
  div.cX-bin {
    transform: scale(0.5);
  }
}

@media (min-width: 450px) {
  div.cX-bin {
    transform: scale(0.75);
  }
}

@media (min-width: 600px) {
  div.cX-bin {
    transform: scale(1);
  }
}


/* Genie Effect */

.genie {
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
}

.genie .genie-step {
  background-repeat: no-repeat;
  background-image: inherit;
  position: absolute;
}

.genie.genie-expand .genie-step {
  -moz-transition: background-position 800ms ease-in-out;
  -webkit-transition: background-position 800ms ease-in-out;
  -o-transition: background-position 800ms ease-in-out;
  -ms-transition: background-position 800ms ease-in-out;
  transition: background-position 800ms ease-in-out;
}

.genie.genie-collapse .genie-step {
  -moz-transition: all 300ms ease-in-out;
  -webkit-transition: all 300ms ease-in-out;
  -o-transition: all 300ms ease-in-out;
  -ms-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}

.genie.genie-collapse.change-pace .genie-step {
  -moz-transition: background-position 800ms ease-in-out;
  -webkit-transition: background-position 800ms ease-in-out;
  -o-transition: background-position 800ms ease-in-out;
  -ms-transition: background-position 800ms ease-in-out;
  transition: background-position 800ms ease-in-out;
}

.genie.genie-expand.change-pace .genie-step {
  -moz-transition: all 300ms ease-in-out;
  -webkit-transition: all 300ms ease-in-out;
  -o-transition: all 300ms ease-in-out;
  -ms-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}

/* Hide Efect */

.appear {
  transition: all 1s linear;
  opacity: 1;
}

.dissapear {
  display: none;
}

.dissapearHidden {
  transition: all 1s linear;
  opacity: 0;
}

/* Magic Effects */


/*
Magic - Ver 1.3.0 - https://minimamente.com
Licensed under the MIT license
Copyright (c) 2018 Christian Pucci
*/

.magictime {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.showIn {
  -webkit-animation-name: showIn;
  animation-name: showIn;
}

@-webkit-keyframes showIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes showIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.showOut {
  -webkit-animation-name: showOut;
  animation-name: showOut;
}

@-webkit-keyframes showOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes showOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

.puffIn {
  -webkit-animation-name: puffIn;
  animation-name: puffIn;
}

@-webkit-keyframes puffIn {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(2, 2);
    transform: scale(2, 2);
    -webkit-filter: blur(2px);
    filter: blur(2px);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }
}

@keyframes puffIn {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(2, 2);
    transform: scale(2, 2);
    -webkit-filter: blur(2px);
    filter: blur(2px);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }
}

.puffOut {
  -webkit-animation-name: puffOut;
  animation-name: puffOut;
}

@-webkit-keyframes puffOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(2, 2);
    transform: scale(2, 2);
    -webkit-filter: blur(2px);
    filter: blur(2px);
  }
}

@keyframes puffOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(2, 2);
    transform: scale(2, 2);
    -webkit-filter: blur(2px);
    filter: blur(2px);
  }
}

.vanishIn {
  -webkit-animation-name: vanishIn;
  animation-name: vanishIn;
}

@-webkit-keyframes vanishIn {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(2, 2);
    transform: scale(2, 2);
    -webkit-filter: blur(90px);
    filter: blur(90px);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }
}

@keyframes vanishIn {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(2, 2);
    transform: scale(2, 2);
    -webkit-filter: blur(90px);
    filter: blur(90px);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }
}

.vanishOut {
  -webkit-animation-name: vanishOut;
  animation-name: vanishOut;
}

@-webkit-keyframes vanishOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(2, 2);
    transform: scale(2, 2);
    -webkit-filter: blur(20px);
    filter: blur(20px);
  }
}

@keyframes vanishOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(2, 2);
    transform: scale(2, 2);
    -webkit-filter: blur(20px);
    filter: blur(20px);
  }
}

.boingInUp {
  -webkit-animation-name: boingInUp;
  animation-name: boingInUp;
}

@-webkit-keyframes boingInUp {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: perspective(800px) rotateX(-90deg);
    transform: perspective(800px) rotateX(-90deg);
  }

  50% {
    opacity: 1;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: perspective(800px) rotateX(50deg);
    transform: perspective(800px) rotateX(50deg);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: perspective(800px) rotateX(0deg);
    transform: perspective(800px) rotateX(0deg);
  }
}

@keyframes boingInUp {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: perspective(800px) rotateX(-90deg);
    transform: perspective(800px) rotateX(-90deg);
  }

  50% {
    opacity: 1;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: perspective(800px) rotateX(50deg);
    transform: perspective(800px) rotateX(50deg);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: perspective(800px) rotateX(0deg);
    transform: perspective(800px) rotateX(0deg);
  }
}

.boingOutDown {
  -webkit-animation-name: boingOutDown;
  animation-name: boingOutDown;
}

@-webkit-keyframes boingOutDown {
  0% {
    opacity: 1;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: perspective(800px) rotateX(0deg) rotateY(0deg);
    transform: perspective(800px) rotateX(0deg) rotateY(0deg);
  }

  20% {
    opacity: 1;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: perspective(800px) rotateX(0deg) rotateY(10deg);
    transform: perspective(800px) rotateX(0deg) rotateY(10deg);
  }

  30% {
    opacity: 1;
    -webkit-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
    -webkit-transform: perspective(800px) rotateX(0deg) rotateY(0deg);
    transform: perspective(800px) rotateX(0deg) rotateY(0deg);
  }

  40% {
    opacity: 1;
    -webkit-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
    -webkit-transform: perspective(800px) rotateX(10deg) rotateY(10deg);
    transform: perspective(800px) rotateX(10deg) rotateY(10deg);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: perspective(800px) rotateX(90deg) rotateY(0deg);
    transform: perspective(800px) rotateX(90deg) rotateY(0deg);
  }
}

@keyframes boingOutDown {
  0% {
    opacity: 1;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: perspective(800px) rotateX(0deg) rotateY(0deg);
    transform: perspective(800px) rotateX(0deg) rotateY(0deg);
  }

  20% {
    opacity: 1;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: perspective(800px) rotateX(0deg) rotateY(10deg);
    transform: perspective(800px) rotateX(0deg) rotateY(10deg);
  }

  30% {
    opacity: 1;
    -webkit-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
    -webkit-transform: perspective(800px) rotateX(0deg) rotateY(0deg);
    transform: perspective(800px) rotateX(0deg) rotateY(0deg);
  }

  40% {
    opacity: 1;
    -webkit-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
    -webkit-transform: perspective(800px) rotateX(10deg) rotateY(10deg);
    transform: perspective(800px) rotateX(10deg) rotateY(10deg);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: perspective(800px) rotateX(90deg) rotateY(0deg);
    transform: perspective(800px) rotateX(90deg) rotateY(0deg);
  }
}

.foolishIn {
  -webkit-animation-name: foolishIn;
  animation-name: foolishIn;
}

@-webkit-keyframes foolishIn {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0) rotate(360deg);
    transform: scale(0, 0) rotate(360deg);
  }

  20% {
    opacity: 1;
    -webkit-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  40% {
    opacity: 1;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  60% {
    opacity: 1;
    -webkit-transform-origin: 0%;
    transform-origin: 0%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  80% {
    opacity: 1;
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1) rotate(0deg);
    transform: scale(1, 1) rotate(0deg);
  }
}

@keyframes foolishIn {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0) rotate(360deg);
    transform: scale(0, 0) rotate(360deg);
  }

  20% {
    opacity: 1;
    -webkit-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  40% {
    opacity: 1;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  60% {
    opacity: 1;
    -webkit-transform-origin: 0%;
    transform-origin: 0%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  80% {
    opacity: 1;
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1) rotate(0deg);
    transform: scale(1, 1) rotate(0deg);
  }
}

.foolishOut {
  -webkit-animation-name: foolishOut;
  animation-name: foolishOut;
}

@-webkit-keyframes foolishOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1) rotate(360deg);
    transform: scale(1, 1) rotate(360deg);
  }

  20% {
    opacity: 1;
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  40% {
    opacity: 1;
    -webkit-transform-origin: 100% 0%;
    transform-origin: 100% 0%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  60% {
    opacity: 1;
    -webkit-transform-origin: 0%;
    transform-origin: 0%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  80% {
    opacity: 1;
    -webkit-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0) rotate(0deg);
    transform: scale(0, 0) rotate(0deg);
  }
}

@keyframes foolishOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1) rotate(360deg);
    transform: scale(1, 1) rotate(360deg);
  }

  20% {
    opacity: 1;
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  40% {
    opacity: 1;
    -webkit-transform-origin: 100% 0%;
    transform-origin: 100% 0%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  60% {
    opacity: 1;
    -webkit-transform-origin: 0%;
    transform-origin: 0%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  80% {
    opacity: 1;
    -webkit-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
    -webkit-transform: scale(0.5, 0.5) rotate(0deg);
    transform: scale(0.5, 0.5) rotate(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0) rotate(0deg);
    transform: scale(0, 0) rotate(0deg);
  }
}

.holeIn {
  -webkit-animation-name: holeIn;
  animation-name: holeIn;
}

@-webkit-keyframes holeIn {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0) rotateY(360deg);
    transform: scale(0, 0) rotateY(360deg);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1) rotateY(0deg);
    transform: scale(1, 1) rotateY(0deg);
  }
}

@keyframes holeIn {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0) rotateY(360deg);
    transform: scale(0, 0) rotateY(360deg);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1) rotateY(0deg);
    transform: scale(1, 1) rotateY(0deg);
  }
}

.holeOut {
  -webkit-animation-name: holeOut;
  animation-name: holeOut;
}

@-webkit-keyframes holeOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1) rotateY(0deg);
    transform: scale(1, 1) rotateY(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0) rotateY(180deg);
    transform: scale(0, 0) rotateY(180deg);
  }
}

@keyframes holeOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1) rotateY(0deg);
    transform: scale(1, 1) rotateY(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0) rotateY(180deg);
    transform: scale(0, 0) rotateY(180deg);
  }
}

.swashIn {
  -webkit-animation-name: swashIn;
  animation-name: swashIn;
}

@-webkit-keyframes swashIn {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0);
    transform: scale(0, 0);
  }

  90% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0.9, 0.9);
    transform: scale(0.9, 0.9);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}

@keyframes swashIn {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0);
    transform: scale(0, 0);
  }

  90% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0.9, 0.9);
    transform: scale(0.9, 0.9);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}

.swashOut {
  -webkit-animation-name: swashOut;
  animation-name: swashOut;
}

@-webkit-keyframes swashOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }

  80% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0.9, 0.9);
    transform: scale(0.9, 0.9);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0);
    transform: scale(0, 0);
  }
}

@keyframes swashOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }

  80% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0.9, 0.9);
    transform: scale(0.9, 0.9);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(0, 0);
    transform: scale(0, 0);
  }
}

.bombLeftOut {
  -webkit-animation-name: bombLeftOut;
  animation-name: bombLeftOut;
}

@-webkit-keyframes bombLeftOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  50% {
    opacity: 1;
    -webkit-transform-origin: -100% 50%;
    transform-origin: -100% 50%;
    -webkit-transform: rotate(-160deg);
    transform: rotate(-160deg);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: -100% 50%;
    transform-origin: -100% 50%;
    -webkit-transform: rotate(-160deg);
    transform: rotate(-160deg);
    -webkit-filter: blur(20px);
    filter: blur(20px);
  }
}

@keyframes bombLeftOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  50% {
    opacity: 1;
    -webkit-transform-origin: -100% 50%;
    transform-origin: -100% 50%;
    -webkit-transform: rotate(-160deg);
    transform: rotate(-160deg);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: -100% 50%;
    transform-origin: -100% 50%;
    -webkit-transform: rotate(-160deg);
    transform: rotate(-160deg);
    -webkit-filter: blur(20px);
    filter: blur(20px);
  }
}

.bombRightOut {
  -webkit-animation-name: bombRightOut;
  animation-name: bombRightOut;
}

@-webkit-keyframes bombRightOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  50% {
    opacity: 1;
    -webkit-transform-origin: 200% 50%;
    transform-origin: 200% 50%;
    -webkit-transform: rotate(160deg);
    transform: rotate(160deg);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 200% 50%;
    transform-origin: 200% 50%;
    -webkit-transform: rotate(160deg);
    transform: rotate(160deg);
    -webkit-filter: blur(20px);
    filter: blur(20px);
  }
}

@keyframes bombRightOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  50% {
    opacity: 1;
    -webkit-transform-origin: 200% 50%;
    transform-origin: 200% 50%;
    -webkit-transform: rotate(160deg);
    transform: rotate(160deg);
    -webkit-filter: blur(0px);
    filter: blur(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 200% 50%;
    transform-origin: 200% 50%;
    -webkit-transform: rotate(160deg);
    transform: rotate(160deg);
    -webkit-filter: blur(20px);
    filter: blur(20px);
  }
}

.magic {
  -webkit-animation-name: magic;
  animation-name: magic;
}

@-webkit-keyframes magic {
  0% {
    opacity: 1;
    -webkit-transform-origin: 100% 200%;
    transform-origin: 100% 200%;
    -webkit-transform: scale(1, 1) rotate(0deg);
    transform: scale(1, 1) rotate(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 200% 500%;
    transform-origin: 200% 500%;
    -webkit-transform: scale(0, 0) rotate(270deg);
    transform: scale(0, 0) rotate(270deg);
  }
}

@keyframes magic {
  0% {
    opacity: 1;
    -webkit-transform-origin: 100% 200%;
    transform-origin: 100% 200%;
    -webkit-transform: scale(1, 1) rotate(0deg);
    transform: scale(1, 1) rotate(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 200% 500%;
    transform-origin: 200% 500%;
    -webkit-transform: scale(0, 0) rotate(270deg);
    transform: scale(0, 0) rotate(270deg);
  }
}

.swap {
  -webkit-animation-name: swap;
  animation-name: swap;
}

@-webkit-keyframes swap {
  0% {
    opacity: 0;
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: scale(0, 0) translate(-700px, 0px);
    transform: scale(0, 0) translate(-700px, 0px);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: scale(1, 1) translate(0px, 0px);
    transform: scale(1, 1) translate(0px, 0px);
  }
}

@keyframes swap {
  0% {
    opacity: 0;
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: scale(0, 0) translate(-700px, 0px);
    transform: scale(0, 0) translate(-700px, 0px);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: scale(1, 1) translate(0px, 0px);
    transform: scale(1, 1) translate(0px, 0px);
  }
}

.twisterInDown {
  -webkit-animation-name: twisterInDown;
  animation-name: twisterInDown;
}

@-webkit-keyframes twisterInDown {
  0% {
    opacity: 0;
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: scale(0, 0) rotate(360deg) translateY(-100%);
    transform: scale(0, 0) rotate(360deg) translateY(-100%);
  }

  30% {
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: scale(0, 0) rotate(360deg) translateY(-100%);
    transform: scale(0, 0) rotate(360deg) translateY(-100%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: scale(1, 1) rotate(0deg) translateY(0%);
    transform: scale(1, 1) rotate(0deg) translateY(0%);
  }
}

@keyframes twisterInDown {
  0% {
    opacity: 0;
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: scale(0, 0) rotate(360deg) translateY(-100%);
    transform: scale(0, 0) rotate(360deg) translateY(-100%);
  }

  30% {
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: scale(0, 0) rotate(360deg) translateY(-100%);
    transform: scale(0, 0) rotate(360deg) translateY(-100%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: scale(1, 1) rotate(0deg) translateY(0%);
    transform: scale(1, 1) rotate(0deg) translateY(0%);
  }
}

.twisterInUp {
  -webkit-animation-name: twisterInUp;
  animation-name: twisterInUp;
}

@-webkit-keyframes twisterInUp {
  0% {
    opacity: 0;
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: scale(0, 0) rotate(360deg) translateY(100%);
    transform: scale(0, 0) rotate(360deg) translateY(100%);
  }

  30% {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: scale(0, 0) rotate(360deg) translateY(100%);
    transform: scale(0, 0) rotate(360deg) translateY(100%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: scale(1, 1) rotate(0deg) translateY(0);
    transform: scale(1, 1) rotate(0deg) translateY(0);
  }
}

@keyframes twisterInUp {
  0% {
    opacity: 0;
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: scale(0, 0) rotate(360deg) translateY(100%);
    transform: scale(0, 0) rotate(360deg) translateY(100%);
  }

  30% {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: scale(0, 0) rotate(360deg) translateY(100%);
    transform: scale(0, 0) rotate(360deg) translateY(100%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: scale(1, 1) rotate(0deg) translateY(0);
    transform: scale(1, 1) rotate(0deg) translateY(0);
  }
}

.spaceInDown {
  -webkit-animation-name: spaceInDown;
  animation-name: spaceInDown;
}

@-webkit-keyframes spaceInDown {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    -webkit-transform: scale(.2) translate(0%, 200%);
    transform: scale(.2) translate(0%, 200%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }
}

@keyframes spaceInDown {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    -webkit-transform: scale(.2) translate(0%, 200%);
    transform: scale(.2) translate(0%, 200%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }
}

.spaceInLeft {
  -webkit-animation-name: spaceInLeft;
  animation-name: spaceInLeft;
}

@-webkit-keyframes spaceInLeft {
  0% {
    opacity: 0;
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transform: scale(.2) translate(-200%, 0%);
    transform: scale(.2) translate(-200%, 0%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }
}

@keyframes spaceInLeft {
  0% {
    opacity: 0;
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transform: scale(.2) translate(-200%, 0%);
    transform: scale(.2) translate(-200%, 0%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }
}

.spaceInRight {
  -webkit-animation-name: spaceInRight;
  animation-name: spaceInRight;
}

@-webkit-keyframes spaceInRight {
  0% {
    opacity: 0;
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    -webkit-transform: scale(.2) translate(200%, 0%);
    transform: scale(.2) translate(200%, 0%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }
}

@keyframes spaceInRight {
  0% {
    opacity: 0;
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    -webkit-transform: scale(.2) translate(200%, 0%);
    transform: scale(.2) translate(200%, 0%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }
}

.spaceInUp {
  -webkit-animation-name: spaceInUp;
  animation-name: spaceInUp;
}

@-webkit-keyframes spaceInUp {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: scale(.2) translate(0%, -200%);
    transform: scale(.2) translate(0%, -200%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }
}

@keyframes spaceInUp {
  0% {
    opacity: 0;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: scale(.2) translate(0%, -200%);
    transform: scale(.2) translate(0%, -200%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }
}

.spaceOutDown {
  -webkit-animation-name: spaceOutDown;
  animation-name: spaceOutDown;
}

@-webkit-keyframes spaceOutDown {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    -webkit-transform: scale(.2) translate(0%, 200%);
    transform: scale(.2) translate(0%, 200%);
  }
}

@keyframes spaceOutDown {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    -webkit-transform: scale(.2) translate(0%, 200%);
    transform: scale(.2) translate(0%, 200%);
  }
}

.spaceOutLeft {
  -webkit-animation-name: spaceOutLeft;
  animation-name: spaceOutLeft;
}

@-webkit-keyframes spaceOutLeft {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transform: scale(.2) translate(-200%, 0%);
    transform: scale(.2) translate(-200%, 0%);
  }
}

@keyframes spaceOutLeft {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transform: scale(.2) translate(-200%, 0%);
    transform: scale(.2) translate(-200%, 0%);
  }
}

.spaceOutRight {
  -webkit-animation-name: spaceOutRight;
  animation-name: spaceOutRight;
}

@-webkit-keyframes spaceOutRight {
  0% {
    opacity: 1;
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    -webkit-transform: scale(.2) translate(200%, 0%);
    transform: scale(.2) translate(200%, 0%);
  }
}

@keyframes spaceOutRight {
  0% {
    opacity: 1;
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    -webkit-transform: scale(.2) translate(200%, 0%);
    transform: scale(.2) translate(200%, 0%);
  }
}

.spaceOutUp {
  -webkit-animation-name: spaceOutUp;
  animation-name: spaceOutUp;
}

@-webkit-keyframes spaceOutUp {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: scale(.2) translate(0%, -200%);
    transform: scale(.2) translate(0%, -200%);
  }
}

@keyframes spaceOutUp {
  0% {
    opacity: 1;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: scale(1) translate(0%, 0%);
    transform: scale(1) translate(0%, 0%);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: scale(.2) translate(0%, -200%);
    transform: scale(.2) translate(0%, -200%);
  }
}

.perspectiveDown {
  -webkit-animation-name: perspectiveDown;
  animation-name: perspectiveDown;
}

@-webkit-keyframes perspectiveDown {
  0% {
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: perspective(800px) rotateX(0deg);
    transform: perspective(800px) rotateX(0deg);
  }

  100% {
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: perspective(800px) rotateX(-180deg);
    transform: perspective(800px) rotateX(-180deg);
  }
}

@keyframes perspectiveDown {
  0% {
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: perspective(800px) rotateX(0deg);
    transform: perspective(800px) rotateX(0deg);
  }

  100% {
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: perspective(800px) rotateX(-180deg);
    transform: perspective(800px) rotateX(-180deg);
  }
}

.perspectiveDownReturn {
  -webkit-animation-name: perspectiveDownReturn;
  animation-name: perspectiveDownReturn;
}

@-webkit-keyframes perspectiveDownReturn {
  0% {
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: perspective(800px) rotateX(-180deg);
    transform: perspective(800px) rotateX(-180deg);
  }

  100% {
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: perspective(800px) rotateX(0deg);
    transform: perspective(800px) rotateX(0deg);
  }
}

@keyframes perspectiveDownReturn {
  0% {
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: perspective(800px) rotateX(-180deg);
    transform: perspective(800px) rotateX(-180deg);
  }

  100% {
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: perspective(800px) rotateX(0deg);
    transform: perspective(800px) rotateX(0deg);
  }
}

.perspectiveLeft {
  -webkit-animation-name: perspectiveLeft;
  animation-name: perspectiveLeft;
}

@-webkit-keyframes perspectiveLeft {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(0deg);
    transform: perspective(800px) rotateY(0deg);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(-180deg);
    transform: perspective(800px) rotateY(-180deg);
  }
}

@keyframes perspectiveLeft {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(0deg);
    transform: perspective(800px) rotateY(0deg);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(-180deg);
    transform: perspective(800px) rotateY(-180deg);
  }
}

.perspectiveLeftReturn {
  -webkit-animation-name: perspectiveLeftReturn;
  animation-name: perspectiveLeftReturn;
}

@-webkit-keyframes perspectiveLeftReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(-180deg);
    transform: perspective(800px) rotateY(-180deg);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(0deg);
    transform: perspective(800px) rotateY(0deg);
  }
}

@keyframes perspectiveLeftReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(-180deg);
    transform: perspective(800px) rotateY(-180deg);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(0deg);
    transform: perspective(800px) rotateY(0deg);
  }
}

.perspectiveRight {
  -webkit-animation-name: perspectiveRight;
  animation-name: perspectiveRight;
}

@-webkit-keyframes perspectiveRight {
  0% {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: perspective(800px) rotateY(0deg);
    transform: perspective(800px) rotateY(0deg);
  }

  100% {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: perspective(800px) rotateY(180deg);
    transform: perspective(800px) rotateY(180deg);
  }
}

@keyframes perspectiveRight {
  0% {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: perspective(800px) rotateY(0deg);
    transform: perspective(800px) rotateY(0deg);
  }

  100% {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: perspective(800px) rotateY(180deg);
    transform: perspective(800px) rotateY(180deg);
  }
}

.perspectiveRightReturn {
  -webkit-animation-name: perspectiveRightReturn;
  animation-name: perspectiveRightReturn;
}

@-webkit-keyframes perspectiveRightReturn {
  0% {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: perspective(800px) rotateY(180deg);
    transform: perspective(800px) rotateY(180deg);
  }

  100% {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: perspective(800px) rotateY(0deg);
    transform: perspective(800px) rotateY(0deg);
  }
}

@keyframes perspectiveRightReturn {
  0% {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: perspective(800px) rotateY(180deg);
    transform: perspective(800px) rotateY(180deg);
  }

  100% {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: perspective(800px) rotateY(0deg);
    transform: perspective(800px) rotateY(0deg);
  }
}

.perspectiveUp {
  -webkit-animation-name: perspectiveUp;
  animation-name: perspectiveUp;
}

@-webkit-keyframes perspectiveUp {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(0deg);
    transform: perspective(800px) rotateX(0deg);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(180deg);
    transform: perspective(800px) rotateX(180deg);
  }
}

@keyframes perspectiveUp {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(0deg);
    transform: perspective(800px) rotateX(0deg);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(180deg);
    transform: perspective(800px) rotateX(180deg);
  }
}

.perspectiveUpReturn {
  -webkit-animation-name: perspectiveUpReturn;
  animation-name: perspectiveUpReturn;
}

@-webkit-keyframes perspectiveUpReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(180deg);
    transform: perspective(800px) rotateX(180deg);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(0deg);
    transform: perspective(800px) rotateX(0deg);
  }
}

@keyframes perspectiveUpReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(180deg);
    transform: perspective(800px) rotateX(180deg);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(0deg);
    transform: perspective(800px) rotateX(0deg);
  }
}

.rotateDown {
  -webkit-animation-name: rotateDown;
  animation-name: rotateDown;
}

@-webkit-keyframes rotateDown {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(0deg) translateZ(0px);
    transform: perspective(800px) rotateX(0deg) translateZ(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    -webkit-transform: perspective(800px) rotateX(-180deg) translateZ(300px);
    transform: perspective(800px) rotateX(-180deg) translateZ(300px);
  }
}

@keyframes rotateDown {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(0deg) translateZ(0px);
    transform: perspective(800px) rotateX(0deg) translateZ(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    -webkit-transform: perspective(800px) rotateX(-180deg) translateZ(300px);
    transform: perspective(800px) rotateX(-180deg) translateZ(300px);
  }
}

.rotateLeft {
  -webkit-animation-name: rotateLeft;
  animation-name: rotateLeft;
}

@-webkit-keyframes rotateLeft {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(0deg) translateZ(0px);
    transform: perspective(800px) rotateY(0deg) translateZ(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
    -webkit-transform: perspective(800px) rotateY(-180deg) translateZ(300px);
    transform: perspective(800px) rotateY(-180deg) translateZ(300px);
  }
}

@keyframes rotateLeft {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(0deg) translateZ(0px);
    transform: perspective(800px) rotateY(0deg) translateZ(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
    -webkit-transform: perspective(800px) rotateY(-180deg) translateZ(300px);
    transform: perspective(800px) rotateY(-180deg) translateZ(300px);
  }
}

.rotateRight {
  -webkit-animation-name: rotateRight;
  animation-name: rotateRight;
}

@-webkit-keyframes rotateRight {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(0deg) translate3d(0px);
    transform: perspective(800px) rotateY(0deg) translate3d(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
    -webkit-transform: perspective(800px) rotateY(180deg) translateZ(150px);
    transform: perspective(800px) rotateY(180deg) translateZ(150px);
  }
}

@keyframes rotateRight {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateY(0deg) translate3d(0px);
    transform: perspective(800px) rotateY(0deg) translate3d(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
    -webkit-transform: perspective(800px) rotateY(180deg) translateZ(150px);
    transform: perspective(800px) rotateY(180deg) translateZ(150px);
  }
}

.rotateUp {
  -webkit-animation-name: rotateUp;
  animation-name: rotateUp;
}

@-webkit-keyframes rotateUp {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(0deg) translateZ(0px);
    transform: perspective(800px) rotateX(0deg) translateZ(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
    -webkit-transform: perspective(800px) rotateX(180deg) translateZ(100px);
    transform: perspective(800px) rotateX(180deg) translateZ(100px);
  }
}

@keyframes rotateUp {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: perspective(800px) rotateX(0deg) translateZ(0px);
    transform: perspective(800px) rotateX(0deg) translateZ(0px);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
    -webkit-transform: perspective(800px) rotateX(180deg) translateZ(100px);
    transform: perspective(800px) rotateX(180deg) translateZ(100px);
  }
}

.slideDown {
  -webkit-animation-name: slideDown;
  animation-name: slideDown;
}

@-webkit-keyframes slideDown {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}

@keyframes slideDown {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}

.slideDown2 {
  -webkit-animation-name: slideDown2;
  animation-name: slideDown2;
}

@-webkit-keyframes slideDown2 {
  0% {
    height: 215px;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    height: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}

@keyframes slideDown2 {
  0% {
    height: 215px;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    height: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}

.slideDown3 {
  -webkit-animation-name: slideDown3;
  animation-name: slideDown3;
}

@-webkit-keyframes slideDown3 {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}

@keyframes slideDown3 {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}

.slideDownReturn {
  -webkit-animation-name: slideDownReturn;
  animation-name: slideDownReturn;
}

@-webkit-keyframes slideDownReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

@keyframes slideDownReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

.slideDownReturn2 {
  -webkit-animation-name: slideDownReturn2;
  animation-name: slideDownReturn2;
}

@-webkit-keyframes slideDownReturn2 {
  0% {
    height: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }

  100% {
    height: 215px;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

@keyframes slideDownReturn2 {
  0% {
    height: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }

  100% {
    height: 215px;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

.slideLeft {
  -webkit-animation-name: slideLeft;
  animation-name: slideLeft;
}

@-webkit-keyframes slideLeft {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

@keyframes slideLeft {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

.slideLeftReturn {
  -webkit-animation-name: slideLeftReturn;
  animation-name: slideLeftReturn;
}

@-webkit-keyframes slideLeftReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

@keyframes slideLeftReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

.slideLeftReturn2 {
  -webkit-animation-name: slideLeftReturn2;
  animation-name: slideLeftReturn2;
}

@-webkit-keyframes slideLeftReturn2 {
  0% {
    opacity: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

@keyframes slideLeftReturn2 {
  0% {
    opacity: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

.slideRight {
  -webkit-animation-name: slideRight;
  animation-name: slideRight;
}

@-webkit-keyframes slideRight {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}

@keyframes slideRight {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}

.slideRightReturn {
  -webkit-animation-name: slideRightReturn;
  animation-name: slideRightReturn;
}

@-webkit-keyframes slideRightReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

@keyframes slideRightReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

.slideUp {
  -webkit-animation-name: slideUp;
  animation-name: slideUp;
}

@-webkit-keyframes slideUp {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
}

@keyframes slideUp {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
}

.slideUp2 {
  -webkit-animation-name: slideUp2;
  animation-name: slideUp2;
}

@-webkit-keyframes slideUp2 {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
}

@keyframes slideUp2 {
  0% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
}

.slideUpReturn {
  -webkit-animation-name: slideUpReturn;
  animation-name: slideUpReturn;
}

@-webkit-keyframes slideUpReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

@keyframes slideUpReturn {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }

  100% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

.slideUpReturn2 {
  -webkit-animation-name: slideUpReturn2;
  animation-name: slideUpReturn2;
}

@-webkit-keyframes slideUpReturn2 {
  0% {
    opacity: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

@keyframes slideUpReturn2 {
  0% {
    opacity: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }

  100% {
    opacity: 1;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

.openDownLeft {
  -webkit-animation-name: openDownLeft;
  animation-name: openDownLeft;
}

@-webkit-keyframes openDownLeft {
  0% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

@keyframes openDownLeft {
  0% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

.openDownLeftReturn {
  -webkit-animation-name: openDownLeftReturn;
  animation-name: openDownLeftReturn;
}

@-webkit-keyframes openDownLeftReturn {
  0% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  100% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

@keyframes openDownLeftReturn {
  0% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  100% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

.openDownRight {
  -webkit-animation-name: openDownRight;
  animation-name: openDownRight;
}

@-webkit-keyframes openDownRight {
  0% {
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

@keyframes openDownRight {
  0% {
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

.openDownRightReturn {
  -webkit-animation-name: openDownRightReturn;
  animation-name: openDownRightReturn;
}

@-webkit-keyframes openDownRightReturn {
  0% {
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  100% {
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

@keyframes openDownRightReturn {
  0% {
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  100% {
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

.openUpLeft {
  -webkit-animation-name: openUpLeft;
  animation-name: openUpLeft;
}

@-webkit-keyframes openUpLeft {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

@keyframes openUpLeft {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

.openUpLeftReturn {
  -webkit-animation-name: openUpLeftReturn;
  animation-name: openUpLeftReturn;
}

@-webkit-keyframes openUpLeftReturn {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  100% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

@keyframes openUpLeftReturn {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  100% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

.openUpRight {
  -webkit-animation-name: openUpRight;
  animation-name: openUpRight;
}

@-webkit-keyframes openUpRight {
  0% {
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

@keyframes openUpRight {
  0% {
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

.openUpRightReturn {
  -webkit-animation-name: openUpRightReturn;
  animation-name: openUpRightReturn;
}

@-webkit-keyframes openUpRightReturn {
  0% {
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  100% {
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

@keyframes openUpRightReturn {
  0% {
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  100% {
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

.openDownLeftOut {
  -webkit-animation-name: openDownLeftOut;
  animation-name: openDownLeftOut;
}

@-webkit-keyframes openDownLeftOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

@keyframes openDownLeftOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

.openDownRightOut {
  -webkit-animation-name: openDownRightOut;
  animation-name: openDownRightOut;
}

@-webkit-keyframes openDownRightOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

@keyframes openDownRightOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

.openUpLeftOut {
  -webkit-animation-name: openUpLeftOut;
  animation-name: openUpLeftOut;
}

@-webkit-keyframes openUpLeftOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

@keyframes openUpLeftOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

.openUpRightOut {
  -webkit-animation-name: openUpRightOut;
  animation-name: openUpRightOut;
}

@-webkit-keyframes openUpRightOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

@keyframes openUpRightOut {
  0% {
    opacity: 1;
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  100% {
    opacity: 0;
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
}

.tinDownIn {
  -webkit-animation-name: tinDownIn;
  animation-name: tinDownIn;
}

@-webkit-keyframes tinDownIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateY(900%);
    transform: scale(1, 1) translateY(900%);
  }

  50%,
  70%,
  90% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateY(0);
    transform: scale(1.1, 1.1) translateY(0);
  }

  60%,
  80%,
  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateY(0);
    transform: scale(1, 1) translateY(0);
  }
}

@keyframes tinDownIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateY(900%);
    transform: scale(1, 1) translateY(900%);
  }

  50%,
  70%,
  90% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateY(0);
    transform: scale(1.1, 1.1) translateY(0);
  }

  60%,
  80%,
  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateY(0);
    transform: scale(1, 1) translateY(0);
  }
}

.tinDownOut {
  -webkit-animation-name: tinDownOut;
  animation-name: tinDownOut;
}

@-webkit-keyframes tinDownOut {

  0%,
  20%,
  40%,
  50% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateY(0);
    transform: scale(1, 1) translateY(0);
  }

  10%,
  30% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateY(0);
    transform: scale(1.1, 1.1) translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateY(900%);
    transform: scale(1, 1) translateY(900%);
  }
}

@keyframes tinDownOut {

  0%,
  20%,
  40%,
  50% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateY(0);
    transform: scale(1, 1) translateY(0);
  }

  10%,
  30% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateY(0);
    transform: scale(1.1, 1.1) translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateY(900%);
    transform: scale(1, 1) translateY(900%);
  }
}

.tinLeftIn {
  -webkit-animation-name: tinLeftIn;
  animation-name: tinLeftIn;
}

@-webkit-keyframes tinLeftIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateX(-900%);
    transform: scale(1, 1) translateX(-900%);
  }

  50%,
  70%,
  90% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateX(0);
    transform: scale(1.1, 1.1) translateX(0);
  }

  60%,
  80%,
  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateX(0);
    transform: scale(1, 1) translateX(0);
  }
}

@keyframes tinLeftIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateX(-900%);
    transform: scale(1, 1) translateX(-900%);
  }

  50%,
  70%,
  90% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateX(0);
    transform: scale(1.1, 1.1) translateX(0);
  }

  60%,
  80%,
  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateX(0);
    transform: scale(1, 1) translateX(0);
  }
}

.tinLeftOut {
  -webkit-animation-name: tinLeftOut;
  animation-name: tinLeftOut;
}

@-webkit-keyframes tinLeftOut {

  0%,
  20%,
  40%,
  50% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateX(0);
    transform: scale(1, 1) translateX(0);
  }

  10%,
  30% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateX(0);
    transform: scale(1.1, 1.1) translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateX(-900%);
    transform: scale(1, 1) translateX(-900%);
  }
}

@keyframes tinLeftOut {

  0%,
  20%,
  40%,
  50% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateX(0);
    transform: scale(1, 1) translateX(0);
  }

  10%,
  30% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateX(0);
    transform: scale(1.1, 1.1) translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateX(-900%);
    transform: scale(1, 1) translateX(-900%);
  }
}

.tinRightIn {
  -webkit-animation-name: tinRightIn;
  animation-name: tinRightIn;
}

@-webkit-keyframes tinRightIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateX(900%);
    transform: scale(1, 1) translateX(900%);
  }

  50%,
  70%,
  90% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateX(0);
    transform: scale(1.1, 1.1) translateX(0);
  }

  60%,
  80%,
  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateX(0);
    transform: scale(1, 1) translateX(0);
  }
}

@keyframes tinRightIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateX(900%);
    transform: scale(1, 1) translateX(900%);
  }

  50%,
  70%,
  90% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateX(0);
    transform: scale(1.1, 1.1) translateX(0);
  }

  60%,
  80%,
  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateX(0);
    transform: scale(1, 1) translateX(0);
  }
}

.tinRightOut {
  -webkit-animation-name: tinRightOut;
  animation-name: tinRightOut;
}

@-webkit-keyframes tinRightOut {

  0%,
  20%,
  40%,
  50% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateX(0);
    transform: scale(1, 1) translateX(0);
  }

  10%,
  30% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateX(0);
    transform: scale(1.1, 1.1) translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateX(900%);
    transform: scale(1, 1) translateX(900%);
  }
}

@keyframes tinRightOut {

  0%,
  20%,
  40%,
  50% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateX(0);
    transform: scale(1, 1) translateX(0);
  }

  10%,
  30% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateX(0);
    transform: scale(1.1, 1.1) translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateX(900%);
    transform: scale(1, 1) translateX(900%);
  }
}

.tinUpIn {
  -webkit-animation-name: tinUpIn;
  animation-name: tinUpIn;
}

@-webkit-keyframes tinUpIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateY(-900%);
    transform: scale(1, 1) translateY(-900%);
  }

  50%,
  70%,
  90% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateY(0);
    transform: scale(1.1, 1.1) translateY(0);
  }

  60%,
  80%,
  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateY(0);
    transform: scale(1, 1) translateY(0);
  }
}

@keyframes tinUpIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateY(-900%);
    transform: scale(1, 1) translateY(-900%);
  }

  50%,
  70%,
  90% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateY(0);
    transform: scale(1.1, 1.1) translateY(0);
  }

  60%,
  80%,
  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateY(0);
    transform: scale(1, 1) translateY(0);
  }
}

.tinUpOut {
  -webkit-animation-name: tinUpOut;
  animation-name: tinUpOut;
}

@-webkit-keyframes tinUpOut {

  0%,
  20%,
  40%,
  50% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateY(0);
    transform: scale(1, 1) translateY(0);
  }

  10%,
  30% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateY(0);
    transform: scale(1.1, 1.1) translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateY(-900%);
    transform: scale(1, 1) translateY(-900%);
  }
}

@keyframes tinUpOut {

  0%,
  20%,
  40%,
  50% {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateY(0);
    transform: scale(1, 1) translateY(0);
  }

  10%,
  30% {
    opacity: 1;
    -webkit-transform: scale(1.1, 1.1) translateY(0);
    transform: scale(1.1, 1.1) translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(1, 1) translateY(-900%);
    transform: scale(1, 1) translateY(-900%);
  }
}

.blink {
  -webkit-animation-name: blink;
  animation-name: blink;
}

@-webkit-keyframes blink {
  0% {
    opacity: 0;
    background-color: rgba(51, 122, 183, 1);
  }

  25% {
    opacity: 0.25;
    background-color: rgba(51, 122, 183, 0.75);
  }

  50% {
    opacity: 0.5;
    background-color: rgba(51, 122, 183, 0.5);
  }

  75% {
    opacity: 0.75;
    background-color: rgba(51, 122, 183, 0.25);
  }

  100% {
    opacity: 1;
    background-color: rgba(51, 122, 183, 0);
  }
}

@keyframes blink {
  0% {
    opacity: 0;
    background-color: rgba(51, 122, 183, 1);
  }

  25% {
    opacity: 0.25;
    background-color: rgba(51, 122, 183, 0.75);
  }

  50% {
    opacity: 0.5;
    background-color: rgba(51, 122, 183, 0.5);
  }

  75% {
    opacity: 0.75;
    background-color: rgba(51, 122, 183, 0.25);
  }

  100% {
    opacity: 1;
    background-color: rgba(51, 122, 183, 0);
  }
}