/* ==============================================
   ZONA ASUPAN69 - PRODUCTION STYLESHEET
   Optimized for Performance & Compatibility
   ============================================== */

/* CSS Variables */
:root{
--clr-primary:#9069e9;
--clr-accent:#00ffff;
--clr-text:#f9f9f9;
--clr-bg-dark:#070710;
--clr-card-bg:#111;
--clr-white:#fff;
--clr-success:#20c997;
--clr-error:#e74c3c;
--spacing-xs:.25rem;
--spacing-sm:.5rem;
--spacing-md:1rem;
--spacing-lg:1.5rem;
--radius-sm:8px;
--radius-md:12px;
--radius-lg:15px;
--transition-fast:.2s ease;
--transition-base:.3s ease;
--shadow-md:0 3px 9px rgba(0,0,0,.9);
--shadow-lg:0 8px 24px rgba(144,105,233,.4);
--z-modal:2000;
--z-overlay:1001;
--z-sidebar:1002;
--z-header:1000;
--z-float:999;
}

/* Reset */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth}
body{font-family:'Oswald',sans-serif;color:var(--clr-text);line-height:1.6;overflow-x:hidden;min-height:100vh;background:#000 url('https://ik.imagekit.io/Mediadigtalstore/d6a8a62b-f59b-4fc9-a8e7-a90b057cb0f7%20(1).webp') center/cover fixed;background-blend-mode:multiply;background-color:rgba(0,0,0,.69)}
img{max-width:100%;height:auto;display:block}
button{font-family:Oswald;cursor:pointer;border:none;background:none}
a{color:inherit;text-decoration:none}

/* Animations */
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes pulse{0%,100%{opacity:.6}50%{opacity:1}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes rainbow{0%{border-color:#ff006e;box-shadow:0 0 9px #ff006e}33%{border-color:#00ffff;box-shadow:0 0 9px #00ffff}66%{border-color:#9069e9;box-shadow:0 0 9px #9069e9}100%{border-color:#ff006e;box-shadow:0 0 9px #ff006e}}
@keyframes flash{0%,100%{opacity:1}50%{opacity:.3}}

/* Utilities */
.glass{background:linear-gradient(to bottom,rgba(255,255,255,.09),rgba(255,255,255,.012));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s linear infinite}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Header */
 
.header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 9px;
  gap: 9px;
  background: linear-gradient(to bottom, #090909, #121212);
  backdrop-filter: blur(10px);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  z-index: var(--z-header);
  
}





/* SEARCH & CATEGORY */
.search-filter-container {
  display: flex;
  gap: 10px;
  max-width: 1200px;
  margin: 18px auto;
  padding: 0 9px;
  align-items: center;
}

.search-wrapper {
  position: relative;
  flex: 1;
  min-width: 0;
}

.search-input {
  width: 100%;
  padding: 9px 39px 9px 15px;
  border-radius: 24px;
  font-size: 12px;
  color: white;
  transition: all 0.2s ease;
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.3);

  /* --- Efek Border Pelangi --- */
  border: 1px solid transparent;
  background-image: 
    /* Layer 1: Warna latar dalam input (Gelap) */
    linear-gradient(rgba(18, 18, 26, 0.9), rgba(18, 18, 26, 0.9)), 
   
    linear-gradient(90deg, 
      #9933cc, 
      #9369db, 
      #da69d3, 
      #00f9ff, 
      #9069e9, 
      magenta  
    );
  
  /* Penting agar gradasi hanya muncul di border */
  background-origin: border-box;
  background-clip: padding-box, border-box;
}

/* Efek saat input di-klik (Focus) agar lebih 'menyala' */
.search-input:focus {
  outline: none;
  box-shadow: 0 0 15px rgba(0, 249, 255, 0.3);
  transform: translateY(-1px);
}


.search-input:focus {
  outline: none;
  border-color: #00f9ff;
  transform: translateY(-1px);
 
  background: rgba(18, 18, 26, 0.96);
}

.search-input::placeholder {
  color: rgba(255, 255, 255, 0.6);
}

.search-btn {
  position: absolute;
  right: 9px;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  cursor: pointer;
  transition: all 0.2s var(--ease);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
}

.search-btn:hover {
  transform: translateY(-50%) scale(1.1);
}

/* Pembungkus utama */
.category-select-wrapper {
  position: relative;
  flex-shrink: 0;
  min-width: 118px;
  max-width: 169px;
  
  /* --- Trik Border Pelangi --- */
  padding: 1px;
  border-radius: 24px;
  background: linear-gradient(90deg, #9933cc, #9369db, #da69d3, #00f9ff, #9069e9, magenta);
  display: flex;
  align-items: center;
}

/* Styling untuk select di dalamnya */
.category-select {
  width: 100%;
  padding: 9px 12px;
  border-radius: 21px; 
  border: none; 
  background: transparent; /* Warna background dalam */
  color: white;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  outline: none;
}


.category-select-wrapper::after {
  content: '▼';
  font-size: 12px;
  color: #f9f9f9;
  position: absolute;
  right: 3px;
  pointer-events: none;
}




.category-dropdown-btn {
  display: flex;
  align-items: center;
  gap: 3px;
  padding: 9px 12px;
  border-radius: 20px;
  border: 1px solid rgba(144, 105, 233, 0.3);
  background: rgba(0, 0, 0, 0.9);
  color: white;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
  width: 100%;
  justify-content: space-between;
  height: 100%;
}

.category-dropdown-btn:hover {
  border-color: var(--neon-purple);
  transform: translateY(-1px);
}

.category-dropdown-btn .dropdown-icon {
  font-size: 9px;
  transition: transform 0.3s ease;
}

.category-dropdown-btn[aria-expanded="true"] .dropdown-icon {
  transform: rotate(180deg);
}

.category-dropdown-menu {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  min-width: 100%;
  background: linear-gradient(145deg, rgba(15, 15, 20, 0.98), rgba(10, 10, 15, 0.98));
  border: 1px solid rgba(144, 105, 233, 0.3);
  border-radius: 12px;
  padding: 3px;
  display: none;
  flex-direction: column;
  gap: 3px;
  z-index: 10;
  box-shadow: var(--shadow-md);
}

.category-dropdown-menu.show {
  display: flex;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.category-item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 9px 12px;
  background: transparent;
  border: none;
  border-radius: var(--radius-sm);
  color: var(--text-light);
  font-size: 9px;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
  transition: all 0.3s var(--ease);
  position: relative;
}

.category-item:hover {
  background: rgba(144, 105, 233, 0.3);
  transform: translateX(3px);
}

.category-item.active {
  background: linear-gradient(90deg, rgba(144, 105, 233, 0.3), rgba(144, 105, 233, 0.15));
  color: var(--neon-purle);
}

.category-item.active::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 69%;
  background: var(--neon-cyan);
  border-radius: 3px;
}

.category-item svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.category-item span {
  flex: 1;
}
/* Garis Pelangi di Bawah Header */
.header::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px; /* Tebal garis */
  background: linear-gradient(369deg, #00f3ff, #9069e9, #ec3899);
}

.header__menu-btn{color:var(--clr-text);font-size:1.75rem;padding:.5rem;transition:transform var(--transition-base)}
.header__menu-btn:hover{transform:rotate(90deg)}
.header__brand{display:flex;align-items:center;gap:.69rem;flex:1}
.header__logo{width:42px;height:42px;border-radius:50%}
.header__title {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  margin: 0;
  text-align: center;

  /* --- Efek Teks Pelangi --- */
  background: linear-gradient(90deg, 
    #70e1f5, 
    #9069e9, 
    #da69d3 
  
  );
  
  /* Memotong background agar hanya muncul di dalam teks */
  -webkit-background-clip: text;
  background-clip: text;
  
  /* Membuat warna teks asli menjadi transparan agar gradasi terlihat */
  color: transparent;

  /* Shadow disesuaikan: Menggunakan drop-shadow agar tidak menutupi gradasi */
  filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.9));
}

.header__subtitle{font-size:.6rem;color:#f9f9f9;font-weight:400;margin-top:1px}
.header__cart-btn{position:relative;color:var(--clr-text);font-size:1.5rem;padding:.3rem;transition:transform var(--transition-base)}
.header__cart-btn:hover{transform:scale(1.1)}
.cart-badge{position:absolute;top:-5px;right:-5px;background:linear-gradient(180deg,#ff006e,#ff1393);color:#fff;border-radius:50%;width:20px;height:20px;display:none;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;border:1px solid #000}
.cart-badge--visible{display:flex}

/* Sidebar */
.sidebar{width:280px;height:100vh;background:linear-gradient(to bottom,rgba(0,0,0,.95),rgba(17,17,17,.9));backdrop-filter:blur(15px);position:fixed;top:0;left:0;display:flex;flex-direction:column;padding:1.5rem 0;z-index:var(--z-sidebar);transition:transform var(--transition-base);overflow-y:auto;border-right:1px solid rgba(144,105,233,.3);transform:translateX(-100%)}
.sidebar::-webkit-scrollbar{width:1px}
.sidebar::-webkit-scrollbar-track{background:rgba(0,0,0,.3)}
.sidebar::-webkit-scrollbar-thumb{background:var(--clr-primary);border-radius:10px}
.sidebar--open{transform:translateX(0)}
.sidebar__close {
  position: absolute;
  top: 10px; 
  left: 10px;


  border-radius: 9px;
  background: linear-gradient(90deg, rgba(144, 105, 233, 0.25), rgba(144, 105, 233, 0.15));
  border: 1px solid rgba(144, 105, 233, 0.3);
  color: #f9f9f9;
  font-size: 0.69rem;
  font-weight: 700;
  padding: .5rem 1rem;

  transition: all var(--transition-base);
 
  cursor: pointer;
  z-index: 10;
  margin: 0;
}

.sidebar__close:hover {
  background: var(--clr-primary);
  transform: scale(1.05);
}
.sidebar__logo-container{padding:0 1.5rem 1rem;border-bottom:1px solid var(--clr-primary);text-align:center; padding-top: 39px;}
.sidebar__logo{height:120px;width:auto;max-width:100%;object-fit:contain;margin:0 auto}
.sidebar__cart-btn{padding:0 1.5rem;margin:1rem 0; }
.sidebar__cart-btn .btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.625rem;position:relative;}
.sidebar__nav{padding:1rem;flex:1; }
.nav-section{margin-bottom:1.5rem; }
.nav-section__title{font-size:.875rem;font-weight:600;color:var(--clr-accent);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}
.nav-section__link {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: .875rem 1rem;
  margin-bottom: .25rem;
  border-radius: var(--radius-sm);
  font-weight: 500;
  transition: all var(--transition-base);
  position: relative;
  overflow: hidden;

border: none;



  
  border-bottom: 1.2px solid; /* Tentukan ketebalan */
  border-image-source: linear-gradient(90deg, 
    #9933cc, 
    #9369db, 
    #da69d3, 
    #00f9ff, 
    #9069e9, 
    magenta
  );
  border-image-slice: 1; /* Penting agar gradasi muncul di border */
}

.nav-section__link::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(144, 105, 233, .3), transparent);
  transition: left .5s ease;
}

.nav-section__link:hover::before {
  left: 100%;
}

.nav-section__link:hover,.nav-section__link--active{background:linear-gradient(to bottom,rgba(144,105,233,.6),rgba(0,0,0,.9));color:var(--clr-white);transform:translateX(5px)}
.nav-section__icon{width:28px;height:28px;object-fit:contain;flex-shrink:0}
.sidebar__footer{text-align:center;margin-top:auto;padding:1rem;font-size:.875rem;color:var(--clr-text);opacity:.9;border-top:1px solid rgba(144,105,233,.3)}
.sidebar-overlay{position:fixed;inset:0;background:rgba(0,0,0,.92);opacity:0;visibility:hidden;transition:all var(--transition-base);z-index:var(--z-overlay);backdrop-filter:blur(9px)}
.sidebar-overlay--visible{opacity:1;visibility:visible}

/* Main */
.main{padding-top:69px;animation:fadeIn 0.3s ease;min-height:100vh}

/* Banner */

.banner {
  display: block;
  margin: 12px 9px;
  border-radius: var(--radius-md);
  position: relative;
  overflow: hidden;
  padding: 1.8px;
  

  background: conic-gradient(
    from 0deg,
    #9933cc, 
    #9369db, 
    #00f9ff, 
    magenta, 
    #9069e9, 
    #9933cc 
  );
  
  /* Animasi pemutaran */
  animation: rotateRainbow 9s linear infinite;
  transition: transform var(--transition-base);
  cursor: pointer;
  z-index: 1;
}

.banner::before {
  content: "";
  position: absolute;
  inset: 1px; 
  border-radius: calc(var(--radius-md) - 1px);
  z-index: -1;
}

.banner:hover {
  transform: scale(1.02);
}

.banner__image {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
  /* Pastikan gambar mengikuti radius */
  border-radius: calc(var(--radius-md) - 1px);
}

/* Logic Animasi Putar */
@keyframes rotateRainbow {
  from {
    background: conic-gradient(from 0deg, #9933cc, #9369db, #00f9ff, magenta, #9069e9, #9933cc);
  }
  to {
    /* Menggunakan filter hue-rotate jauh lebih ringan daripada mengganti gradien */
    filter: hue-rotate(360deg);
  }
}

/* Jika ingin putaran fisik yang lebih nyata, gunakan variabel CSS */
@property --angle {
  syntax: '<angle>';
  initial-value: 0deg;
  inherits: false;
}

.banner {
  background: conic-gradient(from var(--angle), #9933cc, #9369db, #00f9ff, magenta, #9069e9, #9933cc);
  animation: spin 3s linear infinite;
}

@keyframes spin {
  to { --angle: 360deg; }
}

/* Flash Sale */
.flashsale-page {
  padding: 9px;
  background: transparent;
  border-radius: 9px;
  margin: 9px 0;
}

.flashsale-page .d-flex {
  display: flex;
  align-items: center;
}

.pil-produk {
  /* Hilangkan border solid lama */
  border: 1px solid transparent; 
  border-radius: 12px;
  

  background-image: 
    linear-gradient(90deg, #121212, #090909), 
    linear-gradient(90deg, #9933cc, #9369db, #da69d3, #00f9ff, #9069e9, magenta);
  
  /* Atur agar background pelangi hanya muncul di area border */
  background-origin: border-box;
  background-clip: padding-box, border-box;



  

  width: 81%;
  position: relative;
  padding: 6px;
  cursor: pointer;
  transition: all .3s ease;
  display: flex;
  align-items: flex-start;
  gap: 9px;
  flex-shrink: 0;
  min-width: 39px;
}

.pil-produk:hover {
  transform: translateY(-3px);
  /* Tambahkan sedikit glow pelangi saat hover agar lebih hidup */
  box-shadow: 0 4px 15px rgba(144, 105, 233, 0.3), 0 1px #00f9ff;
}

.product69-image-container{flex-shrink:0;width:69px;height:69px}
.pil-produk img{width:100%;height:100%;object-fit:cover;border-radius:9px;box-shadow:0 3px 9px rgba(0,0,0,.2);border:1px solid #f9f9f9}
.product-subtitle{font-size:.69rem;color:#00f9ff;margin:3px 0 6px 0;line-height:1.2;font-weight:500;text-transform:uppercase;letter-spacing:.3px;opacity:.85}
.product-info69{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}
.product-info69 h3{font-size:.69rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;margin:0;font-weight:700;color:#fff;line-height:1.1}
.price-container{display:flex;align-items:center;gap:3px;flex-wrap:wrap;margin-bottom:auto}
.pil-produk p{font-size:12px;font-weight:800;margin:0;color:#f9f9f9}
.pil-produk s{font-size:12px;color:#999;margin:0;font-weight:500;opacity:.9}
.pil-produk .add-to-cart-btn{width:100%;padding:3px 9px;background:linear-gradient(180deg,#9069e9,#090909);color:#fff;border:none;box-shadow:0 1px #00f9ff;border-radius:6px;cursor:pointer;font-weight:700;font-size:15px;transition:all .3s ease;margin-top:auto}
.ribbon{font-size:.6rem;font-weight:700;color:#f9f9f9;--f:.3em;--r:.9em;position:absolute;right:3px;top:calc(-1*var(--f));padding:.3em;border:solid #ff1293;border-width:0 0 var(--r) calc(2*var(--f));background:radial-gradient(69% 100% at bottom,#ff006e 99%,#ff1293 102%) 0 0/calc(2*var(--f)) var(--f) no-repeat border-box;background-color:#ff1293;border-radius:var(--f) var(--f) 0 0;clip-path:polygon(0 0,100% 0,100% 100%,calc(50% + var(--f)) calc(100% - var(--r)),calc(2*var(--f)) 100%,calc(2*var(--f)) var(--f),0 var(--f))}
.add-to-cart-btn{padding:3px 9px;background:linear-gradient(90deg,#9069e9,#7f11e0);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:700;font-size:12px;transition:all .3s ease;white-space:nowrap;box-shadow:0 2px 10px rgba(144,105,233,.3)}
.add-to-cart-btn:hover{background:linear-gradient(90deg,#7f11e0,#6a0dad);transform:scale(1.05)}
#countdown{font-size:12px;font-weight:700;margin-bottom:9px}
#countdown span{display:inline-block;box-shadow:0 0 9px rgba(144,105,233,.3);padding:3px 9px;border-radius:6px;font-size:12px;margin-left:5px;font-weight:700;background:linear-gradient(180deg,#9069e9,#090909);color:#fff}
.scrollmenu2{background-color:transparent;overflow-x:auto;overflow-y:hidden;white-space:nowrap;padding:9px 6px;-webkit-overflow-scrolling:touch}
.scrollmenu2::-webkit-scrollbar{height:3px}
.scrollmenu2::-webkit-scrollbar-track{background:rgba(0,0,0,.3);border-radius:9px}
.scrollmenu2::-webkit-scrollbar-thumb{background:rgba(144,105,233,.9);border-radius:9px}
#product-container2{display:flex;flex-direction:row;gap:12px;padding:0 3px}

/* Products */
.products{padding:0 .3rem 1.2rem}
.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;animation:fadeIn .5s ease}
.product-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: var(--radius-md);
  transition: all .39s cubic-bezier(.4,0,.2,1);
  animation: slideUp .5s ease both;


  border: 1px solid transparent;
  background-image: 
  
    linear-gradient(#090909, #090909), 
    linear-gradient(90deg, 
      #9933cc, 
      #9369db, 
      #da69d3, 
      #00f9ff, 
      #9069e9, 
      magenta  
    );
  background-origin: border-box;
  background-clip: padding-box, border-box;
}


.product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--clr-accent)}
.product-card__image-wrapper{padding-top:100%;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(144,105,233,.1),rgba(0,255,255,.1))}
.product-card__discount-badge {
  position: absolute;
  top: 8px;
  right: 8px;
 
 background:linear-gradient(180deg,#9069e9,#7f11e0);
  color: #f9f9f9;
  font-size: 9px;
  font-weight: 699;
  padding: 3px 9px;
  border-radius: 6px;
  z-index: 10;
 box-shadow:0 5px 16px rgba(144,105,233,.3);
text-shadow:0 0 8px rgba(0,0,0,.9)
}
.product-card__image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.product-card:hover .product-card__image{transform:scale(1.1)}
.product-card__body{padding:.69rem;display:flex;flex-direction:column;flex:1}
.product-card__title{font-size:.936rem;font-weight:700;margin-bottom:.5rem;line-height:1.2;color:var(--clr-accent);text-shadow:0 0 10px rgba(0,255,255,.5)}
.product-card__description{font-size:9px;color:#d3d3d3;margin-bottom:9px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.product-card__price-row{display:flex;align-items:center;gap:.3rem;margin:.1rem 0;flex-wrap:wrap}
.product-card__price{font-size:1rem;font-weight:700;color:var(--clr-primary);text-shadow:0 0 8px rgba(0,0,0,.9)}
.product-card__original-price{font-size:.69rem;color:#999;text-decoration:line-through}
.product-card__meta{font-size:.69rem;color:var(--clr-text);margin:.3rem 0;display:flex;align-items:center;justify-content:center;gap:.69rem;flex-wrap:wrap}
.product-card__tag{font-size:.69rem;background:linear-gradient(180deg,#090909,#121212);color:#00f9ff;inline-flex;align-items:center;gap:3px}
.product-card__actions{display:flex;gap:.5rem;margin-top:auto}
.btn{flex:1;padding:.39rem .3rem;border-radius:var(--radius-sm);font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.3px;transition:all var(--transition-base);display:inline-flex;align-items:center;justify-content:center;gap:.396rem;border:none;cursor:pointer}
.btn--primary{background:linear-gradient(180deg,#9069e9,#090909);color:#fff;}
.btn--primary:hover{background:linear-gradient(180deg,#7f11e0,#6a0dad);transform:translateY(-2px);box-shadow:0 5px 16px rgba(144,105,233,.3)}
.btn--secondary{background:linear-gradient(90deg,#f3f6f9,#e0e7ef);color:#090909;}
.btn--secondary:hover{transform:translateY(-2px);}
.btn:active{transform:translateY(0)}
.btn:disabled{opacity:.5;cursor:not-allowed}

/* Modal */
.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.95);align-items:center;justify-content:center;z-index:var(--z-modal);padding:1rem;backdrop-filter:blur(10px);animation:fadeIn .3s ease}
.modal--open{display:flex}
.modal__content{background:#111;border:1px solid var(--clr-primary);border-radius:var(--radius-lg);max-width:700px;width:100%;max-height:90vh;overflow-y:auto;padding:1.5rem;position:relative;box-shadow:0 10px 40px rgba(144,105,233,.3);animation:slideUp .3s ease}
.modal__content::-webkit-scrollbar{width:8px;display:none}
.modal__close{position:absolute;left:1rem;top:.75rem;background:rgba(255,255,255,.1);color:#999;font-size:1.75rem;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);line-height:1;z-index:10;border:none}
.modal__close:hover{background:var(--clr-primary);color:#fff;transform:rotate(90deg)}
.modal__title{text-align:center;margin:0 0 1rem;font-size:1.5rem;color:var(--clr-accent);padding-top:2rem}
.modal__video{width:100%;max-width:560px;height:auto;max-height:50vh;border-radius:var(--radius-md);margin:1rem auto;display:block}
.modal__description{white-space:pre-wrap;color:#f9f9f9;font-size:.938rem;line-height:1.6;background:rgba(0,0,0,.4);padding:1rem;border-radius:var(--radius-md);margin:1rem 0}

/* Order Modal */
.order-details{padding:.69rem;margin-bottom:1.25rem}
.order-details__header{text-align:center;font-size:1.25rem;color:var(--clr-accent);margin-bottom:1rem;border-bottom:2px solid var(--clr-primary);padding-bottom:.75rem}
.order-details__list{background:linear-gradient(180deg,#090909,#121212);border-radius:var(--radius-sm);padding:.5rem}
.order-item{border-left:3px solid var(--clr-primary);padding:.75rem;margin-bottom:.625rem;border-radius:var(--radius-sm)}
.order-item__title{font-weight:600;color:var(--clr-accent);font-size:.938rem;margin-bottom:.375rem}
.order-item__price{font-size:.875rem;color:#999}
.order-item__price-value{color:var(--clr-primary);font-weight:600}
.order-summary{border-top:2px solid var(--clr-primary);padding-top:.75rem;margin-top:.75rem}
.order-summary__row{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.938rem}
.order-summary__label{display:flex;align-items:center;gap:.375rem}
.order-summary__value{color:var(--clr-accent);font-weight:700}
.form-group{margin-bottom:1rem}
.form-label{display:block;margin-bottom:.5rem;font-weight:600;font-size:.938rem}
.form-input,.form-select{width:100%;padding:.875rem;border-radius:var(--radius-md);background:rgba(34,34,34,.8);color:var(--clr-text);border:1px solid var(--clr-primary);font-size:1rem;transition:all var(--transition-base);font-family:inherit}
.form-input:focus,.form-select:focus{outline:none;border-color:var(--clr-accent);box-shadow:0 0 0 3px rgba(0,255,255,.3)}
.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23f9f9f9' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}
.payment-info-box{background:rgba(17,17,17,.8);backdrop-filter:blur(10px);padding:.75rem;margin-bottom:1rem;border-radius:var(--radius-sm);border:1px solid rgba(144,105,233,.3)}
.payment-info-container{display:flex;align-items:center;gap:.625rem;min-height:40px}
.payment-info-text{flex:1;margin:0;font-size:.938rem;color:var(--clr-text)}
.btn-copy{display:none;padding:.369rem .963rem;border-radius:var(--radius-sm);background:linear-gradient(180deg,#090909,#9069e9);color:#fff;font-weight:600;font-size:.699rem;transition:all var(--transition-base);white-space:nowrap;flex-shrink:0;border:1px solid rgba(144,105,233,.3);}
.btn-copy--visible{display:inline-flex;align-items:center;gap:.375rem}
.btn-copy:hover{background:linear-gradient(180deg,#9069e9,#7f11e0);transform:scale(1.05)}
.qris-container{display:none;margin-top:1rem;text-align:center}
.qris-container--visible{display:block}
.qris-title{margin:.5rem 0;font-weight:700;font-size:1.1rem;color:var(--clr-accent)}
.qris-image{max-width:100%;height:auto;border-radius:var(--radius-sm);border:3px solid var(--clr-primary);box-shadow:0 0 9px rgba(144,105,233,.3)}
.qris-note{margin-top:.75rem;font-size:.813rem;color:#ccc}
.preview-container{margin-top:.75rem;text-align:center;display:none}
.preview-container--visible{display:block}
.preview-image{max-width:100%;max-height:300px;border-radius:var(--radius-md);border:3px solid var(--clr-primary);box-shadow:0 0 9px rgba(144,105,233,.3)}
.terms-notice{margin-top:1rem;font-size:.69rem;color:#ccc;text-align:center;line-height:1.5}
.terms-link{color:#fff;font-weight:600}

/* Cart */
.cart-items{margin-bottom:1rem}
.cart-item{background:rgba(17,17,17,.8);border:1px solid var(--clr-primary);border-radius:var(--radius-md);padding:.75rem;margin-bottom:.75rem;display:flex;gap:.75rem;align-items:center;animation:slideUp .3s ease}
.cart-item__image{width:60px;height:60px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}
.cart-item__info{flex:1}
.cart-item__title{font-size:.938rem;font-weight:600;color:var(--clr-accent);margin-bottom:.375rem}
.cart-item__price{font-size:.875rem;color:var(--clr-primary);font-weight:600}
.cart-item__remove{background:rgba(231,76,60,.2);border:1px solid #e74c3c;color:#e74c3c;padding:.5rem .75rem;border-radius:var(--radius-sm);transition:all var(--transition-base);font-size:.875rem}
.cart-item__remove:hover{background:#e74c3c;color:#fff}
.cart-summary{background:rgba(17,17,17,.9);border:1px solid var(--clr-primary);border-radius:var(--radius-md);padding:1rem;margin-top:1rem}
.cart-total{display:flex;justify-content:space-between;font-size:1.25rem;font-weight:700;color:var(--clr-accent);margin-bottom:1rem}
.cart-empty{text-align:center;padding:2.5rem 1.25rem;color:#999}
.cart-empty__icon{font-size:3rem;margin-bottom:1rem;opacity:.5}
.cart-empty__text{font-size:1.1rem;margin-bottom:.625rem}
.cart-empty__subtext{font-size:.938rem;margin-bottom:1.25rem}

/* Float WA */


/* Toast */
.toast-container{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:10000;display:flex;flex-direction:column;gap:.625rem;align-items:center;pointer-events:none}
.toast{min-width:280px;max-width:90%;padding:1rem 1.25rem;border-radius:var(--radius-lg);color:#fff;font-weight:600;font-size:.938rem;text-align:center;transform:translateY(100px);opacity:0;transition:all .5s cubic-bezier(.25,.8,.25,1);display:flex;align-items:center;justify-content:center;gap:.75rem;box-shadow:var(--shadow-lg);pointer-events:auto}
.toast--show{transform:translateY(0);opacity:1}
.toast__icon{font-size:1.4rem;flex-shrink:0}
.toast--success{background:linear-gradient(90deg,#198754,#20c997)}
.toast--error{background:linear-gradient(90deg,#dc3545,#e74c3c)}
.toast--warning{background:linear-gradient(90deg,#ffc107,#fd7e14)}
.toast--info{background:linear-gradient(90deg,#0dcaf0,#17a2b8)}


@media (min-width:1024px){
.product-grid{grid-template-columns:repeat(4,1fr);gap:1.25rem}
}
@media (min-width:1440px){
.product-grid{grid-template-columns:repeat(5,1fr)}
}
:focus-visible{outline:2px solid var(--clr-accent);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
body.loading{overflow:hidden}
body.loading .product-grid{display:none}
body.loading::after {
  content: '';
  position: fixed;
  inset: 0;
  background: #000;
  z-index: 9999;
  animation: fadeOut 0.3s ease forwards;
  animation-delay: 0.3s;
}

@keyframes fadeOut {
  to { opacity: 0; visibility: hidden; }
}
#container-6b9858a2c40c376a05e4fcc5ee5a70ce {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}
#container-6b9858a2c40c376a05e4fcc5ee5a70ce > * {
    max-width: 100%;
    max-height: 100%;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(15px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.category-select-wrapper {
  position: relative;
}

.category-select {
display: flex;
  align-items: center;
  gap: 3px;
  padding: 9px 12px;
  border-radius: 20px;
  border: 1px solid rgba(144, 105, 233, 0.6);
  background: rgba(0, 0, 0, 0.9);
  color: white;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
  width: 100%;
  justify-content: space-between;
  height: 100%;
}

.category-select:focus {
  outline: none;
  border-color: var(--clr-accent);
  box-shadow: 0 0 0 3px rgba(0,255,255,0.3);
}

.category-select option {
  background: #1a1a1a;
  color: #f9f9f9;
  padding: 0.3rem;
}

