.loader-active,
.logo,
.logoBox,
canvas {
    display: block
}

html,
progress {
    box-sizing: border-box
}

.jss57,
.logo {
    max-width: 100%
}

.jss18,
.jss4 {
    text-transform: uppercase
}

#game-container.fullscreen,
.jss1,
.unity-mobile #game-container {
    bottom: 0
}

.gameloader,
.jss1,
.jss23,
html {
    overflow: hidden
}

@font-face {
    font-display: swap;
    font-family: Fredoka;
    font-style: normal;
    font-weight: 700;
    src: url(./Fredoka-Bold.woff2) format("woff2")
}

@font-face {
    font-display: swap;
    font-family: Fredoka;
    font-style: normal;
    font-weight: nomal;
    src: url(./Fredoka-Regular.woff2) format("woff2")
}

*,
::after,
::before,
:after,
:before {
    box-sizing: inherit
}

body {
    background: #fafafa;
    font-family: Fredoka, "Trebuchet MS", Verdana, sans-serif;
    margin: 0
}

#gameContainer {
    width: 100vw;
    height: 100vh
}

canvas {
    position: absolute;
    height: 100%;
    width: 100%
}

canvas+* {
    z-index: 2
}

.logo {
    height: auto
}

.pos_progress {
    position: absolute;
    margin: auto;
    width: auto;
    height: 55px
}

#loader,
.spinner {
    position: relative
}

progress {
    border: .04em solid #000;
    box-shadow: 0 0 15px 2px #ffffff98;
    width: 6em;
    height: .35em;
    border-radius: .5em;
    background: linear-gradient(#575a5a, #575a5a)
}

progress::-webkit-progress-bar {
    background: 0 0
}

progress::-webkit-progress-value {
    border-radius: .35em;
    box-shadow: inset 0 0 .01em .01em #db9508;
    background: var(--fill)
}

progress:first-child {
    --fill: repeating-linear-gradient( 135deg, color(srgb-linear 0.98 0.81 0) 0 0.25em, rgb(249 175 41) 0 0.5em)
}

#loader {
    left: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #000
}

.spinner,
.spinner:after {
    border-radius: 50%;
    width: 5em;
    height: 5em
}

.spinner {
    display: none;
    margin: 10px;
    font-size: 10px;
    text-indent: -9999em;
    border-top: 1.1em solid rgb(255 255 255 / .2);
    border-right: 1.1em solid rgb(255 255 255 / .2);
    border-bottom: 1.1em solid rgb(255 255 255 / .2);
    border-left: 1.1em solid #fff;
    transform: translateZ(0);
    animation: 1.1s linear infinite spinner-spin
}

@keyframes spinner-spin {
    0% {
        transform: rotate(0)
    }
    100% {
        transform: rotate(360deg)
    }
}

.container {
    display: flex;
    background-color: #5d6b84;
    color: #fff;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    justify-content: center;
    align-items: center
}

.custom-phone-icon {
    font-size: 18px;
    margin-right: 8px
}

.text-with-icon {
    display: flex;
    align-items: center;
    gap: 8px
}

.hidden,
.loader-hidden,
.main-svg-sprite,
.unity-mobile .game-footer {
    display: none
}

.svg-icon {
    display: inline-block;
    vertical-align: top;
    width: 22px;
    height: 22px;
    fill: currentColor;
    font-size: 0
}

.svg-icon__link {
    vertical-align: top;
    fill: inherit;
    width: inherit;
    height: inherit
}

.shaking {
    animation: 2s infinite tilt-shaking
}

@keyframes tilt-shaking {
    0% {
        -webkit-transform: rotate(-8deg);
        transform: rotate(-8deg)
    }
    4% {
        -webkit-transform: rotate(8deg);
        transform: rotate(8deg)
    }
    24%,
    8% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg)
    }
    12%,
    28% {
        -webkit-transform: rotate(10deg);
        transform: rotate(10deg)
    }
    16% {
        -webkit-transform: rotate(-12deg);
        transform: rotate(-12deg)
    }
    20% {
        -webkit-transform: rotate(12deg);
        transform: rotate(12deg)
    }
    32% {
        -webkit-transform: rotate(-6deg);
        transform: rotate(-6deg)
    }
    36% {
        -webkit-transform: rotate(6deg);
        transform: rotate(6deg)
    }
    40%,
    to {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

#game-container {
    z-index: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 45px;
    background-color: #5a7371;
    box-shadow: 0 5px 5px #888
}

