


*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
@font-face {
    font-family: 'Luckiest Guy';
    src: url(../images/ui/asset-1.woff2);
}
html,body{
    height: 100vh;
    overflow: hidden;
    font-family: 'Luckiest Guy';
}
body{
    width: 100%;
    position: relative;
    background-image: url(../images/ui/asset-2.webp);
    background-size: cover;
    background-position: center center;
}

.modal-start {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(12px, 4vw, 24px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity 0.4s ease,
        visibility 0.4s ease;
}

.modal-start.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.modal-start__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    opacity: 0;
    transition: opacity 0.45s ease;
}

.modal-start.is-open .modal-start__backdrop {
    opacity: 1;
}
.title {
    width: 60vh;
    position: absolute;
    left: 50%;
    top: 32%;
    transform: translate(-50%, -50%);
    z-index: 1;
}
.modal-intro__panel {
    position: relative;
    z-index: 1;
    width: 50vh;
    aspect-ratio: 417/134;
    background-image: url(../images/ui/asset-3.webp);
    background-size: 100% 100%;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    -webkit-text-stroke: .2vh black;
    font-size: 10vh;
}

.modal-start__panel {
    position: relative;
    z-index: 1;
    width: 80vh;
    min-width: 80vh;
    padding-top: 5vh;
    aspect-ratio: 1408/1009;
    background-image: url(../images/ui/asset-4.webp);
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    transform: scale(0.94) translateY(2vh);
    opacity: 0;
    transition:
        transform 0.45s cubic-bezier(0.34, 1.26, 0.64, 1),
        opacity 0.4s ease;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 2vh;
        color: white;
}
.last-chance{
    text-align: center;
    text-transform: uppercase;
    font-size: 6vh;
    -webkit-text-stroke: .1vh #004A80;
    text-shadow: .5vh .7vh .5vh#004A80;
    text-align: center;
    font-family: 'Luckiest Guy';
} 
.modal-bonus{
    font-size: 3vh;
color: #FEF400;

}
.btn-container{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    gap: 1vh;
    margin-top: 2vh;
}
.soon{
    font-size: 2vh;
    -webkit-text-stroke: .1vh black;
    text-shadow: .1vh .2vh .1vh black;
}
.modal-start.is-open .modal-start__panel {
    transform: scale(1) translateY(0);
    opacity: 1;
}

.modal-start__close {
    background-image: url(../images/ui/asset-3.webp);
    background-size: 100% 100%;
    width: 30vh;
    aspect-ratio: 417/134;
    background-color: transparent;
    outline: none;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    font-family: 'Luckiest Guy';
    color: white;
    font-size: 3.5vh;
    -webkit-text-stroke: .1vh black;
    transform-origin: center center;
}

.modal-start.is-open .modal-start__close {
    animation: ctaPulse 1.25s ease-in-out infinite;
}

.slot-container{
    width: 100%;
    height: 100%;
    position: relative;
    display:flex;
    align-items: center;
    flex-direction: column;
}
.progress{
    position: absolute;
    left: 50%;
    top: -9vh;
    width: 76vh;
    z-index: 100;
    aspect-ratio: 1126/343;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate(-50%, -130%);
    transform-origin: 50% 0%;
    transition:
        opacity 0.45s ease,
        visibility 0.45s ease,
        transform 0.7s cubic-bezier(0.34, 1.45, 0.54, 1);
}

.progress.progress--visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
}
.fisherMan-container{
    width: 100%;
    height: 100%;
    display: flex;
    gap: 1.15vh;

    position: absolute;
    top: 95%;
    left: 55%;
    transform: translate(-50%, -50%);
}
.square{
    display: none;
    width: 12.6vh;
    height: 10.9vh;
    background-image: url(../images/ui/asset-5.webp);
    background-size: 100% 100%;
    flex-shrink: 0;
    transform-origin: 50% 0%;
}


.square.square--drop {
    display: block;
    animation: fisherRopeDrop 0.9s cubic-bezier(0.33, 1.25, 0.55, 1) forwards;
}

