@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#08090c;--panel:#111318;--panel2:#171a21;--line:#292d37;--text:#f5f6fa;--muted:#9ca3b1;--gold:#f5c84b;--gold2:#ffdf7d;--green:#73e0b0;--red:#ff7373;--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 70% -15%,#29220e 0,transparent 34%),var(--bg);color:var(--text);font-family:'DM Sans',system-ui,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}.navbar{max-width:1240px;margin:auto;padding:22px 24px;display:flex;align-items:center;gap:30px;border-bottom:1px solid #ffffff0d}.brand{font:700 21px 'Space Grotesk',sans-serif;letter-spacing:-1px;white-space:nowrap}.brand span{color:var(--gold)}.navbar nav{display:flex;gap:22px;margin-left:auto;color:var(--muted);font-size:13px}.navbar nav a:hover,footer a:hover{color:var(--gold)}.cart-button{border:1px solid #4b4224;border-radius:999px;background:#19170f;color:var(--gold2);padding:10px 16px;font-weight:700;font-size:12px}.cart-button span{background:var(--gold);color:#111;border-radius:50%;display:inline-grid;place-items:center;min-width:21px;height:21px;margin-left:5px}.hero{max-width:1192px;margin:auto;padding:82px 24px 74px;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:44px;min-height:460px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.4px;color:var(--gold);margin:0 0 12px}.hero h1{font:700 clamp(48px,7vw,86px)/.97 'Space Grotesk',sans-serif;letter-spacing:-4px;margin:0}.hero h1 span,.section h2 span{color:var(--gold)}.hero-desc{color:#b7bbc5;max-width:590px;font-size:16px;margin:25px 0}.primary-button,.secondary-button{display:inline-flex;justify-content:center;align-items:center;gap:12px;border:0;border-radius:10px;background:var(--gold);color:#15130b;padding:14px 19px;font-weight:800;font-size:12px;letter-spacing:.4px}.primary-button:hover{background:var(--gold2)}.hero-note{font-size:10px;letter-spacing:1.5px;color:#777e8d;margin-top:24px}.hero-panel{min-height:280px;border:1px solid #4a4025;border-radius:26px;background:linear-gradient(145deg,#211d11,#12141a 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;box-shadow:0 20px 70px #0008}.orb{width:112px;height:112px;border:1px solid #f5c84b77;border-radius:30px;transform:rotate(-7deg);display:grid;place-items:center;background:radial-gradient(circle,#f5c84b3b,#f5c84b05 70%);font:700 46px 'Space Grotesk';color:var(--gold);text-shadow:0 0 25px #f5c84b55}.hero-panel p{font-weight:700;letter-spacing:2px;margin:25px 0 4px}.hero-panel strong{font-size:12px}.hero-panel span{font-size:9px;letter-spacing:1.3px;color:var(--muted);margin-top:8px}.section{max-width:1192px;margin:auto;padding:48px 24px 70px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.section h2{font:700 clamp(30px,4vw,44px)/1.1 'Space Grotesk';letter-spacing:-1.5px;margin:0 0 10px}.muted{color:var(--muted)}.section-heading .muted{margin:8px 0 0;font-size:13px}.product-total{color:var(--gold);font-size:11px;letter-spacing:1.5px;font-weight:800;white-space:nowrap;padding-bottom:5px}.filters{display:grid;gap:16px;margin:24px 0 18px}.filter-group{display:grid;gap:8px}.filter-group-label{color:#737b8a;font-size:9px;font-weight:800;letter-spacing:2px}.filter-buttons{display:flex;gap:8px;flex-wrap:wrap}.filter{border:1px solid var(--line);border-radius:999px;background:#111318;color:#aeb4c0;padding:9px 13px;font-size:10px;font-weight:700;letter-spacing:.3px}.filter:hover{border-color:#7a6734;color:#fff}.filter.active{background:var(--gold);color:#15130b;border-color:var(--gold)}.search-row{display:flex;gap:12px;align-items:center;margin:22px 0;color:var(--muted);font-size:12px}.search-row input{width:min(100%,440px);background:#101217;border:1px solid var(--line);border-radius:10px;padding:13px 15px;color:var(--text);outline:none}.search-row input:focus,input:focus,textarea:focus{border-color:var(--gold)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.product-card{background:linear-gradient(160deg,#14171e,#0f1116);border:1px solid #272b34;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .18s,border-color .18s}.product-card:hover{transform:translateY(-3px);border-color:#66572c}.product-art{height:110px;background:radial-gradient(circle at 50% 110%,#5a4820 0,transparent 58%),linear-gradient(130deg,#1c2028,#111319);position:relative;display:grid;place-items:center;border-bottom:1px solid #272b34}.product-number{position:absolute;left:12px;top:10px;font-size:8px;font-weight:800;letter-spacing:1px;color:#9ea5b4;max-width:75%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-symbol{font:700 36px 'Space Grotesk';color:var(--gold);text-shadow:0 0 22px #f5c84b2b}.best-label{position:absolute;right:8px;top:8px;background:var(--gold);color:#15130b;font-size:8px;font-weight:900;padding:4px 6px;border-radius:4px}.best-seller{border-color:#7a6633}.product-content{padding:15px;display:flex;flex-direction:column;flex:1}.product-category{font-size:9px;color:var(--gold);letter-spacing:1.1px;font-weight:800}.product-content h3{font:600 16px/1.3 'Space Grotesk';margin:8px 0 6px;overflow-wrap:anywhere}.product-desc{color:var(--muted);font-size:11px;line-height:1.55;margin:0 0 18px;flex:1;overflow-wrap:anywhere}.product-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}.product-price{font-size:14px;font-weight:800;white-space:nowrap}.add-button{border:1px solid #65562d;background:#211d11;color:var(--gold2);border-radius:8px;padding:9px 11px;font-size:10px;font-weight:800;white-space:nowrap}.add-button:hover{background:#3a3019}.empty{padding:35px 0}.how-to{border-top:1px solid #ffffff0b}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:27px}.steps article{border:1px solid var(--line);border-radius:15px;background:#101217;padding:22px}.steps b{font:700 25px 'Space Grotesk';color:var(--gold)}.steps h3{margin:12px 0 7px;font:600 17px 'Space Grotesk'}.steps p,.community-desc{color:var(--muted);font-size:13px;margin:0}.community{border:1px solid #3e3520;border-radius:20px;margin-bottom:60px;background:linear-gradient(120deg,#17150f,#101217);padding:35px!important}.community-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.community-button{border:1px solid #5d4e28;background:#242013;border-radius:9px;padding:12px 15px;font-size:10px;font-weight:800;color:var(--gold2)}.community-button.secondary,.secondary-button{background:transparent;border:1px solid var(--line);color:var(--text)}footer{border-top:1px solid #ffffff10;max-width:1192px;margin:auto;padding:28px 24px 38px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}footer p{font-size:10px;color:#7d8492;margin:0}footer p:last-child{margin-left:auto}footer p a{color:#b7bdc8}.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:10;background:#000b;display:flex;align-items:flex-start;justify-content:center;padding:24px 12px;overflow:auto}.modal-box{width:min(100%,560px);background:#101218;border:1px solid #343946;border-radius:20px;padding:23px;box-shadow:0 25px 90px #000b}.modal-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.modal-heading h2{font:700 27px 'Space Grotesk';margin:0}.close-button{background:#222630;border:1px solid #383e49;border-radius:8px;color:white;width:36px;height:36px}.cart-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.cart-item strong{display:block;font-size:13px}.cart-item small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.cart-actions{display:flex;align-items:center;gap:7px}.cart-actions button{border:1px solid #383e49;background:#1c2029;color:white;border-radius:6px;min-width:25px;height:26px}.cart-actions span{font-size:12px}.total-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #393e48;margin:15px 0;padding-top:15px}.total-row strong{font-size:21px;color:var(--gold)}form label{display:block;font-size:11px;font-weight:700;color:#cdd1db;margin:14px 0 6px}form input,form textarea,form select{display:block;width:100%;border:1px solid #333946;border-radius:9px;background:#0b0d11;color:var(--text);padding:12px 13px;outline:none;font-size:13px}form textarea{resize:vertical}.form-note{font-size:10px;color:var(--muted);line-height:1.55}.full-button{width:100%;margin-top:17px}.button-link{display:flex;text-align:center;margin-top:12px}.order-summary{border:1px solid var(--line);border-radius:12px;padding:15px;display:grid;gap:5px;margin:18px 0}.order-summary small{font-size:10px;color:var(--muted);margin-top:7px}.order-summary strong{overflow-wrap:anywhere}.order-summary .order-total{font-size:25px;color:var(--gold)}.qris-wrap{text-align:center;margin:20px 0}.qris-wrap img{display:block;width:100%;max-width:310px;margin:0 auto 12px;background:white;border-radius:12px;padding:8px}.qris-wrap p{color:var(--muted);font-size:12px}.error{color:var(--red)}.page-wrap{max-width:800px;margin:50px auto;padding:0 20px}.panel{background:#11141a;border:1px solid var(--line);border-radius:18px;padding:25px;margin:18px 0}.panel h1,.panel h2{font-family:'Space Grotesk';margin-top:0}.panel .primary-button{margin-top:16px}.result-card{padding:15px;border:1px solid var(--line);border-radius:12px;margin-top:15px}.status-pill{display:inline-block;background:#28251a;color:var(--gold);padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800}.result-line{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:10px 0;font-size:13px}.result-line span:first-child{color:var(--muted)}.admin-order{border:1px solid var(--line);border-radius:13px;padding:16px;margin:13px 0;background:#0e1015}.admin-order-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.admin-order select{max-width:230px}.admin-order img{max-width:100%;border-radius:8px;margin-top:10px}.small-button{padding:9px 11px;border-radius:7px;background:#211d11;border:1px solid #65562d;color:var(--gold);font-weight:700;font-size:11px;margin-top:10px}
@media(max-width:1000px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.navbar nav{gap:12px}}@media(max-width:700px){.navbar{padding:16px;gap:12px;flex-wrap:wrap}.navbar nav{order:3;width:100%;margin:0;justify-content:space-between}.brand{font-size:19px}.cart-button{margin-left:auto;padding:9px 11px}.hero{padding:55px 18px 45px;grid-template-columns:1fr;gap:28px}.hero h1{letter-spacing:-2.5px}.hero-panel{min-height:220px}.section{padding:35px 16px 48px}.section-heading{align-items:start}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-art{height:90px}.product-content{padding:11px}.product-content h3{font-size:14px}.product-price{font-size:12px}.add-button{padding:8px}.filter{font-size:9px;padding:8px 10px}.steps{grid-template-columns:1fr}.community{margin:0 16px 40px!important;padding:24px!important}.modal{padding:10px}.modal-box{padding:17px}.cart-item{align-items:flex-start}.cart-actions{gap:4px}footer{padding:24px 16px;gap:14px}footer p:last-child{margin-left:0;width:100%}.page-wrap{margin:25px auto}.panel{padding:18px}}@media(max-width:360px){.product-grid{grid-template-columns:1fr}.product-art{height:100px}}