#unity-container.unity-mobile {
    width: 100%;
    height: 100%
}

.gameloader {
    -webkit-user-select: none;
    -moz-user-select: none
}

.gameloader .gameloader-game-name {
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    text-shadow: 1px 1px 1px #00476c
}

.gameloader .gameloader-logo {
    margin: 8px 0 15px
}

.gameloader .gameloader-logo img {
    border-radius: 5px;
    box-shadow: 0 2px 5px 0 rgb(0 0 0 / .3);
    max-width: 480px;
    width: 100%;
    object-fit: contain;
    margin: 0 auto;
    display: block
}

.gameloader .gameloader-progressbar {
    max-width: 300px;
    width: 100%;
    height: 1.2vh;
    border-radius: .6vh;
    background-color: #fff;
    transition: 0.2s ease-out;
    margin: 0 auto
}

@keyframes fillColor {
    0%,
    100% {
        background-color: #3cf7dc
    }
    25% {
        background-color: #ffa9be
    }
    50% {
        background-color: #ffdc00
    }
    75% {
        background-color: #e0aef5
    }
}

.gameloader .gameloader-progressbar .gameloader-progressbar-progress {
    width: 0;
    height: 100%;
    border-radius: .6vh;
    background-color: #3cf7dc;
    transition: 0.2s ease-out;
    animation-name: fillColor;
    animation-duration: 3.5s;
    animation-iteration-count: infinite;
    animation-fill-mode: both
}

.gameloader .gameloader-progress-info {
    margin-left: auto;
    margin-right: auto;
    margin-top: 6px;
    font-size: 14px;
    color: #fff;
    text-align: center;
    text-shadow: 1px 1px 1px #00476c
}

a,
a:hover {
    text-decoration: none
}