@keyframes fisherRopeDrop {
    0% {
        opacity: 0;
        transform: translateY(-18vh) rotate(-12deg) scale(0.85);
    }
    52% {
        opacity: 1;
        transform: translateY(1.4vh) rotate(7deg) scale(1.04);
    }
    70% {
        transform: translateY(-0.7vh) rotate(-3deg) scale(0.98);
    }
    85% {
        transform: translateY(0.4vh) rotate(1.5deg) scale(1.01);
    }
    100% {
        opacity: 1;
        transform: translateY(0) rotate(0deg) scale(1);
    }
}
.progress-img{
    width: 100%;
    position: absolute;
    z-index: -1;
}
.logo{
    display: block;
    width: 40vh;
    margin: 0 auto;
}
.slot-machine{
    width: 121vh;
    aspect-ratio: 1538/840;
    --slot-gap: 2.55vh;
    margin-top: 2vh;
    position: relative;
    overflow: hidden;
}

.slot-grid {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: var(--slot-gap);
    box-sizing: border-box;
    z-index: 1;
}


.slot-column {
    flex: 1;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.slot-reel {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    position: relative;
}

.slot-reel-track {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: var(--slot-gap);
    width: 100%;
    min-height: 0;
    will-change: transform;
}

.slot-reel-track.is-spinning .slot-cell {
    flex: 0 0 var(--slot-row-height, 33.333%);
    min-height: var(--slot-row-height, 33.333%);
}

.slot-dividers {
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
}

.slot-divider {
    position: absolute;
    top: 0;
    bottom: 0;
    height: 100%;
    width: auto;
    transform: translateX(-50%);
    display: block;
    
    left: calc(
        var(--slot-divider-index) * (100% - 4 * var(--slot-gap)) / 5
        + (var(--slot-divider-index) - 0.5) * var(--slot-gap)
    );
}

.slot-cell {
    flex: 1;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
    min-width: 0;
}

.slot-cell img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    pointer-events: none;
    user-select: none;
}


.slot-cell__fish-price {
    position: absolute;
    left: 50%;
    bottom: 4%;
    transform: translateX(-50%);
    width: 64%;
    aspect-ratio: 3.4 / 1;
    background-image: url(../images/ui/asset-6.webp);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Luckiest Guy';
    color: white;
    font-size: 1.9vh;
    line-height: 1;
    -webkit-text-stroke: 0.1vh black;
    text-shadow: 0 0.2vh 0.3vh rgba(0, 0, 0, 0.55);
    pointer-events: none;
    user-select: none;
    z-index: 3;
}



.slot-cell.is-winning {
    z-index: 2;
    overflow: visible;
    transform-origin: center center;
    animation: slotCellWinScale 1.05s ease-in-out infinite;
}

.slot-cell.is-winning img {
    animation: slotCellWinGlow 1.05s ease-in-out infinite;
}


.slot-cell.is-winning.is-winning-quiet,
.slot-cell.is-winning.is-winning-quiet img {
    animation: none;
}

@keyframes slotCellWinScale {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(0.9);
    }
}

@keyframes slotCellWinGlow {
    0%, 100% {
        -webkit-filter:
            drop-shadow(0 0 0.4vh rgba(255, 255, 255, 0.95))
            drop-shadow(0 0 1.2vh rgba(255, 255, 255, 0.55));
        filter:
            drop-shadow(0 0 0.4vh rgba(255, 255, 255, 0.95))
            drop-shadow(0 0 1.2vh rgba(255, 255, 255, 0.55));
    }
    50% {
        -webkit-filter:
            drop-shadow(0 0 1.1vh rgba(255, 255, 255, 1))
            drop-shadow(0 0 2.4vh rgba(255, 255, 255, 0.7))
            drop-shadow(0 0 3.6vh rgba(255, 255, 255, 0.35));
        filter:
            drop-shadow(0 0 1.1vh rgba(255, 255, 255, 1))
            drop-shadow(0 0 2.4vh rgba(255, 255, 255, 0.7))
            drop-shadow(0 0 3.6vh rgba(255, 255, 255, 0.35));
    }
}


.slot-machine.is-revealed,
.slot-machine.is-revealed .slot-column,
.slot-machine.is-revealed .slot-reel {
    overflow: visible;
}


.slot-cell.is-money {
    z-index: 3;
    overflow: visible;
}

