body {
    background-color: #000;
    color: #fff;
    font-size: 29px;
    font-family: sans-serif;
    max-height: 1080px;
}

body.tp-print,
.print-num {
    font-size: 41px;
}

.bg-color-red {
    background-color: #d0021b;
}

.text-size-29 {
    font-size: 29px;
}
.text-size-64 {
    font-size: 64px;
}

.text-size-200 {
    font-size: 200px;
}

.lh-198 {
    line-height: 198px;
}

.lh-145 {
    line-height: 145px;
}

.img-logo {
    max-height: 40px;
}

.turn-text-d {
    font-size: 76px;
}

.turn-number {
    color: #d0021b;
    text-shadow: -2px -2px #fff, 2px -2px #fff, -2px 2px #fff, 2px 2px #fff,
        -2px 0 #fff, 0 2px 4px #fff, 2px 0 #fff, 0 -2px #fff;
    font-size: 120px;
    -webkit-font-smoothing: antialiased;
    /*-webkit-text-stroke: 3px #fff;*/
}

.current-number {
    color: #fdbf57;
    text-shadow: -2px -2px #fff, 2px -2px #fff, -2px 2px #fff, 2px 2px #fff,
        -2px 0 #fff, 0 2px 4px #fff, 2px 0 #fff, 0 -2px #fff;
    font-size: 120px;
    -webkit-font-smoothing: antialiased;
    /*-webkit-text-stroke: 3px #fff;*/
}

.turn-t {
    color: #d0021b;
    text-shadow: -3px -3px #fff, 3px -3px #fff, -3px 3px #fff, 3px 3px #fff,
        -3px 0 #fff, 0 3px 5px #fff, 3px 0 #fff, 0 -3px #fff;
    font-size: 228px;
    -webkit-font-smoothing: antialiased;
    /*-webkit-text-stroke: 3px #fff;*/
}

.turn-d {
    color: #d0021b;
    text-shadow: -3px -3px #fff, 3px -3px #fff, -3px 3px #fff, 3px 3px #fff,
        -3px 0 #fff, 0 3px 5px #fff, 3px 0 #fff, 0 -3px #fff;
    font-size: 250px;
    -webkit-font-smoothing: antialiased;
    transition: transform 0.4s;
    transform: scale(1);
    /*-webkit-text-stroke: 3px #fff;*/
}
.turn-d-animate {
    transform: scale(1.5);
}

.text-primary {
    color: #d0021b !important;
}
.text-secondary {
    color: #fdbf57 !important;
}
.get-number {
    display: none;
}

.show-number {
    display: none;
}

.turn-alert {
    visibility: hidden;
}

.qr-code {
    max-height: 200px;
}

.img-fixed {
    height: 45px;
}

.sl-slider .slider-img {
    width: 100%;
    height: 737px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.slick-slider {
    overflow: hidden;
}
.slick-slider div.slick-active .slider-img {
    -webkit-animation: myMove 8s 1 ease-in-out;
    -moz-animation: myMove 8s 1 ease-in-out;
    -o-animation: myMove 8s 1 ease-in-out;
    -ms-animation: myMove 8s 1 ease-in-out;
    animation: myMove 8s 1 ease-in-out;
}

@keyframes myMove {
    from {
        transform: scale(1, 1);
        transform-origin: 50% 50%;
    }
    to {
        transform: scale(1.1, 1.1);
        transform-origin: 50% 0%;
    }
}
@-webkit-keyframes myMove {
    from {
        -webkit-transform: scale(1, 1);
        -webkit-transform-origin: 50% 50%;
    }
    to {
        -webkit-transform: scale(1.1, 1.1);
        -webkit-transform-origin: 50% 0%;
    }
}
@-o-keyframes myMove {
    from {
        -o-transform: scale(1, 1);
        -o-transform-origin: 50% 50%;
    }
    to {
        -o-transform: scale(1.1, 1.1);
        -o-transform-origin: 50% 0%;
    }
}
@-moz-keyframes myMove {
    from {
        -moz-transform: scale(1, 1);
        -moz-transform-origin: 50% 50%;
    }
    to {
        -moz-transform: scale(1.1, 1.1);
        -moz-transform-origin: 50% 0%;
    }
}
@-ms-keyframes myMove {
    from {
        -ms-transform: scale(1, 1);
        -ms-transform-origin: 50% 50%;
    }
    to {
        -ms-transform: scale(1.1, 1.1);
        -ms-transform-origin: 50% 0%;
    }
}

.pulsate-bck {
    -webkit-animation: pulsate-bck 2.5s ease-in-out 1.5s infinite both;
    animation: pulsate-bck 2.5s ease-in-out 1.5s infinite both;
}

/* ----------------------------------------------
 * Generated by Animista on 2025-6-16 10:31:7
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation pulsate-bck
 * ----------------------------------------
 */
@-webkit-keyframes pulsate-bck {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    50% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
@keyframes pulsate-bck {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    50% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

.message-wrapper:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: -1;
}
.message-wrapper {
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
    padding: 0 20px;
    z-index: 999;
}
.message-content {
    position: relative;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.audio-controls {
    position: fixed;
    top: 40px;
    left: 10px;
    z-index: 990;
}

.audio-controls button svg {
    width: 24px;
    height: 24px;
}
