@font-face {
    font-family: poppins;
    src: url('../webfonts/poppins/Poppins-Regular.ttf');
}
@font-face {
    font-family: poppins-medium;
    src: url('../webfonts/poppins/Poppins-Medium.ttf');
}
@font-face {
    font-family: poppins-light;
    src: url('../webfonts/poppins/Poppins-Thin.ttf');
}
@font-face {
    font-family: poppins-bold;
    src: url('../webfonts/poppins/Poppins-Bold.ttf');
}
@font-face {
    font-family: poppins-black;
    src: url('../webfonts/poppins/Poppins-Black.ttf');
}

body {
    
    background: linear-gradient(to top, #FFFFFF, #fff, ); /* Orange to White Gradient */
   
    background-attachment: fixed; /* Ensures gradient covers the whole page */
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; /* Modern font */
}
button{
    border: none;
    
    background-color: transparent;
}
*,*:focus,*:hover{
    outline:none;
}
.t-center{
    text-align: center;
    color: #fff;

}
.t-center2{
    text-align: center;
    color: #fff;

}
.fa-spin{
    -webkit-animation: fa-spin .7s linear infinite;
    animation: fa-spin .7s linear infinite;
}
.cursor-pointer{
    cursor: pointer;
}
.ellipsis{
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* FONT FAMILY */
.font-medium{
    font-family: poppins-medium;
    color: #000000;
}
.font-light{
    font-family: poppins-light;
}
.font-bold{
    font-family: poppins-bold;
}
.font-black{
    font-family: poppins-black;
}

/* BREAD CRUMB */
.bread-crumb{
    /*background: #f5f6fa;*/
    padding: 14px 20px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
}

/* TESTIMONIAL SECTION */
.testimoni {
    padding: 40px 0;
    background: transparent;
}

.testimoni-item {
    color: #fff;
    margin: 20px 15px;
    width: 280px;
    padding: 25px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    border-radius: 16px;
    background-image: radial-gradient(circle farthest-corner at 10% 90%, #fd7054 0.1%, #ee4d2d 90.1%);
    opacity: 0.95;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.testimoni-item:hover {
    opacity: 1;
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}

.testimoni-item::before {
    content: "";
    position: absolute;
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
    background: linear-gradient(45deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 60%);
    z-index: -1;
    border-radius: 20px;
}

.testimoni-wrap {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 260px;
    color: #fff;
    position: relative;
}

.testimoni-komentar {
    font-style: italic;
    flex-grow: 1;
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 20px;
    position: relative;
    padding-left: 20px;
}

.testimoni-komentar::before {
    content: "\201C";
    font-size: 60px;
    position: absolute;
    left: -15px;
    top: -20px;
    opacity: 0.2;
    font-family: Georgia, serif;
}

.testimoni-author {
    display: flex;
    align-items: center;
    margin-top: auto;
}

.testimoni-img {
    background-size: cover;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 3px solid rgba(255,255,255,0.3);
    margin-right: 15px;
    transition: all 0.3s ease;
}

.testimoni-item:hover .testimoni-img {
    transform: scale(1.1);
    border-color: rgba(255,255,255,0.6);
}

.author-info {
    display: flex;
    flex-direction: column;
}

.author-name {
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 3px;
}

.author-title {
    font-size: 13px;
    opacity: 0.8;
}


/* KERANJANG BELANJA */
.keranjang{
    margin: 0;
    padding: 20px 16px;
    box-shadow: 0px 0px 14px #d0d1d4;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    align-items: center;
    margin-bottom: 24px;
    background-color: #ffffff;
}
.keranjang .img{
    padding-top: 80%;
    margin: auto;
    width: 80%;
    min-width: 80px;
    min-height: 80px;
    box-shadow: 0px 0px 14px #d0d1d4;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    background-size: cover;
    background-position: center center;
}
.keranjang .centered{
    align-items: center;
    justify-content: center;
    display: flex;
    
}

/* TOPUP SALDO */
.table-item{
    box-shadow: 0px 0px 12px #d0d1d4;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    padding: 12px 16px;
    background-color: #ffffff;
    margin-bottom: 12px;
}
.table-item .col-md-3,
.table-item .col-md-2{
    display: flex;
    align-items: center;
}
.table-item:hover{
    box-shadow: 0px 0px 12px #9fa0a1;
}

/* PESANAN */
.pesanan{
    margin-top: 30px;
}
.pesanan-item{
    box-shadow: 0px 0px 18px #d0d1d4;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    background-color: #ffffff;
}
.pesanan-item .produk-item{
    padding: 12px;
}
.pesanan-item .produk-item .img{
    box-shadow: 0px 0px 24px #babbbe;
    width: 80px;
    height: 80px;
    background-size: cover;
    background-position: center center;
    border-radius: 40px;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
}
.status-pesanan{
    box-shadow: 0px 0px 18px #d0d1d4;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    padding: 12px;
    font-family: poppins-medium;
    color: #fff;
    text-align: center;
}

/* BAYAR PESANAN */
.section{
    box-shadow: 0px 0px 14px #d0d1d4;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    background-color: #ffffff;
}
.sticky{
    position: -webkit-sticky;
    position: sticky;
    top: 0;
}
.bayarpesanan .produk{

}
.produk .produk-item{
    box-shadow: 0px 0px 14px #d0d1d4;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    padding: 20px 12px;
    align-items: center;
    justify-content: center;
    display: flex;
    background-color: #ffffff;
}
.produk .produk-item .img{
    background-size: cover;
    background-position: center center;
    width: 80px;
    height: 80px;
    border-radius: 40px;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
    margin: auto;
}

/* METODE PEMBAYARAN */
.metode-bayar{
	box-sizing: border-box;
	text-align: center;
	margin: auto;
}
.metode-item{
	padding: 20px;
    box-shadow: 0px 0px 14px #d0d1d4;
    background: linear-gradient( 91.9deg,  rgb(0, 150, 163) 0%, rgb(25, 201, 218) 90% );
	border-radius: 12px;
	color: #fff;
	position: relative;
	cursor: pointer;
}
.metode-item:hover,
.metode-item.active{
    background: linear-gradient(90.9deg, #0363b8d9 0.5%, #0363b8d9 99.7%);
}
.metode-item .icon{
	width: 100%;
}
.metode-item .cek{
	width: 30px;
	position: absolute;
	top: 10px;
	right: 10px;
}
.metode-item .cek{
	display: none;
}
.metode-item.active .cek{
	display: block;
	width: 30px;
}

/* SECTION */
.sec-title {
    margin-top: -20px;
    text-align: center;
    margin-bottom: 10px; /* Pusatkan teks secara horizontal */
}

.sec-title h2 {
    position: relative; /* Untuk posisi relatif terhadap ::after */
    display: inline-block;
    font-family: 'poppins-black';
    text-transform: uppercase;
    background: black;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size:20px;
    
}

.sec-title h2::after {
    content: '';
    position: absolute;
    left: 50%; /* Posisi awal dari tengah */
    transform: translateX(-50%); /* Geser setengah lebar untuk benar-benar center */
    bottom: -10px; /* Jarak garis dari teks */
    width: 60%; /* Bisa kamu ubah sesuai panjang garis yang diinginkan */
    height: 4px;
     background: linear-gradient(135deg, #ff3c3c, #ffa534);
    border-radius: 2px;
}



.title{
    font-family: poppins-bold;
    text-transform: uppercase;
    background: linear-gradient(109.5deg, #0D8BF2 11.2%, #30D5EE 91.1%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.search-product{
    border: 2px solid #ee4d2d;
    padding: 5px 32px;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
    border-radius: 40px;
    background-color: #ffffff;
}
.search-product .fas{
    font-size: 140%;
}
.search-product button,
.search-product input{
    border: none;
    background: transparent;
}

/* KATEGORI */
/* KATEGORI */
.cat-card {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05);
	overflow: hidden;
	text-align: center;
	cursor: pointer;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	padding: 16px 10px;
    margin: 0px;
}

.cat-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);
}

.cat-image {
	width: 80px;
	height: 80px;
	margin: 0 auto 10px;
	border-radius: 50%;
	background-color: #f0f0f0;
	background-size: cover;
	background-position: center;
	box-shadow: inset 0 0 6px rgba(0,0,0,0.1);
	transition: transform 0.3s ease;
}

.cat-card:hover .cat-image {
	transform: scale(1.1);
}

.cat-title {
	font-weight: 500;
	color: #333;
	font-size: 14px;
	transition: color 0.3s ease;
}

.cat-card:hover .cat-title {
	color: #0d6efd;
}

/* Responsive adjustments */
@media (max-width: 576px) {
	.cat-image {
		width: 64px;
		height: 64px;
	}
	.cat-title {
		font-size: 13px;
	}
}


/* IKLAN */
.playstore-section{
    /* background-image: radial-gradient(circle 465px at -15% -25%, #0D8BF2 0%, #9ED1FA 100%); */
    /* background-image: radial-gradient(circle 465px at -15% -25%, #00a65a 0%, #9efabd 100%); */
    background-image: radial-gradient(circle 465px at -15% -25%, #0363b8d9 0%, #0363b8d9 100%);
    padding: 20px 0;
    box-shadow: 0px 0px 24px #d0d1d4;
}
.playstore-section .row{
    align-items: center;
}
.playstore-section img{
    width: 100%;
}
.iklans img{
    width: 100%;
    border-radius: 8px;
    box-shadow: 0px 0px 24px #d0d1d4;
}

/* SIGNUP  SIGNIN */
.bg-sign{
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0px 0px 24px #d0d1d4;
}

/* SLIDER */
.slider {
  margin: 0 auto;
  padding: 5px 0; /* Mengurangi jarak atas-bawah slider */
  overflow: hidden;
}

.slider .slick-arrow::before {
  color: #fff;
  font-size: 28px;
}

.slider .slick-next {
  right: 16px;
}

.slider .slick-prev {
  left: 16px;
  z-index: 1;
}

.slider-item {
  padding: 8px;
  width: 90vw;
  max-width: 1000px;
  margin: 0 auto;
  box-sizing: border-box;
}

.slider-item img {
  width: 100%;
  border-radius: 8px;
  margin: 10px auto; /* Sebelumnya 40px */
  transition: all 0.3s ease;
}

.slider-item.slick-center img {
  filter: none;
  box-shadow: 0px 0px 16px #d0d1d4;
  transform: scale(1.15);
  transition: all 0.3s ease-in-out;
}

.slick-prev:before,
.slick-next:before {
  color: #333333;
  font-size: 30px;
}

/* ==== RESPONSIVE ==== */
@media (max-width: 1024px) {
  .slider-item {
    width: 80vw;
  }

  .slider-item.slick-center img {
    transform: scale(1.1);
  }
}

@media (max-width: 768px) {
  .slider-item {
    width: 100%;
  }

  .slider .slick-arrow::before {
    font-size: 22px;
  }

  .slider-item.slick-center img {
    transform: scale(1.05);
  }
}

@media (max-width: 480px) {
  .slider-item {
    padding: 6px;
  }

  .slider-item img {
    margin: 6px auto;
  }

  .slider-item.slick-center img {
    transform: scale(1.03);
  }

  .slick-prev,
  .slick-next {
    display: none;
  }
}


/* PAGINATION */
.pagination{
    text-align: center;
    width: 100%;
    justify-content: center;
    margin-top: 24px;
}
.pagination .item{
    box-shadow: 0px 0px 16px #d0d1d4;
    padding: 6px 18px;
    background-image: linear-gradient( 91.9deg,  rgb(255, 255, 255) 0%rgb(255, 255, 255)8) 90% ;
    border: 3px solid #ee4d2d;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    color: #ee4d2d;
    font-family: poppins-medium;
    margin: 0px 6px;
}
.pagination .item.active,
.pagination .item:hover{
    background-image: linear-gradient( 0deg,   rgb(255, 255, 255) 0%, rgb(255, 255, 255)3) 100%;
    text-decoration: none;
}

/* GOOGLE FONT */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');

/* === NAVBAR SUPER STYLISH === */
.navbar {
    background: radial-gradient(circle 465px at -15% -25%, #ee4d2d 0%, #ee4d2d 100%);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
    padding: 0.8rem 0; /* Menghapus padding horizontal, hanya menyisakan vertical */
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0; /* Menghapus border-radius agar sudutnya persegi */
    transition: all 0.4s ease;
    z-index: 1030;
}

/* Untuk container navbar */
.navbar > .container {
    padding-left: 15px;
    padding-right: 15px;
    width: 100%;
    max-width: 100%;
}

/* Jika menggunakan container-fluid */
.navbar > .container-fluid {
    padding-left: 15px;
    padding-right: 15px;
}

/* Untuk menghilangkan margin negatif yang mungkin ada */
.navbar-expand-lg {
    margin-left: 0;
    margin-right: 0;
}

.navbar-brand img {
    max-height: 56px;
    transition: transform 0.3s ease;
    margin-left: ;
}
.navbar-brand img:hover {
    transform: scale(1.05);
}

/* === NAV LINK === */
.navbar-nav .nav-link {
    color: #fff !important;
    font-weight: 600;
    font-size: 16px;
    margin: 0 6px;
    border-radius: 10px;
    padding: 10px 14px;
    transition: all 0.3s ease-in-out;
    position: relative;
}
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus {
    background-color: rgba(255, 255, 255, 0.2);
    color: #fff !important;
    transform: translateY(-2px);
}

/* === DROPDOWN MENU === */
.dropdown-menu {
    background-color: rgba(255, 255, 255, 0.98);
    border-radius: 14px;
    padding: 10px 0;
    border: none;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
    animation: fadeIn 0.3s ease-in-out;
}
@keyframes fadeIn {
    from { opacity: 0; transform: scale(0.98); }
    to { opacity: 1; transform: scale(1); }
}
.dropdown-item {
    font-weight: 500;
    padding: 12px 22px;
    color: #333;
    transition: background 0.25s ease, color 0.25s ease;
}
.dropdown-item:hover {
    background-color: #fff3e6;
    color: #ff5c00;
    border-radius: 8px;
}

/* === BUTTON LOGIN === */
.btn-primary {
    background: linear-gradient(135deg, #ff6d00, #ff3d00);
    border: none;
    font-weight: bold;
    padding: 9px 18px;
    border-radius: 14px;
    transition: all 0.3s ease;
    color: white;
}
.btn-primary:hover {
    background: #d84315;
    box-shadow: 0 6px 18px rgba(255, 87, 34, 0.4);
}

.mobile-category-toggle button:hover {
    background:#ee4d2d;
    border-color: #cbd5e0;
}

/* === BADGE KERANJANG / WISHLIST === */
.badge-danger {
    background: #ff1744;
    font-size: 11px;
    padding: 4px 8px;
    border-radius: 14px;
    font-weight: 600;
    box-shadow: 0 2px 6px rgba(255, 23, 68, 0.4);
}

/* === ICON STYLE === */
.nav-link i {
    margin-right: 6px;
    transition: transform 0.3s ease;
}
.nav-link:hover i {
    transform: rotate(8deg) scale(1.2);
}

/* === TOGGLER ICON (MOBILE) === */
.navbar-toggler {
    border: none;
    outline: none;
}
.navbar-toggler-icon {
    filter: invert(100%);
}

/* === RESPONSIF MOBILE === */
@media screen and (max-width: 991px) {
    .navbar {
        padding: 0rem;
        border-radius: 0;
    }

    .navbar-nav .nav-item {
        margin-bottom: 1px;
       
    }

    .navbar-nav .nav-link {
        display: block;
        width: 100%;
        padding: 10px 14px;
        font-size: 16px;
    }
 
    .navbar-brand img {
    max-height: 50px;
    transition: transform 0.3s ease;
    
}

    .dropdown-menu {
        box-shadow: none;
        background-color: #fff;
    }

    .btn-primary {
        display: block;
        width: 100%;
        margin-top: 10px;
    }

    .badge-danger {
        font-size: 13px;
    }
} 

/* BUTTON */
.btn{
    border: none;
    box-shadow: 0px 0px 2px #bebcbc;
}
.btn-primary{
    /* background-image: linear-gradient(109.5deg, #0D8BF2 11.2%, #30D5EE 91.1%); */
    background-image: linear-gradient(109.5deg, #ee4d2d 11.2%, #ee4d2d 91.1%);
}
.badge-primary, .bg-primary, .hov-primary:hover, .btn-primary:hover{
    /* background-image: linear-gradient(109.5deg, #0D8BF2 11.2%, #30D5EE 91.1%); */
    background-image: linear-gradient(109.5deg, #d82704 11.2%, #d82704 91.1%);
}
a.text-primary:hover, .text-hov-primary:hover, .text-primary{
    background: linear-gradient(109.5deg, #000000 11.2%, #000000 91.1%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: #e02a05;
}
a.text-primary{
    color: #fff;
    background: linear-gradient(109.5deg, #ee4d2d 11.2%, #f78f7a 91.1%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
a.text-icon{
    -webkit-text-fill-color: rgb(255, 255, 255);
}
.btn-success{
    background-color:#fff;
    color:#ee4d2d;
}
.btn-success:hover{
    background-color: #ee4d2d;
    color:#fff;
        
    }
.badge-success, .bg-success, .hov-success:hover{
    background-image: linear-gradient(91.9deg, #e4907f, #e9a294 0.5%);
}
a.text-success:hover, .text-hov-success:hover, .text-success{
    background: linear-gradient(91.9deg, #ee4d2d 0.5%, #ee4d2d 99.7%);
    
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
a.text-success{
    background: linear-gradient(90.9deg, #0363b8d9 0.5%, #0363b8d9 99.7%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.btn-danger{
    background-image: linear-gradient( 107.2deg,  rgba(150,15,15,1) 10.6%, rgba(247,0,0,1) 91.1% );
}
.badge-danger, .bg-danger, .hov-danger:hover, .btn-danger:hover{
    background-image: linear-gradient( 107.2deg,  rgb(110, 11, 11) 10.6%, rgb(180, 4, 4) 91.1% );
}
a.text-danger:hover, .text-hov-danger:hover, .text-danger{
    background: linear-gradient( 107.2deg,  rgb(110, 11, 11) 10.6%, rgb(180, 4, 4) 91.1% );
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
a.text-danger{
    background: linear-gradient( 107.2deg,  #ee4d2d, #ee4d2d );
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.btn-warning{
    background: radial-gradient(circle 465px at -15% -25%, #ee4d2d 0%, #ee4d2d 100%);
    color: #fff;
}
.badge-warning, .bg-warning, .hov-warning:hover, .btn-warning:hover{
   background: radial-gradient(circle 465px at -15% -25%, #ee4d2d 0%, #ee4d2d 100%);
    color: #fff;
}
a.text-warning:hover, .text-hov-warning:hover, .text-warning{
    background: linear-gradient( 88.7deg,  rgb(211, 103, 3) 10.6%,  rgb(219, 151, 25) 90% );
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
a.text-warning,.item-rating:hover{
    background: linear-gradient( 88.7deg,  rgb(189, 123, 2) 10.6%, rgb(253, 178, 39) 90% );
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.btn-info{
    background-image: linear-gradient(91.9deg, #ee4d2d 0%, #fa795f 90%);
}
.badge-info, .bg-info, .hov-info:hover, .btn-info:hover{
    background-image: linear-gradient( 91.9deg,  #e4907f, #e9a294 );
}
a.text-info:hover, .text-hov-info:hover, .text-info{
    background: linear-gradient( 91.9deg,  rgb(255, 255, 255) 0%, rgb(255, 255, 255) 90% );
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: #ffffff;
}
a.text-info{
    background: linear-gradient(91.9deg, #0D8BF2 0%, rgb(3, 200, 218) 90%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.btn-medium{
    background-image: linear-gradient( 89.7deg,  rgb(177, 177, 177) -10.7%, rgb(217, 222, 226) 88.8% );
}
.badge-medium, .bg-medium, .hov-medium:hover, .btn-medium:hover{
    background-image: linear-gradient( 89.7deg,  rgb(128, 128, 128) -10.7%, rgb(181, 187, 192) 88.8% );
}
.text-medium{
    background: linear-gradient( 89.7deg,  rgb(255, 255, 255) -10.7%, rgb(255, 255, 255) 88.8% );
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.text-dark{
    background: linear-gradient( 89.7deg,  rgb(255, 255, 255) -10.7%, rgb(255, 255, 255) 88.8% );
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.text-dark2{
    background: radial-gradient(circle 759px at 14% 22.3%, #ffffff 0%, #ffffff 90%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.hov-primary:hover, .hov-success:hover, .hov-warning:hover, .hov-danger:hover, .hov-info:hover{
    color: #fff;
}
.bg-medium{
    background-image: radial-gradient( circle 993px at 0.5% 50.5%,  #e4907f, #e9a294);
}
.btn-rounded{
    border-radius: 40px;
    -moz-border-radius: 40px;
    -webkit-border-radius: 40px;
}

/* SOCMED */
.btn-fb{
    background-image: linear-gradient( 91.9deg,   rgb(24, 119, 242) 0%, rgb(87, 157, 248) 90% );
    color: #fff;
}
.btn-fb:hover{
    background-image: linear-gradient( 91.9deg,   rgb(0, 62, 143) 0%, rgb(29, 106, 207) 90% );
    color: #fff;
}
.btn-tw{
    background-image: linear-gradient( 91.9deg,   rgb(29, 161, 242) 0%, rgb(123, 178, 250) 90% );
    color: #fff;
}
.btn-tw:hover{
    background-image: linear-gradient( 91.9deg,   rgb(4, 105, 168) 0%, rgb(51, 131, 236) 90% );
    color: #fff;
}
.btn-gplus{
    background-image: linear-gradient( 91.9deg,  rgb(234, 67, 53) 0%, rgb(241, 100, 87) 90% );
    color: #fff;
}
.btn-gplus:hover{
    background-image: linear-gradient( 91.9deg,  rgb(168, 21, 8) 0%, rgb(199, 46, 32)90% );
    color: #fff;
}

/* VOUCHER */
.voucher{

}
.voucher .voucher-item{
    box-shadow: 0px 0px 8px #d0d1d4;
	border-radius: 8px;
    width: 200px;
}
.voucher .voucher-item:hover{
    box-shadow: 0px 0px 12px #b2b3b4;
}
.voucher .voucher-item .potongan{
    padding: 12px;
    min-height: 120px;
}
.voucher .voucher-item .detail{
    padding: 12px;
}
.voucher .voucher-item .kode{
    padding: 12px;
    text-align: center;
    background-image: radial-gradient( circle 993px at 0.5% 50.5%,  rgba(161, 190, 253, 0.37) 0%, rgba(245,247,252,1) 100.2% );
}

/* ULASAN */
.ulasan{
    box-shadow: 0px 0px 4px #d0d1d4;
	border-radius: 8px;
    padding: 12px 8px;
    background-color:#f59683;
}
.ulasan .title{
	font-weight: bold;
	font-size: 90%;
}
.ulasan .keterangan{
	font-size: 90%;
	font-style: italic;
    color: #fff;
}

/* HEADER & FOOT */
/* FONT */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap');

/* FOOTER BASE */
.bg-foot {
     background: radial-gradient(circle 465px at -15% -25%, #ee4d2d 0%, #ee4d2d 100%);
    color: #fff;
    font-family: 'Poppins', sans-serif;
    padding: 50px 20px;
   
    box-shadow: 0px -4px 12px rgba(0,0,0,0.1);
    position: relative;
    overflow: hidden;
}

/* ANIMATED BACKGROUND OVERLAY */
.bg-foot::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255,255,255,0.05) 10%, transparent 10.01%);
    background-size: 40px 40px;
    animation: animateBackground 20s linear infinite;
    z-index: 0;
}

@keyframes animateBackground {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.bg-head-gradient {
    background-image: linear-gradient(180deg, rgba(83, 245, 172, 0.2) 0%, #f2f3f8 100%);
}

/* FOOTER GRADIENT BELOW */
.bg-foot-gradient {
    background: linear-gradient(0deg, #ee4d2d 0%, #f5f5f5 100%);
}

/* TITLE */
.foot-title {
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 18px;
    font-size: 16px;
    color: #fff;
    letter-spacing: 1px;
    position: relative;
    z-index: 1;
}

/* FOOT MENU */
.foot-menu {
    list-style-type: none;
    padding: 0;
    margin: 0;
    z-index: 1;
    position: relative;
}

.foot-menu li a {
    display: block;
    padding: 12px 18px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.05);
    color: #fff;
    font-size: 15px;
    margin-bottom: 10px;
    transition: all 0.3s ease-in-out;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(3px);
}

.foot-menu li a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 0%;
    height: 100%;
    background: rgba(255, 255, 255, 0.2);
    transition: width 0.4s ease;
    z-index: 0;
}

.foot-menu li a:hover::before {
    width: 100%;
}

.foot-menu li a:hover {
    color: #ffe082;
    transform: translateX(6px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    text-decoration: none;
    font-weight: 500;
}

/* LIST PRODUK */
.block2{
    box-shadow: 0px 0px 24px #d0d1d4;
    background-color: #ffffff;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
}
.block2:hover{
    box-shadow: 0px 0px 24px #bdbec0;
    cursor: pointer;
}
.block2-img{
    min-height: 140px;
    height: 12vw;
    max-height: 200px;
    width: 100%;
    background-size: cover;
    background-position: center center;
}
.block2-txt,
.block2-ulasan{
    padding: 12px 14px;
    font-family: poppins;
}
.block2-txt{
    flex-grow: 1;
}
.block2-name{
    text-decoration: none;
    color: #333333;
    font-family: poppins-medium;
}
.block2-delete{
    position: absolute;
    z-index: 1;
    top: 8px;
    right: 8px;
}
.block2-wishlist{
    position: absolute;
    z-index: 1;
    top: 12px;
    right: 12px;
}
.block2-wishlist .fas{
    color: #fff;
    text-shadow: 0px 0px 12px #242425;
    font-size: 24px;
}
.block2-wishlist .fas.active,
.block2-wishlist .fas:hover{
    color: #e63131;
}
.harga-coret,
.block2-price-coret{
    text-decoration: line-through;
    color: #b40404;
    font-family: poppins-medium;
    font-style: italic;
}

/* PRODUK SINGLE */
.prod-preview img{
    width: 100%;
    border-radius: 12px;
    -moz-border-radius: 12px;
    -webkit-border-radius: 12px;
    box-shadow: 0px 0px 12px #d0d1d4;
    margin-bottom: 20px;
}
.prod-thumb-item{
    width: 100px;
    height: 100px;
    border-radius: 12px;
    -moz-border-radius: 12px;
    -webkit-border-radius: 12px;
    box-shadow: 0px 0px 12px #d0d1d4;
    overflow: hidden;
    cursor: pointer;
    background-size: cover;
    background-position: center center;
    margin: 12px 12px 12px 0px;
}
.prod-thumb-item:focus,
.prod-thumb-item:hover{
    outline: none;
    filter: brightness(70%);
}
.prod-thumb-item img{
    width: 100%;
}

/* EQUAL ROWS */
.row.display-flex {
    display: flex;
    flex-wrap: wrap;        
}
.row.display-flex > [class*='col-'] {
    display: flex;
    flex-direction: column;
}

/* NOTIF BOOSTER */
.toaster{
	position: fixed;
	bottom: 3vw;
    left: 3vw;
    background-image: radial-gradient( circle farthest-corner at 10% 20%,  rgba(239,246,249,1) 0%, rgba(206,239,253,1) 90% );
	padding: 12px;
	border-radius: 8px;
	box-shadow: 0px 0px 6px 2px #bebdbd;
	z-index: 200;
	margin: 0;
}
.toaster .img img{
	max-width: 100%;
	border-radius: 8px;
	max-height: 60px;
}

/* WHATSAPP STICKY */
.whatsapp-sticky{
	font-size: 240%;
	position: fixed;
	bottom: 30px;
	right: 30px;
	background: #33CC33;
	color: #fff;
    border-radius: 40px;
    padding: 5px 16px;
	text-align: center;
	z-index: 2000;
    justify-content: center;
    align-items: center;
    transition: transform .25s;
}
.whatsapp-sticky:hover{
	color: #fff;
	background: #27ae60;
	width: 80px;
	height: 80px;
	border-radius: 40px;
    align-items: center;
    transform: scale(1.2);
}
.chat-sticky{
	font-size: 160%;
	position: fixed;
	bottom: 59px;
	right: 30px;
	background: #33CC33;
	color: #fff;
    border-radius: 40px;
    padding: 5px 16px;
	text-align: center;
	z-index: 2000;
    justify-content: center;
    align-items: center;
    transition: transform .25s;
    animation:  nudge 5s infinite;
}
.chat-sticky:hover{
	color: #fff;
	background: #27ae60;
	border-radius: 40px;
    align-items: center;
}
@media only screen and (max-width: 600px) {
    .chat-sticky{
        display: none;
    }

}
@media only screen and (max-width: 600px) {
    .t-center2{
        text-align: left;
        margin: auto;
    }
}
@keyframes nudge {
    0%, 100% {transform: translateX(0);}
    1.5% {transform: translateX(10px);}
    3% {transform: translateX(0);}
    4.5% {transform: translateX(-10px);}
    6% {transform: translateX(0);}
    7.5% {transform: translateX(10px);}
    9% {transform: translateX(0);}
    10.5% {transform: translateX(-10px);}
    12% {transform: translateX(0);}
}

/* PESAN KOTAK MASUK */
.pesan{
	overflow-y: scroll;
	overflow-x: hidden;
	max-height: 70vh;
	padding-bottom: 36px;
}
.pesan .pesanwrap{
	position: relative;
	padding: 5px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.pesan .isipesan{
	box-shadow: 0px 0px 4px 1px #eee;
	padding: 8px 16px;
	display: inline-block;
	width: auto;
	max-width: 80%;
	border-radius: 10px;
	text-align: center;
	font-size: 90%;
	position: relative;
}
.pesan .isipesan b{
    font-weight: normal;
    font-family: poppins-medium;
}
.pesan .isipesan small{
	font-size: 70%;
}
/*.pesan .isipesan small{
	position: absolute;
	bottom: -16px;
	right: 0px;
	background: #dedede;
	color: #C0A230;
	padding: 2px 4px;
	border-radius: 4px;
}*/
.pesan .center .isipesan{
	margin: 20px auto;
	box-shadow: 0px 0px 2px 1px #eee;
	background: #eee;
	padding: 4px 12px;
	border-radius: 4px;
	text-align: center;
}
.pesan .right{
	justify-content: flex-end;
}
.pesan .right .isipesan{
    background-image: linear-gradient( 109.5deg,  rgb(6, 155, 179) 11.2%, rgb(48, 168, 187) 91.1% );
	color: #fff;
	text-align: right;
}
.pesan .left{
	justify-content: flex-start;
}
.pesan .left .isipesan{
    background-image: linear-gradient( 88.7deg,  rgb(189, 123, 2) 10.6%, rgb(253, 178, 39) 90% );
	color: #fff;
	text-align: left;
}
.pesanmasuk{
	box-shadow: 0px 0px 6px #ccc;
	border-radius: 6px;
	padding: 10px 20px;
	cursor: pointer;
	margin-bottom: 10px;
}
.pesanmasuk .nama{
	font-weight: bold;
	font-size: 110%;
}
.pesanmasuk .isipesan{
	padding-left: 26px;
}

/* blog */
.blog-wrap{
    padding: 12px;
    box-sizing: border-box;
}
.blog,
.blog-grid{
	cursor: pointer;
    box-shadow: 0px 0px 24px #d0d1d4;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    overflow: hidden;
    margin-bottom: 20px;
    margin-left: 0;
    margin-right: 0;
    height: 100%;
    transition: transform .25s;
    background-color: #ffffff;
}
.blog:hover,
.blog-grid:hover{
    box-shadow: 0px 0px 24px #b9babb;
    transform: scale(1.05);
}
.blog-grid{
    margin-bottom: 24px;
}

.blog:hover{
    box-shadow: 0px 0px 24px #bdbec0;
    cursor: pointer;
}
.blog-grid .titel,
.blog .titel{
	font-weight: bold;
	padding: 8px 14px;
}
.blog .col-4{
    overflow: hidden;
    background: #ccc;
}
.blog-grid .konten,
.blog .konten{
	font-size: 90%;
	text-align: left;
	padding: 8px 14px;
}
.blog-grid .img,
.blog .img{
	width: 100%;
    height: 100%;
	overflow: hidden;
	position: relative;
	transition: all .3s;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
.blog-grid .img{
	width: 100%;
    height: 160px;
}
.blog-grid .img::before,
.blog .img::before { 
	content:"";
	position:absolute;
	top:0;right:0;bottom:0;left:0;
}
.blog-header{
	border-radius: 12px;
    overflow: hidden;
    height: 320px;
    width: 100%;
    background-size: cover;
    background-position: center center;
    box-shadow: 0px 0px 12px #bdbec0;
}
.blog-info{
	font-size: 90%;
	color: #999;
}

/* BOOTSTRAP CUSTOM */
.table{
    margin-bottom: 0;
}
.mark,mark{
    padding: 12px 24px;
    border-radius: 12px;
    -moz-border-radius: 12px;
    -webkit-border-radius: 12px;
    background-color: #ffffff;
}

/* USABLE */
.showsmall-inline,
.showsmall{
    display: none;
}
.kontak{
    color: #fff;
}

.ps-block--deal-hot {
    padding: 13px 30px 30px;
    border: 2px solid #000;
  }
  
  .ps-block--deal-hot .ps-block__header {
    padding: 10px 0;
    margin-bottom: 30px;
    border-bottom: 1px solid #e4e4e4;
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-flow: row nowrap;
    -webkit-box-pack: justify;
            justify-content: space-between;
  }
  
  .ps-block--deal-hot .ps-block__header h3 {
    display: inline-block;
    line-height: 1;
    font-size: 20px;
    font-weight: 600;
  }
  
  .ps-block--deal-hot .ps-block__navigation a {
    position: relative;
    display: inline-block;
    margin-right: 15px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1px solid #ccc;
    vertical-align: top;
  }
  
  .ps-block--deal-hot .ps-block__navigation a i {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-size: 8px;
  }
  
  .ps-block--deal-hot .ps-block__navigation a:last-child {
    margin-right: 0;
  }
  
  .ps-block--deal-hot .ps-block__navigation a:hover {
    border-color: #000;
  }
  
  .ps-block--deal-hot .ps-block__navigation a:hover i {
    color: #000;
  }
  
  .ps-block--deal-hot .ps-product--hot-deal {
    margin-bottom: 0;
  }
  
  .ps-deal-of-day .ps-product:hover{
    background-color: #e3e3e3;
  }
  
  .ps-block--deal-hot .ps-product--detail .ps-product__thumbnail .ps-product__badge {
    width: 80px;
  }
  
  .ps-block--deal-hot .ps-product--detail .ps-product__thumbnail .ps-product__badge span {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  
  @media (max-width: 479px) {
    .ps-block--deal-hot {
      padding: 20px;
    }
    .ps-block__left{
        margin-left: 0px;
    }
  }
  .ps-block--countdown-deal {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-flow: row nowrap;
  }
  
  .ps-block--countdown-deal .ps-block__left h3 {
    margin-bottom: 0;
    font-size: 32px;
    font-weight: 500;
    margin-right: 70px;
    font-family: "poppins-black";
  }
  
  .ps-block--countdown-deal figure {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    background-color: #ee4d2d;
    padding: 3px 20px;
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    border-radius: 10px;
    line-height: 1;
    margin-bottom: 50px;
  }
  
  .ps-block--countdown-deal figure figcaption {
    color: #ffffff;
    font-weight: 600;
    margin-right: 20px;
  }
  
  .ps-block--countdown-deal .ps-countdown li {
    display: inline-block;
    margin-top: 12px;
  }
  
  .ps-block--countdown-deal .ps-countdown li span {
    font-weight: 600;
  }
  
  .ps-block--countdown-deal .ps-countdown li:after {
    content: ':';
  }
  
  .ps-block--countdown-deal .ps-countdown li:last-child:after {
    display: none;
  }
  
  @media (max-width: 479px) {
    .ps-block--countdown-deal {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
              flex-flow: row wrap;
    }
    .ps-block--countdown-deal .ps-block__left {
      margin-bottom: 10px;
    }
    .ps-block--countdown-deal .ps-block__left h3 {
      margin-right: 0;
    }
  }
  .ps-deal-of-day .ps-section__header {
    margin-bottom: 25px;
    padding-bottom: 10px;
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-flow: row nowrap;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
            align-items: center;
    border-bottom: 3px solid #ee4d2d;
    
  }
  
  .ps-deal-of-day .ps-section__header > a {
    display: inline-block;
    padding-bottom: 2px;
    color: #ee4d2d;
    border-bottom: 3px solid #ee4d2d;
    min-width: 60px;
  }
  
  .ps-deal-of-day .ps-section__header > a:hover {
    color: #000;
    border-color: #000;
  }
 .time {
    position: relative;
    font-size: 1rem; /* Gunakan satuan relatif */
    color: #ffffff;
    animation: drop 1.5s ease;
    background: linear-gradient(135deg, #ff3c3c, #ffa534);
    font-family: "poppins-bold", sans-serif;
    border-radius: 10px;
    padding: 0.6em 1.2em;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
    margin: 20px auto;
    width: fit-content;
    max-width: 90vw; /* Hindari kepanjangan di layar kecil */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: default;
    text-align: center;
}

/* Hover efek tetap */
.time:hover {
    transform: scale(1.05);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.4);
}

/* Tambahan: Responsive font untuk layar kecil */
@media (max-width: 500px) {
    .time {
        font-size: 0.875rem;
        padding: 0.5em 1em;
    }
}


/* Optional animation */
@keyframes drop {
    0% {
        opacity: 0;
        transform: translateY(-20px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

    
  /* Tombol Download Aplikasi Stylish */
.btn-download {
    display: flex;
    align-items: center;
    padding: 12px 18px;
    border-radius: 12px;
    color: white;
    font-size: 14px;
    text-align: left;
    line-height: 1.2;
    width: 100%;
    max-width: 260px;
    text-decoration: none;
    transition: all 0.3s ease;
    margin-bottom: 16px;
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.1);
    cursor: pointer;
}

.btn-download i {
    font-size: 30px;
    margin-right: 14px;
    flex-shrink: 0;
}

.btn-download span small {
    font-size: 11px;
    display: block;
    opacity: 0.9;
    letter-spacing: 0.3px;
}

.btn-download span strong {
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.5px;
}

/* Google Play */
.btn-download.play-store {
    background-color: #1A73E8;
    border: 1px solid #1A73E8;
}

.btn-download.play-store:hover {
    background: linear-gradient(135deg, #1A73E8, #0F59C9);
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 8px 18px rgba(26, 115, 232, 0.3);
    color: #fff;
}

/* App Store */
.btn-download.app-store {
    background-color: #000000;
    border: 1px solid #000000;
}

.btn-download.app-store:hover {
    background: linear-gradient(135deg, #000000, #2C2C2C);
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.3);
    color: #fff;
}

@media (min-width: 768px) {
    .sidebar-kategori {
        position: sticky;
        top: 80px; /* Sesuaikan dengan header */
        height: calc(100vh - 100px); /* Tinggi viewport dikurangi header/footer */
        overflow-y: auto;
        padding-right: 10px; /* untuk scrollbar */
        scrollbar-width: thin; /* Firefox */
        scrollbar-color: #ccc transparent;
    }

    /* Tambahan untuk scrollbar di Chrome */
    .sidebar-kategori::-webkit-scrollbar {
        width: 6px;
    }

    .sidebar-kategori::-webkit-scrollbar-thumb {
        background-color: #ccc;
        border-radius: 4px;
    }

    .sidebar-kategori::-webkit-scrollbar-track {
        background: transparent;
    }
}