.slot-cell.is-money img {
    animation: slotCellMoneyPop 0.46s cubic-bezier(0.34, 1.45, 0.55, 1) forwards;
    transform-origin: center center;
    border-radius: 0.6vh;
}

@keyframes slotCellMoneyPop {
    0% {
        opacity: 0;
        transform: scale(0.4) rotate(-8deg);
        filter: drop-shadow(0 0 0 rgba(255, 255, 255, 0));
    }
    60% {
        opacity: 1;
        transform: scale(1.12) rotate(3deg);
    }
    100% {
        opacity: 1;
        transform: scale(1) rotate(0deg);
        filter:
            drop-shadow(0 0 1vh rgba(255, 234, 110, 0.85))
            drop-shadow(0 0 2.4vh rgba(255, 215, 60, 0.4));
    }
}


.slot-cell.is-receiving {
    animation: fishermanReceive 0.48s cubic-bezier(0.34, 1.55, 0.55, 1);
    transform-origin: center center;
}


.slot-cell__multiplier {
    position: absolute;
    top: -25%;
    left: -25%;
    width: 5%;
    height: 5%;
    z-index: 4;
    object-fit: contain;
    pointer-events: none;
    transition: opacity 0.3s ease;
    -webkit-filter: drop-shadow(0 0.3vh 0.6vh rgba(0, 0, 0, 0.55));
    filter: drop-shadow(0 0.3vh 0.6vh rgba(0, 0, 0, 0.55));
}

@keyframes fishermanReceive {
    0% {
        transform: scale(1);
    }
    35% {
        transform: scale(1.18);
    }
    65% {
        transform: scale(0.94);
    }
    100% {
        transform: scale(1);
    }
}


.slot-cell__fish-price.is-bump {
    animation: fishPriceBump 0.36s cubic-bezier(0.34, 1.55, 0.55, 1);
}

@keyframes fishPriceBump {
    0%, 100% {
        transform: translateX(-50%) scale(1);
    }
    45% {
        transform: translateX(-50%) scale(1.32);
    }
}

.slot-cell__fish-price.is-fading {
    opacity: 0;
    transition: opacity 0.4s ease;
}


.money-stack {
    position: fixed;
    z-index: 4500;
    pointer-events: none;
    width: 0;
    height: 0;
    transform: translate(-50%, -50%) scale(1);
    will-change: transform, opacity;
}

.money-stack img {
    position: absolute;
    left: 0;
    top: 0;
    width: 18vh;
    height: auto;
    object-fit: contain;
    transform: translate(-50%, -50%) scale(0);
    transform-origin: center center;
    opacity: 0;
    border-radius: 0.5vh;
    box-shadow: 0 0.4vh 1.2vh rgba(0, 0, 0, 0.45);
    transition:
        transform 0.55s cubic-bezier(0.34, 1.45, 0.55, 1),
        opacity 0.55s ease-out;
}

.money-stack.is-fanned img {
    transform:
        translate(calc(-50% + var(--ox, 0px)), calc(-50% + var(--oy, 0px)))
        scale(1)
        rotate(var(--rot, 0deg));
    opacity: 1;
}


.money-stack.money-stack--big img {
    width: 32vh;
    box-shadow: 0 0.8vh 2.4vh rgba(0, 0, 0, 0.6);
}

.money-stack.money-stack--big.is-fanned img {
    transform:
        translate(calc(-50% + var(--ox, 0px) * 1.5), calc(-50% + var(--oy, 0px) * 1.5))
        scale(1)
        rotate(var(--rot, 0deg));
}


.modal-intro {
    position: fixed;
    inset: 0;
    z-index: 6000;
    display: none;
    align-items: center;
    justify-content: center;
}

.modal-intro.is-open {
    display: flex;
}

.modal-intro__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
}


.modal-intro.is-open .modal-intro__backdrop {
    opacity: 0;
    animation: introFade 0.45s ease-out forwards;
}
.modal-intro.is-open .title {
    opacity: 0;
    animation: introFade 0.6s ease-out 0.2s forwards;
}
.modal-intro.is-open .modal-intro__panel {
    opacity: 0;
    animation: introFade 0.6s ease-out 0.45s forwards;
}