.ball-beat,
.ball-beat>div {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

.jss1,
.jss2 {
    top: 0;
    position: absolute
}

.jss31,
.jss32,
html {
    box-sizing: border-box
}

.ball-beat {
    display: block;
    font-size: 0;
    color: #fff;
    width: 108px;
    height: 36px
}

.ball-beat>div {
    display: inline-block;
    float: none;
    background-color: currentColor;
    border: 0 solid currentColor;
    width: 20px;
    height: 20px;
    margin: 8px;
    border-radius: 100%;
    -webkit-animation: 0.7s linear -0.15s infinite ball-beat;
    -moz-animation: 0.7s linear -0.15s infinite ball-beat;
    -o-animation: 0.7s linear -0.15s infinite ball-beat;
    animation: 0.7s linear -0.15s infinite ball-beat
}

.ball-beat>div:nth-child(2n-1) {
    -webkit-animation-delay: -0.5s;
    -moz-animation-delay: -0.5s;
    -o-animation-delay: -0.5s;
    animation-delay: -0.5s
}

@-webkit-keyframes ball-beat {
    50% {
        opacity: .2;
        -webkit-transform: scale(.75);
        transform: scale(.75)
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@-moz-keyframes ball-beat {
    50% {
        opacity: .2;
        -moz-transform: scale(.75);
        transform: scale(.75)
    }
    100% {
        opacity: 1;
        -moz-transform: scale(1);
        transform: scale(1)
    }
}

@-o-keyframes ball-beat {
    50% {
        opacity: .2;
        -o-transform: scale(.75);
        transform: scale(.75)
    }
    100% {
        opacity: 1;
        -o-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes ball-beat {
    50% {
        opacity: .2;
        -webkit-transform: scale(.75);
        -moz-transform: scale(.75);
        -o-transform: scale(.75);
        transform: scale(.75)
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1)
    }
}

.jss125,
.jss128,
.jss131 {
    text-shadow: 2px 2px 2px #00476c;
    font-weight: 700
}

.jss4,
.jss6 {
    text-shadow: 1px 1px 1px #00476c
}

.jss123,
.jss126,
.jss129,
.jss132,
.jss5 {
    color: #fff
}

.jss127,
.jss130,
.jss133 {
    color: #d7ebf6;
    font-size: 18px;
    font-weight: 400
}

.jss122 {
    color: #bcdd55
}

.jss124 {
    color: #20defd
}

.jss31 {
    width: 100%;
    display: flex;
    z-index: 1
}

.jss32 {
    margin: 0;
    width: 100%
}

.jss33 {
    min-width: 0
}

.jss34 {
    flex-direction: column
}

.jss35 {
    flex-direction: column-reverse
}

.jss36 {
    flex-direction: row-reverse
}

.jss37 {
    flex-wrap: nowrap
}

.jss38 {
    flex-wrap: wrap-reverse
}

.jss39 {
    align-items: center
}

.jss40 {
    align-items: flex-start
}

.jss41 {
    align-items: flex-end
}

.jss42 {
    align-items: baseline
}

.jss43 {
    align-content: center
}

.jss44 {
    align-content: flex-start
}

.jss45 {
    align-content: flex-end
}

.jss46 {
    align-content: space-between
}

.jss47 {
    align-content: space-around
}

.jss48 {
    justify-content: center
}

.jss49 {
    justify-content: flex-end
}

.jss50 {
    justify-content: space-between
}

.jss51 {
    justify-content: space-around
}

.jss52 {
    width: calc(100% + 8px);
    margin: -4px
}

.jss52>.jss32 {
    padding: 4px
}

.jss53 {
    width: calc(100% + 16px);
    margin: -8px
}

.jss53>.jss32 {
    padding: 8px
}

.jss54 {
    width: calc(100% + 24px);
    margin: -12px
}

.jss54>.jss32 {
    padding: 12px
}

.jss55 {
    width: calc(100% + 32px);
    margin: -16px
}

.jss55>.jss32 {
    padding: 16px
}

.jss56 {
    width: calc(100% + 40px);
    margin: -20px
}

.jss56>.jss32 {
    padding: 20px
}

.jss57 {
    flex-grow: 1;
    flex-basis: 0%
}

.jss58 {
    max-width: 8.33333%;
    flex-basis: 8.33333%
}

.jss59 {
    max-width: 16.66667%;
    flex-basis: 16.66667%
}

.jss60 {
    max-width: 25%;
    flex-basis: 25%
}

.jss61 {
    max-width: 33.33333%;
    flex-basis: 33.33333%
}

.jss62 {
    max-width: 41.66667%;
    flex-basis: 41.66667%
}

.jss63 {
    max-width: 50%;
    flex-basis: 50%
}

.jss64 {
    max-width: 58.33333%;
    flex-basis: 58.33333%
}

.jss65 {
    max-width: 66.66667%;
    flex-basis: 66.66667%
}

.jss66 {
    max-width: 75%;
    flex-basis: 75%
}

.jss67 {
    max-width: 83.33333%;
    flex-basis: 83.33333%
}

.jss68 {
    max-width: 91.66667%;
    flex-basis: 91.66667%
}

.jss69 {
    max-width: 100%;
    flex-basis: 100%
}

@media (min-width:960px) {
    .jss83 {
        flex-grow: 1;
        max-width: 100%;
        flex-basis: 0%
    }
    .jss84 {
        max-width: 8.33333%;
        flex-basis: 8.33333%
    }
    .jss85 {
        max-width: 16.66667%;
        flex-basis: 16.66667%
    }
    .jss86 {
        max-width: 25%;
        flex-basis: 25%
    }
    .jss87 {
        max-width: 33.33333%;
        flex-basis: 33.33333%
    }
    .jss88 {
        max-width: 41.66667%;
        flex-basis: 41.66667%
    }
    .jss89 {
        max-width: 50%;
        flex-basis: 50%
    }
    .jss90 {
        max-width: 58.33333%;
        flex-basis: 58.33333%
    }
    .jss91 {
        max-width: 66.66667%;
        flex-basis: 66.66667%
    }
    .jss92 {
        max-width: 75%;
        flex-basis: 75%
    }
    .jss93 {
        max-width: 83.33333%;
        flex-basis: 83.33333%
    }
    .jss94 {
        max-width: 91.66667%;
        flex-basis: 91.66667%
    }
    .jss95 {
        max-width: 100%;
        flex-basis: 100%
    }
}

@media (min-width:1280px) {
    .jss96 {
        flex-grow: 1;
        max-width: 100%;
        flex-basis: 0%
    }
    .jss97 {
        max-width: 8.33333%;
        flex-basis: 8.33333%
    }
    .jss98 {
        max-width: 16.66667%;
        flex-basis: 16.66667%
    }
    .jss99 {
        max-width: 25%;
        flex-basis: 25%
    }
    .jss100 {
        max-width: 33.33333%;
        flex-basis: 33.33333%
    }
    .jss101 {
        max-width: 41.66667%;
        flex-basis: 41.66667%
    }
    .jss102 {
        max-width: 50%;
        flex-basis: 50%
    }
    .jss103 {
        max-width: 58.33333%;
        flex-basis: 58.33333%
    }
    .jss104 {
        max-width: 66.66667%;
        flex-basis: 66.66667%
    }
    .jss105 {
        max-width: 75%;
        flex-basis: 75%
    }
    .jss106 {
        max-width: 83.33333%;
        flex-basis: 83.33333%
    }
    .jss107 {
        max-width: 91.66667%;
        flex-basis: 91.66667%
    }
    .jss108 {
        max-width: 100%;
        flex-basis: 100%
    }
}

@media (min-width:1920px) {
    .jss109 {
        flex-grow: 1;
        max-width: 100%;
        flex-basis: 0%
    }
    .jss110 {
        max-width: 8.33333%;
        flex-basis: 8.33333%
    }
    .jss111 {
        max-width: 16.66667%;
        flex-basis: 16.66667%
    }
    .jss112 {
        max-width: 25%;
        flex-basis: 25%
    }
    .jss113 {
        max-width: 33.33333%;
        flex-basis: 33.33333%
    }
    .jss114 {
        max-width: 41.66667%;
        flex-basis: 41.66667%
    }
    .jss115 {
        max-width: 50%;
        flex-basis: 50%
    }
    .jss116 {
        max-width: 58.33333%;
        flex-basis: 58.33333%
    }
    .jss117 {
        max-width: 66.66667%;
        flex-basis: 66.66667%
    }
    .jss118 {
        max-width: 75%;
        flex-basis: 75%
    }
    .jss119 {
        max-width: 83.33333%;
        flex-basis: 83.33333%
    }
    .jss120 {
        max-width: 91.66667%;
        flex-basis: 91.66667%
    }
    .jss121 {
        max-width: 100%;
        flex-basis: 100%
    }
}

.jss135 {
    z-index: 1500;
    pointer-events: none
}

.jss135.jss136 {
    pointer-events: auto
}

.jss137 {
    color: #fff;
    opacity: 0;
    padding: 4px 8px;
    transform: scale(0);
    font-size: .625rem;
    transition: opacity 150ms cubic-bezier(.4, 0, 1, 1), transform 150ms cubic-bezier(.4, 0, 1, 1) 0;
    min-height: 0;
    line-height: 1.4em;
    border-radius: 2px;
    background-color: #445655
}

.jss138,
.jss8 {
    line-height: 1.14286em
}

.jss137.jss136 {
    opacity: .9;
    transform: scale(1);
    transition: opacity 150ms cubic-bezier(0, 0, .2, 1), transform 150ms cubic-bezier(0, 0, .2, 1) 0
}

.jss138 {
    padding: 8px 16px;
    font-size: .875rem
}

.jss139 {
    margin: 0 24px;
    transform-origin: right center
}

.jss140 {
    margin: 0 24px;
    transform-origin: left center
}

.jss141 {
    margin: 24px 0;
    transform-origin: center bottom
}

.jss142 {
    margin: 24px 0;
    transform-origin: center top
}

@media (min-width:600px) {
    .jss70 {
        flex-grow: 1;
        max-width: 100%;
        flex-basis: 0%
    }
    .jss71 {
        max-width: 8.33333%;
        flex-basis: 8.33333%
    }
    .jss72 {
        max-width: 16.66667%;
        flex-basis: 16.66667%
    }
    .jss73 {
        max-width: 25%;
        flex-basis: 25%
    }
    .jss74 {
        max-width: 33.33333%;
        flex-basis: 33.33333%
    }
    .jss75 {
        max-width: 41.66667%;
        flex-basis: 41.66667%
    }
    .jss76 {
        max-width: 50%;
        flex-basis: 50%
    }
    .jss77 {
        max-width: 58.33333%;
        flex-basis: 58.33333%
    }
    .jss78 {
        max-width: 66.66667%;
        flex-basis: 66.66667%
    }
    .jss79 {
        max-width: 75%;
        flex-basis: 75%
    }
    .jss80 {
        max-width: 83.33333%;
        flex-basis: 83.33333%
    }
    .jss81 {
        max-width: 91.66667%;
        flex-basis: 91.66667%
    }
    .jss82 {
        max-width: 100%;
        flex-basis: 100%
    }
    .jss139,
    .jss140 {
        margin: 0 14px
    }
    .jss141,
    .jss142 {
        margin: 14px 0
    }
}

.jss134 {
    font-size: 12px
}

.jss7 {
    margin: 0;
    display: block
}

.jss8 {
    color: rgb(0 0 0 / .54);
    font-size: 7rem;
    font-weight: 300;
    margin-left: -.04em;
    letter-spacing: -.04em
}

.jss10,
.jss9 {
    margin-left: -.02em;
    color: rgb(0 0 0 / .54);
    font-weight: 400
}

.jss9 {
    font-size: 3.5rem;
    line-height: 1.30357em;
    letter-spacing: -.02em
}

.jss10 {
    font-size: 2.8125rem;
    line-height: 1.06667em
}

.jss11 {
    color: rgb(0 0 0 / .54);
    font-size: 2.125rem;
    font-weight: 400;
    line-height: 1.20588em
}

.jss12,
.jss13,
.jss14 {
    color: rgb(0 0 0 / .87)
}

.jss12 {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.35417em
}

.jss13 {
    font-size: 1.3125rem;
    font-weight: 500;
    line-height: 1.16667em
}

.jss14 {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5em
}

.jss15,
.jss16 {
    color: rgb(0 0 0 / .87);
    font-size: .875rem
}

.jss15 {
    font-weight: 500;
    line-height: 1.71429em
}

.jss16,
.jss17 {
    font-weight: 400
}

.jss16 {
    line-height: 1.46429em
}

.jss17 {
    color: rgb(0 0 0 / .54);
    font-size: .75rem;
    line-height: 1.375em
}

.jss18 {
    color: rgb(0 0 0 / .87);
    font-size: .875rem;
    font-weight: 500
}

.jss19 {
    text-align: left
}

.jss20 {
    text-align: center
}

.jss21 {
    text-align: right
}

.jss22 {
    text-align: justify
}

.jss23 {
    white-space: nowrap;
    text-overflow: ellipsis
}

.jss24 {
    margin-bottom: .35em
}

.jss25 {
    margin-bottom: 16px
}

.jss26 {
    color: inherit
}

.jss27 {
    color: #3f51b5
}

.jss28 {
    color: #f50057
}

.jss29 {
    color: rgb(0 0 0 / .54)
}

.jss30 {
    color: #f44336
}

.jss4 {
    padding: 10px;
    font-size: 16px;
    min-height: 20px;
    font-weight: 700
}

.jss6 {
    color: #bcdd55
}

.jss1 {
    left: 0;
    right: 0;
    z-index: 1;
    background-size: cover;
    background-color: #002b50;
    background-position: center;
    padding: 24px
}

.jss2 {
    right: 4px;
    z-index: 111111111;
    line-height: 0
}

.jss3 {
    font-size: 45px;
    padding-top: 7px
}

html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

@media print {
    body {
        background-color: #fff
    }
}

.jss123 img {
    width: 100%;
    max-width: 400px
}

@media only screen and (max-width:982px) {
    .gameloader .gameloader-logo img,
    .gameloader .gameloader-progressbar,
    .jss123 img {
        width: 40vw
    }
}

@media only screen and (max-width:768px) {
    .gameloader .gameloader-logo img,
    .gameloader .gameloader-progressbar,
    .jss123 img {
        width: 50vw
    }
}