:root {
    --purple: rgb(164, 52, 235);
    --purple-alpha: rgb(164, 52, 235, 0);
    --purple-dark: rgb(88, 27, 128);
}

html,
body {
    overflow: hidden;
    width: 100%;
    height: 100%;
    font-family: sans-serif, "arial";
}

.letter-reward {
    margin-top: 100px;
    font-size: 24px;
}

.gold-letters {
    margin-top: 100px;
    font-size: 32px;
}

/* START Statistics */

#stats-container {
    height: 100%;
    width: 100%;
}

#stats-header {
    height: 100px;
}

#stats-questions {
    margin-top:50px;
}

#stats-header-text {
    text-align: center;
    padding: 72px;
}

#stats-header-logo {
    height: 100px;
    width: 100px;
    margin-left: 25px;
    float: left;
    position: absolute;
}

#stats-goldcube {
    margin-top: 50px;
}

    #stats-goldcube table {
        margin: auto;
        /*background-color: rgb(131 131 131 / 73%);*/
    }

#gold-room-row {
    font-size: 20px;
    text-align: center;
}

    #gold-room-row td {
        padding: 0 10px 0 10px;
    }

#gold-letter-row {
    font-size: 14px;
    text-align: center;
}


/* END statistics */

.gold-word-row span {
    margin-left: 2px;
    margin-right: 2px;
}

.gold-word-row .roomspan {
    color: #B998CE;
    letter-spacing: -0.1em;
    font-size: 24px;
    padding-right: 0.1em;
    text-align: center;
    margin-left: 5px;
    margin-right: 5px;
}

.gold-word-row .letterspan {

}

.zoom_button {
    bottom: 0.7%;
    left: 20%;
}

.question-zoom {
    left: 30%;
}

#piechart_3d > div > div:nth-child(1) > div {
    display: flex;
    justify-content: center;
    position: relative !important;
}

#piechart_3d > div > div:nth-child(1) {
    width: 100% !important;
}

#piechart_3d > div > div:nth-child(1) > div > svg > rect {
    opacity: 0.0;
}

.video-wrapper {
    display: block;
    position: absolute;
    height: auto;
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
    margin-top: 35px;
    margin-bottom: 25px;
}

    .video-wrapper iframe {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .video-wrapper video {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

.fullscreen-image-wrapper {
    display: block;
    position: absolute;
    height: auto;
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

    .fullscreen-image-wrapper img {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

.fa {
    color: #a534eb;
}

h2 {
    display: block;
    font-size: 1.17em;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
}

#cube-wrapper {
    position: absolute;
    left: 50%;
    perspective: 596px;
    font-family: sans-serif, "arial";
    animation-name: fade-in;
    animation-duration: 2s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}

    #cube-wrapper.faceOne,
    #cube-wrapper.faceTwo,
    #cube-wrapper.faceThree,
    #cube-wrapper.faceFour {
        perspective: 990px;
    }

    #cube {
    position: relative;
    transform-style: preserve-3d;
    animation-name: rotate-0;
    animation-duration: 2s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}


/* Size and border color for each face */

.face-glow {
    animation-duration: 1s;
    animation-timing-function: ease;
    animation-fill-mode: forwards;
}

button,
input[type=submit] {
    -webkit-appearance: none;
    outline: none;
    cursor: pointer;
}

/*
@media only screen and (max-width: 1023px),
(max-height: 600px) { */

    #bottom_face .faceWrapper iframe {
        width: calc(400px - 5%);
        height: 225px;
    }

    .promo {
        flex: 1;
        width: 95%;
        height: calc(97.5% - 245px);
    }

    #cube-wrapper {
        top: 48%;
        font-size: 12px;
    }
    
    h3{
        font-size: 10px;
    }

