/* SPLASHSCREEN */
#splashScreen {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(../Game/Graphics/Images/Backgrounds/GFX_ambientBackground_base.jpg?_t=20260312121541);
    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 533px 1fr;
    grid-template-rows: repeat(3, 1fr);
    flex-direction: row;
    justify-content: center;
    justify-items: center;
    width: 100%;
    height: calc(100% - 190px);
    max-width: 1280px;
    margin: 0 auto;
}

#splashScreen .splBuyFeatureCon {
    grid-column: 1 / span 3;
    grid-row: 1 / span 2;
    margin: 7px 0 0 13px;
    justify-self: left;
    position: relative;
    display: flex;
    width: 305px;
    height: 101px;
    align-content: center;
    flex-wrap: wrap;
}

#splashScreen .splBuyFeatureCon .splScr {
    position: absolute;
}

#splashScreen .splBuyFeatureText {
    text-align: center;
    font-size: 27px;
    margin: 1px 0px 0px 107px;
    width: 180px;
    height: auto;
    z-index: 1;
}

#splashScreen .splScr.splBonus {
    grid-column: 1 / span 1;
    grid-row: 2 / span 1;
    align-self: center;
    margin: 33px 0px -27px 0px;
}

#splashScreen .splScr.splGameLogo {
    grid-column: 1 / span 3;
    grid-row: 1 / span 3;
    align-self: center;
    justify-self: center;
    margin-bottom: 93px;
}

#splashScreen .splScr.splScreenReels {
    grid-column: 3 / span 1;
    grid-row: 1 / span 2;
    align-self: center;
}

#splashScreen .splSymbolDescription {
    grid-column: 1 / span 1;
    grid-row: 3 / span 1;
    font-size: 53px;
    font-weight: bold;
    text-align: center;
    align-content: center;
    letter-spacing: 3px;
    line-height: 53px;
    z-index: 1;
}

#splashScreen .splSymbolDescription:not(.stroke) {
    background: repeating-linear-gradient(
        180deg,
        rgba(255, 249, 226, 1) 9%,
        rgba(255, 223, 76, 1) 42%,
        rgba(225, 159, 0, 1) 53%,
        rgba(255, 229, 95, 1) 100%
    );
    background-size: 100% 53px;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

#splashScreen .splSymbolDescription.stroke {
    --offset: 5px;
    --size: 11px;
    --shadow-color: rgba(250, 231, 77, 0.5);
    text-shadow:
        0 calc(var(--offset) * -1) var(--size) var(--shadow-color),
        calc(var(--offset) * 1) 0 var(--size) var(--shadow-color),
        0 calc(var(--offset) * 1) var(--size) var(--shadow-color),
        calc(var(--offset) * -1) 0 var(--size) var(--shadow-color);
}

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

#splashScreen .splBonusSymbolsCon {
    grid-column: 3 / span 1;
    grid-row: 3 / span 1;
    align-self: center;
    display: flex;
    justify-content: center;
}

#splashScreen .splBonusSymbolsCon > * {
    position: absolute;
    align-self: center;
    justify-self: center;
    opacity: 0;
}

#splashScreen .splBonusSymbolsCon .splSymbolAni {
    animation: fadeCycle 6s infinite;
    animation-timing-function: ease-in-out;
}

#splashScreen .splBonusSymbolsCon .splHammer {
    animation-delay: 0s;
}
#splashScreen .splBonusSymbolsCon .splBoost {
    animation-delay: 2s;
}
#splashScreen .splBonusSymbolsCon .splSpin {
    animation-delay: 4s;
}

@keyframes fadeCycle {
    0% {
        opacity: 0;
    }
    8% {
        opacity: 1;
    }
    33% {
        opacity: 1;
    }
    41% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}

