/* SPLASHSCREEN */
#splashScreen {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(../Game/Graphics/Images/Backgrounds/GFX_ambientBackground_splash.jpg?_t=20251127140111);
    background-size: cover;
    background-position: center;
    z-index: 9999999;
    opacity: 1;
    overflow: hidden;
    transition: opacity 1s;
    transform: translate3d(0, 0, 0);
}

#splashScreen .screenOverlay {
    position: absolute;
    top: -1px;
    left: -1px;
    width: calc(100% + 1px);
    height: calc(100% + 1px);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 70%, rgba(6, 17, 53, 0.9) 85%, rgba(6, 17, 53, 0.95) 100%);
}

#splashScreen._disabled {
    opacity: 0;
}

#splashScreen._loaded {
    opacity: 1;
    transition: none;
}

#root:has(#splashScreen) #screen {
    display: none;
}

#splashScreen .paytablePage {
    position: unset;
    width: 100%;
    height: calc(100% - 188px);
    box-sizing: border-box;
    padding: 0 56px;
}

#splashScreen .paytablePage .customContent {
    height: 100%;
}

#splashScreen .splashLoadingInfo {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 140px;
    text-align: center;
    margin: 0 auto;
}

#splashScreen .splashProgressBarHolder {
    margin-top: 22px;
}

#splashScreen._loaded .splashProgressBarHolder {
    display: none;
}

#splashScreen._error .splashProgressBarHolder {
    margin-top: 12px;
}

#splashScreen .splashProgressBar {
    width: 504px;
    height: 8px;
    background: #112357;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
    margin: 0 auto;
}

#splashScreen._error .splashProgressBar {
    display: block;
    width: 100%;
    height: auto;
    font-size: 24px;
    line-height: 28px;
    color: #e4161a;
    letter-spacing: 1px;
    background: none;
    box-shadow: none;
    box-sizing: border-box;
    padding: 0 20px;
}

#splashScreen .splashProgressBarOverlay {
    height: 100%;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#84b0e5+0,e2e9ff+48,9bccf4+50,62b9eb+58,71b4ed+60,71b4ed+60,84b0e5+100 */
    background: rgb(132, 176, 229); /* Old browsers */
    background: -moz-linear-gradient(
        top,
        rgba(132, 176, 229, 1) 0%,
        rgba(226, 233, 255, 1) 48%,
        rgba(155, 204, 244, 1) 50%,
        rgba(98, 185, 235, 1) 58%,
        rgba(113, 180, 237, 1) 60%,
        rgba(113, 180, 237, 1) 60%,
        rgba(132, 176, 229, 1) 100%
    ); /* FF3.6-15 */
    background: -webkit-linear-gradient(
        top,
        rgba(132, 176, 229, 1) 0%,
        rgba(226, 233, 255, 1) 48%,
        rgba(155, 204, 244, 1) 50%,
        rgba(98, 185, 235, 1) 58%,
        rgba(113, 180, 237, 1) 60%,
        rgba(113, 180, 237, 1) 60%,
        rgba(132, 176, 229, 1) 100%
    ); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(
        to bottom,
        rgba(132, 176, 229, 1) 0%,
        rgba(226, 233, 255, 1) 48%,
        rgba(155, 204, 244, 1) 50%,
        rgba(98, 185, 235, 1) 58%,
        rgba(113, 180, 237, 1) 60%,
        rgba(113, 180, 237, 1) 60%,
        rgba(132, 176, 229, 1) 100%
    ); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#84b0e5', endColorstr='#84b0e5',GradientType=0 ); /* IE6-9 */
}

#splashScreen._error .splashProgressBarOverlay {
    background: none;
}

#splashScreen #splashContinueButton {
    display: none;
    height: 40px;
    line-height: 40px;
    font-size: 26px;
    font-weight: bold;
    color: #072543;
    text-shadow: 0 1px 1px #fff;
    text-align: center;
    letter-spacing: 1px;
    border-radius: 33px;
    border: 2px solid #fff;
    box-shadow: 0 0 1px #fff;
    background-image: -ms-linear-gradient(top, #f4f6fa 0%, #809fc9 50%, #809fc9 75%, #f4f6fa 100%);
    background-image: -moz-linear-gradient(top, #f4f6fa 0%, #809fc9 50%, #809fc9 75%, #f4f6fa 100%);
    background-image: -o-linear-gradient(top, #f4f6fa 0%, #809fc9 50%, #809fc9 75%, #f4f6fa 100%);
    background-image: -webkit-gradient(
        linear,
        left top,
        left bottom,
        color-stop(0, #f4f6fa),
        color-stop(50, #809fc9),
        color-stop(75, #809fc9),
        color-stop(100, #f4f6fa)
    );
    background-image: -webkit-linear-gradient(top, #f4f6fa 0%, #809fc9 50%, #809fc9 75%, #f4f6fa 100%);
    background-image: linear-gradient(to bottom, #f4f6fa 0%, #809fc9 50%, #809fc9 75%, #f4f6fa 100%);
    padding: 0 60px;
    margin: 4px 16px;
    cursor: pointer;
    animation: teaseContinueBtn 1s infinite 0.5s;
}

#splashScreen._loaded #splashContinueButton {
    display: inline-block;
}

#splashScreen #splashContinueButton:hover {
    box-shadow: 0 0 8px #ffffff;
    -webkit-filter: brightness(1.3);
    filter: brightness(1.3);
    animation: none;
}

#splashScreen #splashContinueButton:active {
    line-height: 41px;
}

@-webkit-keyframes teaseContinueBtn {
    50% {
        box-shadow: 0 0 8px #ffffff;
        -webkit-filter: brightness(1.3);
        filter: brightness(1.3);
    }
}

@keyframes teaseContinueBtn {
    50% {
        box-shadow: 0 0 8px #ffffff;
        -webkit-filter: brightness(1.3);
        filter: brightness(1.3);
    }
}

#splashScreen #splashContinueButton,
#splashScreen #splashContinueButton div {
    transform: translate3d(0, 0, 0);
}

#splashScreen .synotLogo {
    position: absolute;
    bottom: 16px;
    left: 0;
    right: 0;
    margin: 0 auto;
    pointer-events: none;
}

/* custom */
#splashScreen .splashContent {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: min-content max-content;
    flex-direction: row;
    justify-content: center;
    width: 100%;
    height: calc(100% - 190px);
    max-width: 1280px;
    margin: 0 auto;
}

#splashScreen .splashContent > * {
    grid-row: 1 / span 2;

    display: grid;
    grid-template-columns: subgrid;
    grid-template-rows: subgrid;

    flex-direction: column;
    align-items: center;
    justify-items: center;
}

#splashScreen .gameLogo {
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

#splashScreen .symbolDescription {
    font-size: 60px;
    text-align: center;
    font-weight: bold;
    grid-row-start: 2;
    letter-spacing: 3px;
    position: relative;
    z-index: 1;
    line-height: 75px;
}

