.grid-item-content {
    overflow: hidden;
    display: flex;
    flex: 1 1 auto;
    flex-flow: column;
}

.grid-item-content .img-container {
    flex: 1;
    display: flex;
    overflow: hidden;
    justify-content: center;
}

.grid-item-content .text-container {
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
}

.grid, .grid-item-content .text-container span {
    /* make non-selectable */
    -webkit-user-select: none; /* Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE10+/Edge */
    user-select: none; /* Standard */
    max-width: 100%;
    overflow: hidden;
}

.grid-layout li {
    margin-bottom: 0;
}

.selected.element-container {
    -webkit-animation: background 0.5s cubic-bezier(1,0,0,1);
    animation: background 0.5s cubic-bezier(1,0,0,1);
}

.highlight.element-container {
    animation: background 1s steps(20, end) infinite;
    -webkit-animation: background 1s steps(20, end) infinite;
}

.noanimation {
    -webkit-animation: none !important;
    animation: none !important;
}

@-webkit-keyframes background {
    0% { filter: brightness(50%); }
}

@keyframes background {
    0% { filter: brightness(50%); }
}

.mouseentered.element-container {
    outline: thick solid green !important;
    background: lightgreen;
    z-index: 10;
}

.marked.element-container {
    outline: 5px solid green !important;
    z-index: 11;
    filter: brightness(80%);
}

.transfer-prop-source.element-container {
    outline: 5px solid red !important;
    z-index: 11;
    filter: brightness(80%);
}

.scanInactive.element-container, .scanInactive.element-container span {
    background: lightgray !important;
    color: darkgray !important;
    opacity: 0.4;
}

.inactive span {
    background-color: whitesmoke !important;
    color: darkgray !important;
}

.scanInactive .img-container {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
    filter: grayscale(1); /* Microsoft Edge and Firefox 35+ */
}

@font-face {
    font-family: "OpenDyslexic-Regular";
    src: url("../fonts/OpenDyslexic-Regular.woff2");
}

@font-face {
    font-family: "Roboto-Regular";
    src: url("../fonts/roboto-regular.woff2");
}

@font-face {
    font-family: "Jost-400-Book";
    src: url("../fonts/Jost-400-Book.woff2");
}

@font-face {
    font-family: "Jost-500-Medium";
    src: url("../fonts/Jost-500-Medium.woff2");
}
.text-container.Jost-500-Medium,  .text-container.Jost-400-Book {
    font-feature-settings: 'ss01' on;
}

/* Text rotation classes for upside-down text display */
.text-container.upside-down,
.collect-container.upside-down {
    transform: rotate(180deg);
}