/****************** splashScreen ********************/
:root {
    --gameLogo_position: 50% 0.1996007984031936%;
    --gameLogo_size: 100.23419203747072% 179.27215189873417%;
    --gameLogo_ratio: 854 / 632;
    --gameLogo_width: 854px;
    --gameLogo_height: 632px;

    --splScreenReels_position: 0.19723865877712032% 79.94955863808323%;
    --splScreenReels_size: 245.27220630372491% 333.2352941176471%;
    --splScreenReels_ratio: 349 / 340;
    --splScreenReels_width: 349px;
    --splScreenReels_height: 340px;

    --splBoost_position: 0.16181229773462782% 99.89754098360656%;
    --splBoost_size: 359.66386554621846% 721.656050955414%;
    --splBoost_ratio: 238 / 157;
    --splBoost_width: 238px;
    --splBoost_height: 157px;

    --splBonus_position: 55.275590551181104% 80.55908513341804%;
    --splBonus_size: 387.33031674208144% 327.4566473988439%;
    --splBonus_ratio: 221 / 346;
    --splBonus_width: 221px;
    --splBonus_height: 346px;

    --splHammer_position: 98.45360824742268% 73.80675203725262%;
    --splHammer_size: 312.40875912408757% 413.5036496350365%;
    --splHammer_ratio: 274 / 274;
    --splHammer_width: 274px;
    --splHammer_height: 274px;

    --splSpin_position: 92.71844660194175% 93.13524590163935%;
    --splSpin_size: 359.66386554621846% 721.656050955414%;
    --splSpin_ratio: 238 / 157;
    --splSpin_width: 238px;
    --splSpin_height: 157px;

    --splBuyFeature_position: 43.47826086956522% 95.05813953488372%;
    --splBuyFeature_size: 281.57894736842104% 1121.7821782178219%;
    --splBuyFeature_ratio: 304 / 101;
    --splBuyFeature_width: 304px;
    --splBuyFeature_height: 101px;

    --synotLogo_position: 98.73188405797102% 99.53358208955224%;
    --synotLogo_size: 281.57894736842104% 1857.377049180328%;
    --synotLogo_ratio: 304 / 61;
    --synotLogo_width: 304px;
    --synotLogo_height: 61px;
}

.splScr:is(.gameLogo, .splScreenReels, .splBonus, .splHammer, .splBoost, .splSpin, .splBuyFeature, .synotLogo) {
    background-image: url(../Game/Graphics/SpriteSheets/CSS_splashScreen-0.png?_t=20260312121541);
}

.splScr.gameLogo {
    background-position: var(--gameLogo_position);
    background-size: var(--gameLogo_size);
    aspect-ratio: var(--gameLogo_ratio);
    width: var(--gameLogo_width);
}

.splScr.splScreenReels {
    background-position: var(--splScreenReels_position);
    background-size: var(--splScreenReels_size);
    aspect-ratio: var(--splScreenReels_ratio);
    width: var(--splScreenReels_width);
}

.splScr.splBoost {
    background-position: var(--splBoost_position);
    background-size: var(--splBoost_size);
    aspect-ratio: var(--splBoost_ratio);
    width: var(--splBoost_width);
}

.splScr.splSpin {
    background-position: var(--splSpin_position);
    background-size: var(--splSpin_size);
    aspect-ratio: var(--splSpin_ratio);
    width: var(--splSpin_width);
}

.splScr.splBonus {
    background-position: var(--splBonus_position);
    background-size: var(--splBonus_size);
    aspect-ratio: var(--splBonus_ratio);
    width: var(--splBonus_width);
}

.splScr.splHammer {
    background-position: var(--splHammer_position);
    background-size: var(--splHammer_size);
    aspect-ratio: var(--splHammer_ratio);
    width: var(--splHammer_width);
}

.splScr.splBuyFeature {
    background-position: var(--splBuyFeature_position);
    background-size: var(--splBuyFeature_size);
    aspect-ratio: var(--splBuyFeature_ratio);
    width: var(--splBuyFeature_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';
}

body[language='el'] #splashScreen .splBuyFeatureText,
body[language='el-GR'] #splashScreen .splBuyFeatureText {
    font-size: 18px;
    margin: 0px 0px 0px 107px;
}

body[language='el'] #splashScreen .splSymbolDescription,
body[language='el-GR'] #splashScreen .splSymbolDescription {
    font-size: 36px;
}

/* 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';
}

/* ka-GE */
body[language='ka'] #splashScreen .splSymbolDescription,
body[language='ka-GE'] #splashScreen .splSymbolDescription {
    line-height: 63px;
    font-size: 45px;
}