#splashScreen .symbolDescription:not(.stroke) {
    background: repeating-linear-gradient(
        0deg,
        #ff3900 0px,
        #ff3900 13px,
        #ffe000 33px,
        #fff196 40px,
        #fff196 60px,
        #fff196 75px
    );
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

#splashScreen .symbolDescription.stroke {
    --offset: 8px;
    --size: 21px;
    text-shadow:
        0 calc(var(--offset) * -1) var(--size) #fff,
        calc(var(--offset) * 1) 0 var(--size) #fff,
        0 calc(var(--offset) * 1) var(--size) #fff,
        calc(var(--offset) * -1) 0 var(--size) #fff;
}

#splashScreen .symbolDescription.stroke.black {
    -webkit-text-stroke: 5px #000;
}

/****************** splashScreen ********************/

:root {
    --splGameLogo_position: 50% 0.14792899408284024%;
    --splGameLogo_size: 100.21598272138229% 455.7894736842105%;
    --splGameLogo_ratio: 926 / 190;
    --splGameLogo_width: 926px;
    --splGameLogo_height: 190px;

    --splGoldMystery_position: 0.5434782608695652% 75.29411764705883%;
    --splGoldMystery_size: 124.73118279569893% 141.73486088379704%;
    --splGoldMystery_ratio: 744 / 611;
    --splGoldMystery_width: 744px;
    --splGoldMystery_height: 611px;

    --synotLogo_position: 0.16025641025641027% 99.87577639751552%;
    --synotLogo_size: 305.2631578947368% 1419.672131147541%;
    --synotLogo_ratio: 304 / 61;
    --synotLogo_width: 304px;
    --synotLogo_height: 61px;
}

.splScr:is(.splGoldMystery, .splGameLogo, .synotLogo) {
    background-image: url(../Game/Graphics/SpriteSheets/CSS_splashScreen-0.png?_t=20251127140111);
}

/*******************************************************/

.splScr.splGoldMystery {
    background-position: var(--splGoldMystery_position);
    background-size: var(--splGoldMystery_size);
    aspect-ratio: var(--splGoldMystery_ratio);
    width: var(--splGoldMystery_width);

    margin: -173px 0 -127px;
}

.splScr.splGameLogo {
    background-position: var(--splGameLogo_position);
    background-size: var(--splGameLogo_size);
    aspect-ratio: var(--splGameLogo_ratio);
    width: var(--splGameLogo_width);
}

.splScr.synotLogo {
    background-position: var(--synotLogo_position);
    background-size: var(--synotLogo_size);
    aspect-ratio: var(--synotLogo_ratio);
    width: var(--synotLogo_width);
}

/* ************************* LANGUAGE OVERRIDES ************************* */

/* el-GR */
body[language='el'] #splashContinueButton,
body[language='el-GR'] #splashContinueButton,
body[language='el'] #splashScreen._error .splashProgressBar,
body[language='el-GR'] #splashScreen._error .splashProgressBar {
    font-family: 'Bebas Neue Greek';
}

/* vi-VN */
body[language='vi'] #splashContinueButton,
body[language='vi-VN'] #splashContinueButton,
body[language='vi'] #splashScreen._error .splashProgressBar,
body[language='vi-VN'] #splashScreen._error .splashProgressBar {
    font-family: 'Bison Demi Bold';
}

/* MOBILE PORTRAIT OVERRIDES */
.portrait #splashScreen {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.portrait #splashScreen .splashContent {
    margin: 0 0 200px;
    align-content: center;
}

.portrait #splashScreen .paytablePage {
    bottom: unset;
    height: auto;
    padding: 0;
    margin: 0;
    z-index: 1;
}

.portrait #splashScreen .splashLoadingInfo {
    width: 100%;
    height: 200px;
    z-index: 1;
}

.portrait #splashScreen .synotLogo {
    bottom: 56px;
}

.portrait #splashScreen .gameLogo {
    max-width: 95%;
}

.portrait.extendPortrait #splashScreen .gameLogo {
    top: 5.333rem;
}

/* special resolutions fix */

/* MOBILE PORTRAIT LANUGAGE OVERRIDES */
body[language='ka'].portrait #splashScreen #splashContinueButton,
body[language='ka-GE'].portrait #splashScreen #splashContinueButton,
body[language='ja'].portrait #splashScreen #splashContinueButton,
body[language='ja-JP'].portrait #splashScreen #splashContinueButton {
    font-size: 20px;
}

body[language^='ka'] #splashScreen .symbolDescription {
    padding: 0 12px;
}