/* Playlist VIA ID — displayed beneath the MUSIC ROBLOX packages */
.playlist-section{grid-column:1/-1;margin-top:30px;padding:clamp(18px,3vw,32px);border:1px solid #343434;border-radius:18px;background:linear-gradient(145deg,#141414,#090909);color:#f6f6f6}
.playlist-heading{margin-bottom:20px}.playlist-heading h2{font-size:clamp(1.6rem,4vw,2.4rem);margin:5px 0 8px;letter-spacing:-.04em}.playlist-heading h2 span{color:#f2d34f}.playlist-heading .muted{margin:0}
.playlist-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;margin:18px 0;border:1px solid #393939;border-radius:12px;background:#101010}.playlist-summary strong{color:#f2d34f;letter-spacing:.08em}.playlist-summary span,.genre-count{font-size:.85rem;color:#aaa}
.playlist-genres{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.playlist-genre{align-self:start;border:1px solid #333;border-radius:12px;background:#0d0d0d;overflow:hidden}.playlist-genre summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 15px;cursor:pointer;list-style:none;font-weight:750}.playlist-genre summary::-webkit-details-marker{display:none}.playlist-genre summary::after{content:'+';color:#f2d34f;font-size:1.15rem;margin-left:6px}.playlist-genre[open] summary::after{content:'−'}.playlist-genre summary span:first-child{color:#fff}.playlist-genre ol{margin:0;padding:0 16px 16px 42px;color:#d2d2d2;line-height:1.7}.playlist-genre li{padding:2px 0;overflow-wrap:anywhere}.playlist-genre li::marker{color:#bda535}
.playlist-info{margin-top:22px;padding:18px;border-radius:12px;background:#151515;border:1px solid #303030}.playlist-info h3{margin:0 0 10px;font-size:1.05rem}.playlist-info ul{margin:0;padding-left:20px;color:#ccc;line-height:1.8}.playlist-info strong{color:#f2d34f}.playlist-note{margin:18px 0;color:#c7c7c7;line-height:1.6}.playlist-note strong{color:#f2d34f}.playlist-preview{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 17px;border-radius:10px;background:#f2d34f;color:#101010;font-weight:850;text-decoration:none;letter-spacing:.03em}.playlist-preview:hover{background:#ffe779}
@media(max-width:680px){.playlist-genres{grid-template-columns:1fr}.playlist-section{padding:17px}.playlist-summary{align-items:flex-start;flex-direction:column;gap:5px}}

/* Kategori MOBILE LEGENDS: WDP dan Diamond ditampilkan terpisah tanpa teks kecil pada kartu. */
.catalog-subsection{grid-column:1/-1;min-width:0}
.catalog-subsection-title{font:700 22px/1.2 'Space Grotesk',sans-serif;letter-spacing:.4px;color:var(--gold);margin:8px 0 15px;padding-bottom:10px;border-bottom:1px solid #4b4224}
.subsection-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px}
.mlbb-card .product-number,.mlbb-card .product-category,.mlbb-card .product-desc{display:none}
.mlbb-card .product-content h3{margin-top:0;margin-bottom:16px}
@media(max-width:1000px){.subsection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.subsection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-subsection-title{font-size:18px}}
@media(max-width:360px){.subsection-grid{grid-template-columns:1fr}}

/* Kategori MAGIC CHESS: Weekly Card dan Diamond terpisah, tanpa teks kecil. */
.magic-chess-card .product-number,.magic-chess-card .product-category,.magic-chess-card .product-desc{display:none}
.magic-chess-card .product-content h3{margin-top:0;margin-bottom:16px}


/* Kategori FREE FIRE: Memberships, Level Up Pass, BP Card, dan Diamond terpisah tanpa teks kecil. */
.free-fire-card .product-number,.free-fire-card .product-category,.free-fire-card .product-desc{display:none}
.free-fire-card .product-content h3{margin-top:0;margin-bottom:16px}


/* Kategori PUBG MOBILE: sembunyikan seluruh teks kecil pada kartu produk. */
.pubg-mobile-card .product-number,.pubg-mobile-card .product-category,.pubg-mobile-card .product-desc{display:none}
.pubg-mobile-card .product-content h3{margin-top:0;margin-bottom:16px}

.honor-of-kings-card .product-number,.honor-of-kings-card .product-category,.honor-of-kings-card .product-desc{display:none}
.honor-of-kings-card .product-content h3{margin-top:0}


/* Kategori POINT BLANK: sembunyikan seluruh teks kecil pada kartu produk. */
.point-blank-card .product-number,.point-blank-card .product-category,.point-blank-card .product-desc{display:none}
.point-blank-card .product-content h3{margin-top:0;margin-bottom:16px}


/* Kategori CALL OF DUTY, VALORANT, LEAGUE OF LEGENDS, BLOOD STRIKE, dan RAINBOW SIX MOBILE: sembunyikan semua teks kecil pada kartu produk. */
.call-of-duty-card .product-number,.call-of-duty-card .product-category,.call-of-duty-card .product-desc,
.valorant-card .product-number,.valorant-card .product-category,.valorant-card .product-desc,
.league-of-legends-card .product-number,.league-of-legends-card .product-category,.league-of-legends-card .product-desc,
.blood-strike-card .product-number,.blood-strike-card .product-category,.blood-strike-card .product-desc,
.rainbow-six-mobile-card .product-number,.rainbow-six-mobile-card .product-category,.rainbow-six-mobile-card .product-desc{display:none}
.call-of-duty-card .product-content h3,.valorant-card .product-content h3,.league-of-legends-card .product-content h3,.blood-strike-card .product-content h3,.rainbow-six-mobile-card .product-content h3{margin-top:0;margin-bottom:16px}

/* Setup Server Discord: hilangkan teks kecil selain deskripsi request yang dipertahankan. */
.setup-server-card .product-number,.setup-server-card .product-category{display:none}
.setup-server-card .product-desc{margin-top:8px}


/* Kategori REKBER: tampilkan nominal transaksi dan harga fee tanpa teks kecil, lalu ketentuan di bawah produk. */
.rekber-card .product-category,.rekber-card .product-desc{display:none}
.rekber-card .product-content h3{margin-top:0;margin-bottom:16px}
.rekber-products{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.rekber-terms{grid-column:1/-1;margin-top:12px;padding:22px 24px;border:1px solid #4b4224;border-radius:16px;background:linear-gradient(145deg,#17150f,#101217)}
.rekber-terms h3{margin:0 0 12px;color:var(--gold);font:700 20px/1.2 'Space Grotesk',sans-serif;letter-spacing:.5px}
.rekber-terms ul{margin:0;padding-left:21px;color:var(--text);line-height:1.8}
.rekber-terms li{padding:2px 0}
@media(max-width:1000px){.rekber-products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.rekber-products{grid-template-columns:repeat(2,minmax(0,1fr))}.rekber-terms{padding:18px}}
@media(max-width:360px){.rekber-products{grid-template-columns:1fr}}



/* Dashboard statistik admin */
.admin-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 18px 0;
}

.admin-stats .panel {
  min-width: 0;
  margin: 0;
}

.admin-stats h2 {
  overflow-wrap: anywhere;
  font-size: clamp(18px, 4vw, 26px);
}

#dashboard > section,
#dashboard > .panel {
  margin-top: 22px;
}

#dashboard [hidden] {
  display: none !important;
}

@media (min-width: 700px) {
  .admin-stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Chaelora Store — verified buyer reviews */
.reviews-section {
  border-top: 1px solid rgba(255,255,255,.1);
}

.review-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: 16px;
  margin: 28px 0;
}

.verified-review,
.review-form-panel {
  background: #111;
  border: 1px solid #292929;
  border-radius: 14px;
  padding: 20px;
  min-width: 0;
}

.review-stars {
  color: #ffd34f;
  letter-spacing: 3px;
  font-size: 20px;
}

.review-comment {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  line-height: 1.7;
}

.review-meta {
  color: #aaa;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.verified-label {
  display: inline-block;
  margin-top: 8px;
  color: #9ee6ad;
  font-size: 12px;
}

.review-form-panel {
  max-width: 680px;
  margin: 30px auto 0;
}

.review-form-panel h3 {
  margin-top: 0;
}

#reviewForm {
  display: grid;
  gap: 10px;
}

#reviewForm input,
#reviewForm select,
#reviewForm textarea {
  box-sizing: border-box;
  width: 100%;
  padding: 12px;
  border: 1px solid #363636;
  border-radius: 8px;
  background: #080808;
  color: #fff;
  font: inherit;
}

#reviewForm textarea {
  resize: vertical;
}

#reviewForm button:disabled {
  opacity: .6;
  cursor: wait;
}