.face {
    position: absolute;
    width: 400px;
    height: 225px;
    border: solid black 1px;
    transform-origin: center;
    background: white;
    transform: translateZ(0);
    backface-visibility: hidden;
    -webkit-font-smoothing: subpixel-antialiased;
}

    .mask {
        background-image: url(/content/images/custom/xxess360/base/mask.png);
    }

     form {
        height: 90px;
    }
    
    .logo p{
/*        display: none;*/
    }

    /* Transforming every face into their correct positions */

    #front_face {
        transform: translateX(-200px) translateY(-100px) translateZ(200px);
    }

    #back_face {
        transform: translateX(-200px) translateY(-100px) translateZ(-200px) rotateY(180deg);
    }

    #right_face {
        transform: translateY(-100px) rotateY(90deg);
    }

    #left_face {
        transform: translateY(-100px) translateX(-400px) rotateY(-90deg);
    }

    #top_face {
        transform: translateX(-200px) translateY(-300px) rotateX(90deg);
        background: white;
        height: 400px;
    }

    #bottom_face {
        transform: translateY(-75px) translateX(-200px) rotateX(-90deg);
        background: rgb(117, 113, 112);
        height: 400px;
    }
/*} */

/*@media only screen and (min-width: 1023px) and (min-height: 600px) { 

    #bottom_face .faceWrapper iframe {
        width: calc(660px - 5%);
        height: 400px;
    }

    .promo {
        flex: 1;
        width: 95%;
        height: calc(97.5% - 450px);
    }

    #cube-wrapper {
        top: 38%;
        font-size: 12px;
    }

    .face {
        position: absolute;
        width: 666px;
        height: 375px;
        border: solid black 3px;
        background: white;
    }

    .mask {
        background-image: url(../../../images/custom/xxess360/base/mask_large.png);
    }

    form {
        height: 220px;
    }


    #front_face {
        transform: translateX(-333px) translateY(-100px) translateZ(333px);
    }

    #back_face {
        transform: translateX(-333px) translateY(-100px) translateZ(-333px) rotateY(180deg);
    }

    #right_face {
        transform: translateY(-100px) rotateY(90deg);
    }

    #left_face {
        transform: translateY(-100px) translateX(-666px) rotateY(-90deg);
    }

    #top_face {
        transform: translateX(-333px) translateY(-435px) rotateX(90deg);
        background: white;
        height: 664px;
    }

    #bottom_face {
        transform: translateY(-57px) translateX(-333px) rotateX(-90deg);
        background: rgb(117, 113, 112);
        height: 664px;
    }
 } */

#cube {
    transform: rotateX(90deg) rotateY(90deg);
    transform-origin: center;
}


/* content of the faces */

h3 {
    margin: 60px 10px 10px 30px;    
}

#cube p {
    margin-top: 10px;
    margin-bottom: 5px;
    margin-left: 5%;
    line-height: 17px;
    direction: ltr;    
}

#cube p label {
    width: 50%;
    margin-top: 5px;
    margin-left: 5px;
}

.mask {
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: -1;
    background-size: cover;
}

.art {
    top: 0;
    right: 0;
    height: 100%;
    width: 60%;
    object-fit: cover;
    position: absolute;
    z-index: -2;
}

form {
    display: flex;
    flex-direction: column;
    line-height: 10px;
    overflow-y: auto;
    –webkit-overflow-scrolling: touch;
    direction: rtl;
}

.question {
    display: flex;
}

input[type=submit] {
    position: absolute;
    background: rgb(255, 255, 255, .5);
    width: 30%;
    left: 10%;
    bottom: 2%;
    border: none !important;
}

input[type=submit]:hover {
    color: rgb(164, 52, 235);
    border: none !important;
}

input[type=submit]:active {
    background: rgb(255, 255, 255, .9);
    transform: translateY(4px);
    border: none !important;
}

input[type=submit]:focus {
    border: none !important;
}

.face button {
    /* Remove styling */
    background: rgb(0, 0, 0, 0);
    box-shadow: 0px 0px 0px transparent;
    border: 0px solid transparent;
    text-shadow: 0px 0px 0px transparent;

    height: 20px;
    width: 20px;
    font-size: 15px;
    position: absolute;
}

.face button i:hover {
    color: var(--purple);
}

.face button:active {
    transform: translateY(4px);
}