body[language='ka'] #splashScreen .splBuyFeatureText,
body[language='ka-GE'] #splashScreen .splBuyFeatureText {
    font-size: 20px;
    margin: -4px 0px 0px 107px;
}

/* hu-HU */
body[language='hu'] #splashScreen .splBuyFeatureText,
body[language='hu-HU'] #splashScreen .splBuyFeatureText {
    font-size: 25px;
    margin: 3px 0px 0px 107px;
}

/* ja-JP */
body[language='ja'] #splashScreen .splBuyFeatureText,
body[language='ja-JP'] #splashScreen .splBuyFeatureText {
    font-size: 16px;
    margin: 3px 0px 0px 107px;
}

/* zh-CN */
body[language='zh'] #splashScreen .splSymbolDescription,
body[language='zh-CN'] #splashScreen .splSymbolDescription {
    font-size: 51px;
    line-height: 67px;
}

body[language='zh'] #splashScreen .splBuyFeatureText,
body[language='zh-CN'] #splashScreen .splBuyFeatureText {
    font-size: 23px;
    margin: -1px 0px 0px 107px;
}

body[language='zh'] #splashScreen .splSymbolDescription:not(.stroke),
body[language='zh-CN'] #splashScreen .splSymbolDescription:not(.stroke) {
    background-size: 100% 67px;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

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

.portrait #splashScreen .splashContent {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr min-content min-content 1fr;
    margin: 0 0 200px;
}

.portrait #splashScreen .splBuyFeatureCon {
    grid-column: 1 / span 1;
    grid-row: 1 / span 2;
}

.portrait.mobile #splashScreen .splBuyFeatureCon {
    transform: scale(0.85);
    margin: 4px 0px 0px -18px;
}

.portrait.tablet #splashScreen .splBuyFeatureCon {
    transform: scale(0.7);
    margin: 0px 0px 0px -30px;
}

.portrait.tablet-xs #splashScreen .splBuyFeatureCon {
    transform: scale(0.7);
    margin: 0px 0px 0px -30px;
}

.portrait.mobile-xs #splashScreen .splBuyFeatureCon {
    transform: scale(0.8);
    margin: 0px 0px 0px -20px;
}

.portrait #splashScreen .splScr.splGameLogo {
    grid-column: 1 / span 2;
    grid-row: 1 / span 1;
}

.portrait.mobile #splashScreen .splScr.splGameLogo {
    width: 100%;
    margin: -100px 0px -30px 0;
}

.portrait.tablet #splashScreen .splScr.splGameLogo {
    width: 440px;
    margin: -60px 0px -20px 0;
}

.portrait.tablet-xs #splashScreen .splScr.splGameLogo {
    width: 410px;
    margin: -60px 0px -20px 0;
}

.portrait.mobile-xs #splashScreen .splScr.splGameLogo {
    width: 570px;
    margin: -100px 0px -30px 0;
}

.portrait #splashScreen .splScr.splBonus {
    grid-column: 1 / span 1;
    grid-row: 2 / span 1;
    margin: -10px 0 -20px 0;
}

.portrait #splashScreen .splScr.splScreenReels {
    grid-column: 2 / span 1;
    grid-row: 2 / span 1;
}

.portrait.mobile #splashScreen .splScr.splBonus {
    width: 85%;
}

.portrait.mobile #splashScreen .splScr.splScreenReels {
    width: 100%;
}

.portrait.tablet #splashScreen .splScr.splBonus {
    width: 50%;
}

.portrait.tablet #splashScreen .splScr.splScreenReels {
    width: 70%;
}

.portrait.tablet-xs #splashScreen .splScr.splBonus {
    width: 50%;
}

.portrait.tablet-xs #splashScreen .splScr.splScreenReels {
    width: 70%;
}

.portrait.mobile-xs #splashScreen .splScr.splBonus {
    width: 70%;
}

.portrait.mobile-xs #splashScreen .splScr.splScreenReels {
    width: 90%;
}

.portrait #splashScreen .splSymbolDescription {
    grid-column: 1 / span 1;
    grid-row: 3 / span 1;
}

.portrait #splashScreen .splBonusSymbolsCon {
    grid-column: 2 / span 1;
    grid-row: 3 / span 1;
    transform: scale(0.8);
    display: flex;
    justify-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;
}

/* 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;
}
