* {
    margin: 0;
    padding: 0;
    outline: none;
    box-sizing: border-box;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif
}

body {
    background: url(https://datakata.us/img/uploads/BG.webp);
    color: white;
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    background-repeat: no-repeat;
}

.logo_container{
    width: 15%;
    margin: 2% auto 1% auto;
}

.logo_container img {
    width: 100%;
    filter: drop-shadow(0px 0px 15px rgba(255, 50, 0, 0.9));
    animation: float 3s ease-in-out infinite;
}

@keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-5px); }
    100% { transform: translateY(0px); }
}

/*/// Topbar ///*/
.top_bar {
    width: 60%;
    margin: auto;
}

/* Marquee */
.marquee-container {
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    background: linear-gradient(to right, #8B0000, #FF4500);
    padding: 12px 0;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    box-shadow: 0px 4px 20px rgba(255, 69, 0, 0.7);
}

.marquee-text {
    display: inline-block;
    font-size: 24px;
    font-weight: bold;
    color: #FFD700;
    text-shadow: 0px 0px 12px rgba(255, 140, 0, 0.9);
    animation: marquee 20s linear infinite;
}

@keyframes marquee {
    from { transform: translateX(100%); }
    to { transform: translateX(-100%); }
}

/* Carousel */
.banner_outisde_container {
    width: 100%;
    padding: 30px 0px;
    text-align: center;
    background: linear-gradient(to bottom, #330000, #000000);
}

.banner-container {
    width: 520px;
    height: 300px;
    margin: auto;
    perspective: 1000px;
}

.banner {
    width: 100%;
    height: 100%;
    position: absolute;
    transform-style: preserve-3d;
    animation: rotate 10s linear infinite;
    box-shadow: 0px 0px 20px rgba(255, 69, 0, 1);
    border-radius: 15px;
    border: 3px solid rgba(255, 69, 0, 0.9);
}

.banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 15px;
    box-shadow: 0px 5px 20px rgba(0, 0, 0, 0.6);
}

@keyframes rotate {
    from {
        transform: rotateY(0deg);
    }
    to {
        transform: rotateY(360deg);
    }
}

/* Button */
.button-container {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    box-shadow: 0px -4px 15px rgba(255, 69, 0, 0.7);
}

.button {
    flex: 1;
    text-align: center;
    color: white;
    font-size: 18px;
    font-weight: 700;
    padding: 15px 0;
    text-decoration: none;
    transition: all 0.5s ease-in-out;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-top: 2px solid rgba(255, 255, 255, 0.3);
    border-bottom: 2px solid rgba(255, 255, 255, 0.3);
    position: relative;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    background: linear-gradient(to right, #ff7f00, #ff4500);
    box-shadow: 0px 0px 10px rgba(255, 165, 0, 0.8);
}

.login {
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}

.button:hover {
    background: linear-gradient(to right, #FF4500, #FF0000);
    box-shadow: 0px 0px 25px rgba(255, 69, 0, 1);
}


/*/// Text Container ///*/
.p_container{
    width: 60%;
    margin: 1% auto;
}

.p_container h1{
    font-size: 22px;
    margin-bottom: 1%;
    text-align: center;
}

.p_container p{
    font-size: 16px;
    text-align: justify;
}

/*/// menu ///*/
.menu_container{
    width: 60%;
    margin: auto;
    margin-bottom: 1%;
    background: linear-gradient(to right, #5e0000, #ff4500);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0px 10px;
    border-radius: 10px;
    border: 2px solid gold; /* Tambahkan border emas agar lebih mewah */
}

/* Provider */
.provider_container{
    width: 60%;
    justify-content: center;
    padding: 10px 0px;
    user-select: none;
}

.swiper {
    width: 70%;
  
}

.swiper .swiper-wrapper {
    text-align: center;
    margin: auto;
    padding: 5px 0 0 0;
}

.swiper-slide{
    width: 100px;
    cursor: pointer;
    transition: transform 0.3s ease-in-out;
    border: 2px solid gold;
    padding: 3px;
    background: #200000;  
    border-radius: 20px;
    margin: 1%;
}

.provider_container img:hover {
    transform: scale(1.1);
    filter: drop-shadow(0px 0px 10px gold);
}

/* Search */
.search_container{
    width: 40%;
    text-align: center;
}

.search {
    width: 80%;
    color: white;
    background: black;
    border: 2px solid #FF4500;
    padding: 10px 20px;
    font-size: 16px;
    font-weight: bold;
    border-radius: 50px;
    cursor: pointer;
    transition: all 0.3s ease;
}

input::placeholder {
    color: #ffcc00; 
}

.search:hover {
    background: black;
    color: white;
    border: 2px solid #FFD700;
    box-shadow: 0px 0px 15px rgba(255, 165, 0, 1);
}

/*/// RTP ///*/
.rtp_main_container {
    width: 60%;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.rtp {
    width: 32.3%;
    display: flex;
    flex-direction: column;
    margin: 0.3%;
    background-color: #550000 ; /* Merah gelap */
    border: 2px solid #FFD700; /* Emas */
    border-radius: 10px;
}

.inside_rtp {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    padding: 10px;
    gap: 10px;
}

/* Image RTP */
.loading,
.image_container {
    width: 100%;
    position: relative;
    display: inline-block;
    cursor: pointer;
    transition: transform 0.3s ease-in-out; 
    box-shadow: 1px 0px 6px 3px #FF8C00; /* Glow oranye */
    border-radius: 11px;
}

.image_container img {
    width: 100%;
    display: block;
    border-radius: 10px;
    transition: filter 0.3s ease-in-out;
    filter: grayscale(0%);
}

.image_container:hover img {
    filter: grayscale(100%) brightness(0.7);
}

.popup {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #FF4500; /* Oranye terang */
    color: #FFD700; /* Emas */
    font-weight: bold;
    padding: 6px 12px;
    font-size: 12px;
    border-radius: 15px;
    display: none;
    text-align: center;
    box-shadow: 0px 2px 10px rgba(255, 140, 0, 0.8); /* Glow oranye */
    transition: all 0.3s ease-in-out;
    cursor: pointer;
    width: 80%;
}

.image_container:hover .popup {
    display: block;
}


.mainkan{
    width: 100%;
    background: none;

}

/* badge */
.badge {
    background-repeat: no-repeat !important;
    position: absolute;
    width: 3rem;
    top: 0rem;
    z-index: 2;
    height: 2.9rem;
    left: 0.4rem;
    z-index: 999;
}

.hot{
    background: url("../image/hot.gif");
}

.top{
    background: url("../image/top.gif");
}

/* Container Info RTP */
.info_container {
    width: 100%;
    color: white;
    border-radius: 10px;
    margin-top: 10px;
}

.rtp_provider{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.rtp_provider img{
    width: 25%;
}

.rtp_provider p{
    font-size: 14px;
    text-align: center;
}

/* stats */
.stats{
    width: 100%;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pola{
    width: 100%;
    font-size: 14px;
    text-align: center;
}

.status_container{
    width: 100%;
    text-align: center;
}

.status {
    font-size: 13px;
    font-weight: bold;
    margin: 0% 6%;
}
.status.green {
    color: green;
}

.status.red {
    color: red;
}

.tidak_tersedia{
    width: 90%;
    margin: 4% auto;
    text-align: center;
}

.tidak_tersedia p{
    text-align: center;
    font-size: 12.5px;
}

/* Time */
.time {
    width: 100%;
    text-align: center;
    font-size: 14px;
    margin: 10px 0;
    margin-bottom: 0%;
}

/* Percent Value RTP */

.rtp_level{
    text-align: center;
    font-size: 12px;
    padding: 10px;
}

.progress-container {
    width: 100%;


}

.progress-bar {
    width: 100%;
    background-color: black;
    box-shadow: 0 0 10px rgba(255, 215, 0, 0.5);
    border-radius: 10px;
    text-align: center;
}

.fill {
    height: 20px;
    border-radius: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    animation: moveGradient 2s linear infinite;
    padding: 14px 0px;
}

.fill_green {
    background: linear-gradient(90deg, #8BFF6C 25%, #31C531 50%, #8BFF6C 75%);
    background-size: 200% 100%;
    box-shadow: 0px 4px 15px rgba(50, 205, 50, 0.8);
}

.fill_yellow {
    background: linear-gradient(90deg, #FFD700 25%, #FFA500 50%, #FFD700 75%);
    background-size: 200% 100%;
    box-shadow: 0 0 15px rgba(255, 204, 0, 0.9);
}

.fill_red {
    background: linear-gradient(90deg, #FF6347 25%, #D90000 50%, #FF6347 75%);
    background-size: 200% 100%;
    box-shadow: 0 0 15px rgba(255, 99, 71, 0.9);
}

.fill_percentage {
    width: 100%;
    text-align: left;
    color: white;
    font-weight: bold;
    font-size: 14px;
    position: absolute;
    font-weight: bold;
    z-index: 15;
    padding: 5px 0px;
    left: 71%;
}

@keyframes moveGradient {
    0% { background-position-x: -100%; }
    100% { background-position-x: 100%; }
}

/* Footer */
.footer {
    background: linear-gradient(to right, #ff4500, #8b0000, #300000);
    border-top: 3px solid gold;
    color: white;
    text-align: center;
    padding: 15px 0;
    font-family: Arial, sans-serif;
    position: sticky;
    bottom: 0;
    width: 100%;
    z-index: 999;
    box-shadow: 0px -5px 25px rgba(255, 69, 0, 1);
}

.inside_footer {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.footer_link {
    width: 100%;
    text-align: center;
    text-decoration: none;
}

.footer_link img {
    width: 100%;
    max-width: 30px;
}

.footer_link p {
    font-size: 12px;
    color: #ffcc66;
    text-shadow: 0px 0px 10px rgba(255, 140, 0, 0.8); /* Efek glow pada teks */
}

.footer_link:hover {
    filter: drop-shadow(0px 0px 15px rgba(255, 0, 0, 1)); /* Efek menyala saat hover */
}




/* .new-badge {
    position: absolute;
    top: 5px;
    right: 5px;
    background-color: red;
    color: white;
    font-weight: bold;
    padding: 3px 8px;
    border-radius: 5px;
} */


@media screen and (max-width: 1440px) {
    .rtp{
        width: 32%;
    }

    .inside_rtp{
        display: block;
    }

    .fill_percentage {
 
        left: 45%;
    }
}

@media screen and (max-width: 1020px) {

    .logo_container{
        width: 20%;
        max-width: 100px;
        margin: auto;

    }

    /*/// Topbar ///*/
    .top_bar{
        width: 100%;
    }
    

    /* Carousel */
    
    .banner_outisde_container{
        width: 100%;
        padding: 30px 0px;
        text-align: center;
        background-color: black;
    }
    
    .banner-container {
        width: 300px;
        height: 180px;
    }
    

    /*/// Text Container ///*/
    .p_container{
        width: 100%;
        padding: 10px;
    }
    

    /*/// menu ///*/
    .menu_container{
        width: 100%;
        padding: 10px 0px;
        display: block;
    }
    
    /* Provider */
    .provider_container{
        width: 100%;
    }

    .swiper {
        width: 90%;
        max-width: 500px;
    }

    .swiper-slide{
        margin: 1% 2.5%;
    }
  
    
    /* Search */
    .search_container{
        width: 90%;
        margin: auto;
    }
    
    .search{
        width: 100%;
    }
    
    /*/// RTP ///*/
    .rtp_main_container{
        width: 100%;
        margin: auto;
        background-color: #12002b;
        text-align: center;
    }
    
    .rtp{
        width: 50%;
        margin: 2% 0%;
    }

    .inside_rtp{
        display: flex;
    }
    
    .fill_percentage {
        width: 0%;
        left: 73%;
    }
 
    

}

@media screen and (max-width: 900px) {
    .rtp{
        width: 33%;
    }
    
    .inside_rtp{
        display: block;
    }
    
    .fill_percentage {
        width: 20%;
        left: 46%;
    }

    .rtp_provider img{
        width: 12%;
    }
}

@media screen and (max-width: 500px) {
    .rtp{
        width: 49.5%;
    }
}

@media screen and (max-width: 350px) {
    .rtp{
        width: 100%;
    }
}