.goBack {
    bottom: 0.5%;
    left: 2%;
}

.goRight {
    bottom: 0.5%;
    left: 40%;
}

.goUp {
    color: white;
    top: 2px;
    right: 5px;
    z-index: 1;
}

.goUp i {
    transform: rotate(45deg);
}

.goDown {
    color: white;
    position: absolute;
    bottom: 2px;
    right: 5px;
}

.goDown i {
    transform: rotate(-45deg);
}

iframe {
    z-index: 0;
}

.logo {
    display: flex;
    position: absolute;
    top: 2%;
    left: 2%;
    color: var(--purple);
}

    .logo img {
        width: 25px;
        height: 25px;
        z-index: 1;
    }


.counter {
    position: absolute;
    top: 2%;
    left: 15%;
}
/* Restyle the scrollbar ----------------------*/
/* width */
::-webkit-scrollbar {
  width: 4px;
}

/* Track */
::-webkit-scrollbar-track {
  background: #f1f1f1;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #888;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #555;
}

/* Restyle the radio button ----------------------*/
/* The container */
.customRadio {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 22px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Hide the browser's default radio button */
.customRadio input {
    z-index: 3;
    height: 20px;
    width: 20px;
    left: -5px;
    top: -4px;
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

/* Create a custom radio button */
.checkmark {
    position: absolute;
    top: 3px;
    left: 0;
    height: 20px;
    width: 20px;
    border: 1px solid black;
    border-radius: 50%;
}

input[type=checkbox] + .checkmark {
    border-radius: 0%;
}

/* On mouse-over, add a grey background color */
.customRadio:hover input ~ .checkmark {
    background-color: rgb(204, 204, 204, .5);
}


/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the indicator (dot/circle) when checked */
.customRadio input:checked ~ .checkmark:after {
    display: block;
}

/* Style the indicator (dot/circle) */
.customRadio .checkmark:after {
    top: 6px;
    left: 6px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: black;
}

input[type=checkbox] + .checkmark:after {
    border-radius: 0%;
}

.pagination {
    display: flex;
    position: absolute;
    top: 2%;
    left: 40%;
    z-index: 1;
}

.pagination p {
    border: 1px solid black;
    border-radius: 50%;
    float: left;
    padding: 0 4px;
    margin: 5px;
    text-decoration: none;
    width: 5px;
    height: 11px;
}

.pagination p.finished {
    background-color: var(--purple);
    color: white;
}

.pagination p.active {
    border: 1px solid black;
    border-radius: 50% !important;
    color: white !important;
    animation-name: ripple;
    animation-duration: 2s;
    animation-iteration-count: infinite;
}

@keyframes ripple {
    0% {
        box-shadow:
            0 0 0 1px white,
            0 0 0 2px var(--purple);
    }

    100% {
        box-shadow:
            0 0 0 5px white,
            0 0 0 6px var(--purple-alpha);
    }
}

.pagination p:hover:not(.active) {
    background-color: #ddd;
}

.pagination .finished:hover {
    background-color: var(--purple-dark) !important;
    cursor: pointer;
}

#bottom_face .faceWrapper {
    margin: 2.5%;
    width: 95%;
    height: 95%;
    display: flex;
    flex-direction: column;
}

.faceWrapper iframe {
    border: 2px solid black;
}

.promo {
    color: white;
}

.promo h4 {
    margin: 5px 0 0 5%;
    font-size: 1.4em;
}

.promo button {
    font-size: 30px;
    right: 13px;
    top: -4px;
    color: white;
}

.promo button i {
    transform: rotate(45deg);
}

.promo button i:active {
    transform: rotate(45deg);
}

.info {
    color: rgb(224, 201, 147);
}

.info table {
    margin-left: 10%;
    width: 80%;
}

.info table:nth-child(2) {
    width: 20px;
}

/*------------------*/
.stats {
    width: 100%;
    height: 100%;
    display: flex;
}

.leftDiv {
    padding: 2.5%;
    width: 22.5%;
    height: 95%;
    background-color: rgb(68, 115, 197);
}

.rightDiv {
    font-size: .75em;
    width: 72.5%;
    height: 100%;
    background-color: green;
}

.rightDiv > div {
    display: flex;
    width: 100%;
    height: 10%;
    background-color: pink;
    margin: 0 !important;
}

.rightDiv > div div {
    margin: 0px !important;
    padding: 5px;
    width: calc(100% - 10px);
    height: calc(100% - 10px);
}

.rightDiv > div div:hover {
    background-color: grey;
}


.cubeForm {
    margin: 20px 10px 10px 30px;
    width: 320px;
}

.controller-cube h3 {
    max-width:300px;
}

.faceFour .logo {
    text-transform: none;
}

.logo {
    text-transform: uppercase;
    width: 300px;
}

.pagination {
    text-align:right;
    float:right;
    width:100px;
    margin-left:100px;
    margin-top:10px;
}


.logo-text {
    float:left;
}

button.cube-check-answer-button {
    background: none;
    background-color: #72309d !important;
    border: 0;
    box-shadow: none;
    padding: 5px 10px 5px 10px;
    width: auto;
    font-size: 10pt;
    color: white;
    height: auto;
    left: 10%;
    bottom: 0.7%;
/*    margin-top: 15px;*/
}

button.cube-login {
    background: none;
    background-color: #72309d !important;
    border: 0;
    box-shadow: none;
    padding: 5px 10px 5px 10px;
    width: 163px;
    border-radius: 3px;
    font-size: 10pt;
    color: white;
    height: auto;
    position: relative;
    margin-top: 19px;
}

.question-answers-box {
    margin: 8px;
}

div.question-answers-box-images {
    display: inline-block;
    width: 155px;
    height: 100px;
    text-align: center;
    margin: 0 5px 5px 0;
    vertical-align: middle;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

div .question-answers {
    max-width: 320px;    
    margin-top:10px;
}

#cube-login-form {
    margin-left: 30px;
    margin-right: 25px;
    margin-top: 20px;
    display: flex;
    flex-direction: column;
}


.controller-cube input[type=text],
.controller-cube input[type=password] {
    border: 0;
    border-bottom: 1px solid #72309d;
    border-radius: 0;
    font-size: 14px;
    line-height: 14px;
    box-shadow: none !important;
    outline: none !important;
    width: 250px;
    padding: 3px;
}

.fullscreen-image-wrapper .cube-face-fullscreen {
    width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

#cube-login-form .e-input-group {
    border-width: 1px;
    border-radius: 2px;
    width: 100px;
    height: 21px;
    background-color: #fff;
    display: flex;
    justify-content: center;
}
    #cube-login-form .e-input-group input.e-input {
        min-height: 12px;
        padding-left: 5px;
        display: none;
    }

.e-treeview .e-text-content, .e-treeview .e-fullrow {
    background-color: #eee;
}

.e-treeview .e-list-item {
    background-color: #eee;
}

    .e-treeview .e-list-item.e-active, .e-treeview .e-list-item.e-hover {
        background-color: #bbb;
    }

        .e-treeview .e-list-item.e-active > .e-fullrow {
            background-color: #bbb;
        }

.e-treeview .e-list-item.e-disable .e-list-text {
    color: rgb(0 0 0);
}

.e-ddt-hidden {

    display: none;
}

.e-input-group .e-input-group-icon, .e-input-group.e-control-wrapper .e-input-group-icon {
    margin-top: 0px;
}

.e-input-group, .e-input-group.e-control-wrapper {
    margin-bottom: 0px;
}
#login-type_tree ul {
    padding: 0 0 0 0;
}

.e-treeview .e-list-item.e-active > .e-fullrow {
    background-color: #72309d;
    border-color: #72309d;
}

#login-type_tree li:hover {
    background: #72309d;
}

#cube-login-form span {
    padding-left: 2px;
    padding-right: 2px;
    margin-bottom: 0px;
    margin-top: 0px;
}

#login-type_popup {
    width: 175px !important;
}