.modal-intro.is-open .modal-intro__panel.is-counting {
    opacity: 1;
    animation: introCountPulse 0.5s ease-in-out infinite;
}

@keyframes introCountPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.08); }
}


.modal-intro.is-open.is-maxwin-pulse .title {
    opacity: 1;
    animation: introMaxWinPulseTitle 1.15s ease-in-out infinite;
}
.modal-intro.is-open.is-maxwin-pulse .modal-intro__panel {
    opacity: 1;
    animation: introMaxWinPulse 1.15s ease-in-out infinite;
}

@keyframes introMaxWinPulse {
    0%, 100% {
        transform: scale(1);
        filter: drop-shadow(0 0 0.6vh rgba(255, 220, 80, 0.45));
    }
    50% {
        transform: scale(1.045);
        filter: drop-shadow(0 0 2vh rgba(255, 215, 70, 0.9));
    }
}

@keyframes introMaxWinPulseTitle {
    0%, 100% {
        transform: translate(-50%, -50%) scale(1);
        filter: drop-shadow(0 0 0.6vh rgba(255, 220, 80, 0.45));
    }
    50% {
        transform: translate(-50%, -50%) scale(1.045);
        filter: drop-shadow(0 0 2vh rgba(255, 215, 70, 0.9));
    }
}

@keyframes introFade {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes ctaPulse {
    0%, 100% {
        transform: scale(1);
        filter: brightness(1);
    }
    50% {
        transform: scale(1.06);
        filter: brightness(1.1) drop-shadow(0 0 0.9vh rgba(255, 215, 70, 0.45));
    }
}

@keyframes spinBtnPulse {
    0%, 100% {
        transform: scale(1);
        filter: brightness(1);
    }
    50% {
        transform: scale(1.07);
        filter: brightness(1.12) drop-shadow(0 0 0.6vh rgba(255, 230, 120, 0.5));
    }
}

.modal-final {
    position: fixed;
    inset: 0;
    z-index: 6100;
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 3vh;
}

.modal-final.is-open {
    display: flex;
}

.modal-final__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.65);
}

.modal-final__panel {
    position: relative;
    z-index: 1;
    width: 70vh;
    min-width: 70vh;
    padding-top: 5vh;
    aspect-ratio: 1408/1009;
    background-image: url(../images/ui/asset-7.webp);
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2vh;
    color: white;
}
.final-chance{
    font-size: 5.2vh;
}
.final-bonus{
    font-size: 3vh;
    text-align: center;
}
.bonus-final{
    font-size: 6.3vh;
}


.modal-final__close {
    position: relative;
    z-index: 1;
    background-image: url(../images/ui/asset-8.webp);
    background-size: 100% 100%;
    width: 30vh;
    aspect-ratio: 417/134;
    background-color: transparent;
    outline: none;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    font-family: 'Luckiest Guy';
    color: white;
    font-size: 3vh;
    -webkit-text-stroke: .1vh black;
    transform-origin: center center;
}

.modal-final.is-open .modal-final__backdrop {
    opacity: 0;
    animation: introFade 0.45s ease-out forwards;
}
.modal-final.is-open .modal-final__panel {
    opacity: 0;
    transform: scale(0.94) translateY(2vh);
    animation: introFade 0.5s ease-out 0.15s forwards,
               modalFinalPanelIn 0.5s cubic-bezier(0.34, 1.26, 0.64, 1) 0.15s forwards;
}
.modal-final.is-open .modal-final__close {
    opacity: 0;
    animation:
        introFade 0.5s ease-out 0.45s forwards,
        ctaPulse 1.25s ease-in-out 0.95s infinite;
}

@keyframes modalFinalPanelIn {
    from { transform: scale(0.94) translateY(2vh); }
    to { transform: scale(1) translateY(0); }
}


body.is-buildup .slot-machine {
    animation: slotShakeBuildup 0.55s linear infinite;
    transform-origin: center center;
}

