@font-face {
  font-family: rainyHearts;
  src: url(rainyhearts.ttf);
}
body { 
    padding: 0; 
    margin: 0; 
    background: linear-gradient(180deg, #959595 20%, #e2dfdf 80%);
    height: 100vh; 
    font-family: rainyHearts;
}
#unity-container { 
    position: absolute;
}
#unity-container.unity-desktop { left: 50%; top: 50%; transform: translate(-50%, -50%) }
#unity-container.unity-mobile { position: fixed; width: 100%; height: 100% }
#unity-canvas { 
    background: #231F20;
    border-radius: 1%;
}
.unity-mobile #unity-canvas { width: 100%; height: 100% }
#unity-loading-bar { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: none }
#unity-logo { width: 154px; height: 130px; background: url('unity-logo-dark.png') no-repeat center }
#unity-progress-bar-empty { width: 141px; height: 18px; margin-top: 10px; margin-left: 6.5px; background: url('progress-bar-empty-dark.png') no-repeat center }
#unity-progress-bar-full { width: 0%; height: 18px; margin-top: 10px; background: url('progress-bar-full-dark.png') no-repeat center }
#unity-footer { position: relative }
.unity-mobile #unity-footer { display: none }
#unity-logo-title-footer { float:left; width: 38px; height: 38px; background: url('sol.png') no-repeat center; background-size: cover; }
#unity-build-title { float: left; margin-left: 10px; line-height: 38px; font-size: 25px }
#unity-fullscreen-button { cursor:pointer; float: right; width: 38px; height: 38px; background: url('fullscreen-button-lmo-2.png') no-repeat center }
#unity-warning { position: absolute; left: 50%; top: 5%; transform: translate(-50%); background: white; padding: 10px; display: none }
#sidebar {
    position: fixed;
    top: 1em;
    padding: 10px 7px;
    width: 20vw;
    z-index: 9999;
    text-align: center;
    background: #fff;
    display: none;
    flex-direction: column;
    left: 1em;
    border-radius: 1%;
    transition: width 0.5s ease-out, height 0.5s ease-out;
    animation: animate-width 1.2s 1 ease-in-out;

    &.closed {
        width: 20px!important;
        div:not(#sidebar-top) {
            display: none!important;
        }
    }
}

#sidebar.unity-mobile {
    width: 90vw;
    left: 4vw;

    animation: animate-width-mobile 1.2s 1 ease-in-out;
}

.sidebar-opacity {
    transition: opacity 0.5s ease-out;
    animation: animate-opacity 1.2s 1 ease-in-out;
}

#presentation-lmo {
    display: flex; 
    gap: 0.5em;
    justify-content: center;
    align-items: center;
}

#presentation-lmo > div > p {
    font-size: 15px; 
    text-align: left; 
    font-weight: bold;
    border-top: 2px solid #A62639;
    margin: 0;
}

.sidebar-yap {
    padding: 7px 0; 
    font-size: 14px; 
    color: #6d6d6d;
}

#sidebar-btns a {
    display: inline-block;
    margin: 4px 6px;
    padding: 3px 9px;
    width: 60px;
    background: #ffffff;
    border: 1px solid #A62639;
    text-decoration: none;
    color: #444;
    font-size: 11px;
    border-radius: 1%!important;

    &:hover {
        background: #A62639;
        color: #eceaea;
    }
}

.box-shadow {
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

#sidebar-top {
    display: flex;
}

#sidebar-top > button {
    cursor: pointer;
    padding: 4px;
    background: #ffffff;
    border: none;
    border-radius: 1%!important;
    color: #444;
    font-weight: bold;
    width: 20px;
    height: 20px;

    &:hover {
        color: #A62639;
    }
}

@keyframes animate-width {
    0%,40% { 
        width: 20px; 
        height: 20px;
    }
    100% { 
        width: 20vw;
        height: 70%;
    }
}

@keyframes animate-opacity {
    0%,55% { 
        opacity: 0;
    }
    100% { 
        opacity: 1;
    }
}

@keyframes animate-width-mobile {
  0%,40% { width: 20px; height: 20px; }
    100% { width: 90vw; height: 50%; }
}