@keyframes slotShakeBuildup {
    0%, 100% { transform: translate(0, 0); }
    10% { transform: translate(-0.15vh, -0.1vh); }
    20% { transform: translate(0.18vh, -0.08vh); }
    30% { transform: translate(-0.12vh, 0.15vh); }
    40% { transform: translate(0.15vh, 0.18vh); }
    50% { transform: translate(-0.18vh, -0.15vh); }
    60% { transform: translate(0.12vh, 0.18vh); }
    70% { transform: translate(-0.15vh, 0.12vh); }
    80% { transform: translate(0.18vh, -0.15vh); }
    90% { transform: translate(-0.12vh, 0.15vh); }
}

.buildup-flash {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 4800;
    mix-blend-mode: screen;
    background:
        radial-gradient(
            ellipse at center,
            rgba(255, 220, 80, 0) 30%,
            rgba(255, 200, 50, 0.2) 100%
        );
    animation: buildupFlash 0.6s ease-in-out infinite;
    opacity: 0.08;
}

@keyframes buildupFlash {
    0%, 100% {
        opacity: 0.06;
    }
    50% {
        opacity: 0.32;
    }
}


.square.square--revealed {
    display: block;
    animation: fisherSquareAppear 0.42s cubic-bezier(0.34, 1.45, 0.55, 1) forwards;
    transform-origin: center center;
}

@keyframes fisherSquareAppear {
    0% {
        opacity: 0;
        transform: scale(0.55);
    }
    60% {
        opacity: 1;
        transform: scale(1.1);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}

.panel{
    z-index: 3;
    width: 130vh;
    height: 10vh;
    margin-top: 2vh;
    display: flex;
    justify-content: space-between;
}
.left-bar{
    display: flex;
    align-items: center;
    gap: 2vh;
    height: 100%;
    img{
        height: 100%;
    }
}
.info-btn{
    height: 70%!important;

}
.game-panel{
    display: flex;
    gap: 15vh;
    width: 65%;
    margin-left: 4vh;
}
.div{
    display: flex;
    align-items: center;
    gap: 1vh;
}
.label{
    font-size: 3vh;
    color: #69CEFF;
    -webkit-text-stroke: .1vh black;
}
@font-face {
    font-family: 'Inter';
    src: url(../images/ui/asset-9.woff2);
}
.game-panel-right{
    display: flex;
    flex-direction: column;
    gap: 1vh;
    align-items: center;

}
.amount{
    font-size: 2.5vh;
    color: white;
    font-family: 'Inter';
}
.log{
    display: flex;
    align-items: center;
    gap: 1vh;
    opacity: 0;
    transition: opacity 0.3s ease;
}
.log.is-visible{
    opacity: 1;
}
.spins-amount{
    font-size: 2.5vh;
    color: white;
    font-family: 'Inter';
}
.spinBtn-container{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2vh;
}

.spinBtn-container .bet-btn {
    background: transparent;
    border: none;
    padding: 0;
    cursor: pointer;
    height: 60%;
    outline: none;
}

.spinBtn-container .bet-btn img {
    height: 100%;
    display: block;
    pointer-events: none;
}

.spinBtn-container .bet-btn.disabled {
    opacity: 0.45;
    cursor: not-allowed;
    pointer-events: none;
}
[data-role="spin"]{
    background-image: url(../images/ui/asset-10.webp);
    background-size: 100% 100%;
    width: 15vh;
    height: 15vh;
    background-color: transparent;
    outline: none;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    font-family: 'Luckiest Guy';
    color: white;
    font-size: 3.5vh;
    -webkit-text-stroke: .1vh black;
    margin-top: -5vh;
    transform-origin: center center;
}

[data-role="spin"]:not(:disabled) {
    animation: spinBtnPulse 1.15s ease-in-out infinite;
}

[data-role="spin"]:disabled {
    opacity: 0.55;
    cursor: not-allowed;
    filter: grayscale(0.25);
    animation: none;
}


.modal-spin-prize {
    position: fixed;
    inset: 0;
    z-index: 1001;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(12px, 4vw, 24px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity 0.6s ease,
        visibility 0.6s ease;
}

.modal-spin-prize.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.modal-spin-prize__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.72);
    opacity: 0;
    transition: opacity 0.6s ease;
}

.modal-spin-prize.is-open .modal-spin-prize__backdrop {
    opacity: 1;
}

.modal-spin-prize__frame {
    position: relative;
    z-index: 1;
    max-width: min(88vw, 75vh);
    max-height: min(85vh, 90vw);
    padding: clamp(16px, 3vh, 36px);
    box-sizing: border-box;
}

.modal-spin-prize__scale {
    transform: scale(0);
    transform-origin: center center;
    line-height: 0;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.6, 1);
}

.modal-spin-prize.is-open .modal-spin-prize__scale {
    animation: modalSpinPrizeScaleIn 0.48s cubic-bezier(0.34, 1.26, 0.64, 1) forwards;
}

@keyframes modalSpinPrizeScaleIn {
    from {
        transform: scale(0);
    }
    to {
        transform: scale(1);
    }
}

.modal-spin-prize__glow {
    display: inline-block;
    max-width: 100%;
    max-height: 85vh;
    line-height: 0;
    position: relative;
}

.modal-spin-prize__glow img {
    display: block;
    max-width: 100%;
    max-height: min(75vh, 85vw);
    width: auto;
    height: auto;
    object-fit: contain;
    pointer-events: none;
    user-select: none;
}

.modal-spin-prize.is-open .modal-spin-prize__glow img {
    
    animation: modalSpinPrizeGoldGlow 1.35s ease-in-out 0s infinite;
}
.bonus-final {

    background: linear-gradient(263.21deg, #FB8600 0%, #FEE32F 100%);
    
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
  }

@keyframes modalSpinPrizeGoldGlow {
    0%, 100% {
        -webkit-filter:
            drop-shadow(0 0 0.4vh rgba(226, 212, 53, 0.95))
            drop-shadow(0 0 1vh rgba(226, 212, 53, 0.7))
            drop-shadow(0 0 2vh rgba(226, 212, 53, 0.45))
            drop-shadow(0 0 3.2vh rgba(226, 212, 53, 0.22));
        filter:
            drop-shadow(0 0 0.4vh rgba(226, 212, 53, 0.95))
            drop-shadow(0 0 1vh rgba(226, 212, 53, 0.7))
            drop-shadow(0 0 2vh rgba(226, 212, 53, 0.45))
            drop-shadow(0 0 3.2vh rgba(226, 212, 53, 0.22));
    }
    50% {
        -webkit-filter:
            drop-shadow(0 0 0.75vh rgba(226, 212, 53, 1))
            drop-shadow(0 0 1.8vh rgba(226, 212, 53, 0.85))
            drop-shadow(0 0 3.2vh rgba(226, 212, 53, 0.55))
            drop-shadow(0 0 4.8vh rgba(226, 212, 53, 0.3));
        filter:
            drop-shadow(0 0 0.75vh rgba(226, 212, 53, 1))
            drop-shadow(0 0 1.8vh rgba(226, 212, 53, 0.85))
            drop-shadow(0 0 3.2vh rgba(226, 212, 53, 0.55))
            drop-shadow(0 0 4.8vh rgba(226, 212, 53, 0.3));
    }
}
@media (max-aspect-ratio:1271/945) {
.slot-machine {
    width: 100vh;
    aspect-ratio: 1538 / 840;
    --slot-gap: 2.55vh;
    margin-top: 2vh;
    position: relative;
    overflow: hidden;
}
.panel {
    z-index: 3;
    width: 100vh;
    height: 10vh;
    margin-top: 2vh;
    display: flex;
    justify-content: space-between;

}
.amount {
    font-size: 2vh;
    color: white;
    font-family: 'Inter';
}
.label {
    font-size: 2.5vh;
    color: #69CEFF;
    -webkit-text-stroke: .1vh black;
}
.game-panel {
    display: flex;
    gap: 10vh;
    width: 55%;
    margin-left: 4vh;
}
}
@media (max-aspect-ratio:988/945) {
.slot-machine {
    width: 80vh;
    aspect-ratio: 1538 / 840;
    --slot-gap: 2.55vh;
    margin-top: 2vh;
    position: relative;
    overflow: hidden;
}
.panel {
    z-index: 3;
    width: 100vh;

    margin-top: 7vh;
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between;
    height: auto;

}
.left-bar{
    display: none;
}
.amount {
    font-size: 2vh;
    color: white;
    font-family: 'Inter';
}
.label {
    font-size: 2.5vh;
    color: #69CEFF;
    -webkit-text-stroke: .1vh black;
}
.game-panel {
    display: flex;
    flex-direction: column;
    gap:0vh;
    justify-content: space-around;
    align-items:center;
    margin-top: 5vh;
    margin-bottom: 3;
    width: 100%;
    margin-left: 0vh;
}
.game-panel-left{
    display: flex;
    gap: 10vh;
}
}
@media (max-aspect-ratio:775/945) {
.slot-machine {
    width: 45vh;
    aspect-ratio: 1538 / 840;
    --slot-gap: 1vh;
    margin-top: 2vh;
    position: relative;
    overflow: hidden;
}
.panel {
    z-index: 3;
    width: 100vh;

    margin-top: 7vh;
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between;
    height: auto;

}
.left-bar{
    display: none;
}
.amount {
    font-size: 2vh;
    color: white;
    font-family: 'Inter';
}
.label {
    font-size: 2.5vh;
    color: #69CEFF;
    -webkit-text-stroke: .1vh black;
}
.game-panel {
    display: flex;
    flex-direction: column;
    gap:0vh;
    justify-content: space-around;
    align-items:center;
    margin-top: 5vh;
    margin-bottom: 3;
    width: 100%;
    margin-left: 0vh;
}
.game-panel-left{
    display: flex;
    gap: 10vh;
}
.slot-container {
    display: flex;
    flex-direction: column;
    justify-content: center;

}
.progress {
    position: absolute;
    left: 50%;
    top: -3vh;
    width: 46vh;
}
.square {
    display: none;
    width: 7.6vh;
    height: 6.9vh;
}
.fisherMan-container {
    width: 100%;
    height: 100%;
    display: flex;
    gap: .7vh;
}
.game-panel-right {
    display: flex;
    flex-direction: column;
    gap: 1vh;
    align-items: center;
    margin-top: 5vh;
}
.modal-start__panel {
    position: relative;
    z-index: 1;
    width: 45vh;
    min-width: 45vh;
    padding-top: 5vh;
    aspect-ratio: 1408 / 1009;

    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    transform: scale(0.94) translateY(2vh);
    opacity: 0;
    transition: transform 0.45s cubic-bezier(0.34, 1.26, 0.64, 1), opacity 0.4s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
gap: 1.5vh;
    color: white;
}

.last-chance {
    text-align: center;
    text-transform: uppercase;
    font-size: 3vh;
    -webkit-text-stroke: .1vh #004A80;
    text-shadow: .5vh .7vh .5vh #004A80;
    text-align: center;
    font-family: 'Luckiest Guy';
}
.modal-bonus {
    font-size: 1.7vh;
    color: #FEF400;
}
.modal-start__close {

    background-size: 100% 100%;
        width: 22vh;
    aspect-ratio: 417 / 134;
    background-color: transparent;
    outline: none;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    font-family: 'Luckiest Guy';
    color: white;
    font-size: 2.5vh;
    -webkit-text-stroke: .1vh black;
}
.btn-container {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    gap: 1vh;
    margin-top: 0vh;
}
.title {
    width: 42vh;
    position: absolute;
    left: 50%;
    top: 32%;
    transform: translate(-50%, -50%);
    z-index: 1;
}
.modal-intro__panel {
    position: relative;
    z-index: 1;
    width: 40vh;
    aspect-ratio: 417 / 134;

    background-size: 100% 100%;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    -webkit-text-stroke: .2vh black;
    font-size: 9vh;
}
.soon {
    font-size: 1.3vh;
    -webkit-text-stroke: .1vh black;
    text-shadow: .1vh .1vh .1vh black;
}
.modal-final__panel {
    position: relative;
    z-index: 1;
    width: 45vh;
    min-width: 45vh;
    padding-top: 3vh;
    aspect-ratio: 1408 / 1009;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1vh;
    color: white;
}
.final-chance{
    font-size: 3.2vh;
}
.final-bonus{
    font-size: 2vh;
}
.bonus-final{
    font-size: 4.3vh;
}
.modal-final__close{
    font-size: 3vh;
}
}
    
        
