/* [t1235] Halaman beli tampilan PPOB (e-wallet, pulsa/data, tagihan).
   Hanya dimuat kalau kategori game dipilih di admin Tampilan Beranda > Halaman beli PPOB.
   Struktur form & JS order tetap milik Games/index.php; file ini cuma mengatur tampilan. */

.kwbuy-ppob { padding-bottom: 96px; }
/* bar atas ala mockup menggantikan navbar situs (navbar tetap di DOM, disembunyikan) */
.kwbuy-ppob .navbar,
.kwbuy-ppob .blur-top-center { display: none !important; }
.kwbuy-ppob > section { padding-top: 0; }
.kwp-top { position: sticky; top: 0; z-index: 1020; display: flex; align-items: center; gap: 6px; padding: 10px 12px; background: color-mix(in srgb, var(--light-grey) 94%, transparent); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.kwp-ttl { flex: 1; min-width: 0; text-align: center; font-size: 16px; font-weight: 700; color: var(--black); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
[data-theme="dark"] .kwp-ttl { color: var(--white); }
.kwp-ic { width: 38px; height: 38px; flex: 0 0 38px; display: grid; place-items: center; border-radius: 12px; border: 1px solid var(--dark-grey); background: var(--white); color: var(--black); font-size: 17px; text-decoration: none; cursor: pointer; }
[data-theme="dark"] .kwp-ic { background: var(--bg-body); border-color: hsla(0, 0%, 100%, .12); color: var(--white); }
.kwp-ic:hover { color: var(--yellow-primary); }
.kwbuy-ppob .kwp-head { margin-top: 2px; }

/* kepala produk ringkas */
.kwp-head { display: flex; align-items: center; gap: 12px; background: var(--white); border-radius: 16px; padding: 14px; margin: 12px 0; box-shadow: 0 1px 2px rgba(16, 24, 40, .05), 0 8px 24px -16px rgba(16, 24, 40, .25); }
[data-theme="dark"] .kwp-head { background: var(--bg-body); border: 1px solid hsla(0, 0%, 100%, .12); box-shadow: none; }
.kwp-logo { width: 56px; height: 56px; border-radius: 14px; object-fit: cover; background: #fff; flex: 0 0 auto; }
.kwp-info { min-width: 0; }
.kwp-name { margin: 0; font-size: 18px; font-weight: 700; line-height: 1.25; color: var(--black); }
[data-theme="dark"] .kwp-name { color: var(--white); }
.kwp-bdg { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 6px; }
.kwp-bdg span { display: inline-flex; align-items: center; gap: 5px; height: 20px; gap: 4px; padding: 0 8px 0 6px; border-radius: 999px; background: color-mix(in srgb, var(--yellow-primary) 12%, transparent); color: var(--yellow-primary); font-size: 10px; font-weight: 600; white-space: nowrap; }
.kwp-bdg i { font-size: 11px; }

/* kartu langkah */
.kwbuy-ppob .containerNominal { margin-top: 0 !important; padding: 0 !important; }
.kwbuy-ppob .containerNominal .reverse { flex-direction: column; }
.kwbuy-ppob .cards-product { border-radius: 16px; padding: 14px !important; margin-bottom: 12px !important; }
.kwbuy-ppob .accordion > .cards { border-radius: 16px; margin-bottom: 12px !important; }
.kwbuy-ppob .title-card { display: flex; align-items: center; gap: 8px; text-align: left !important; font-size: 15px; font-weight: 700; margin-bottom: 12px !important; }
.kwp-n { width: 22px; height: 22px; border-radius: 50%; flex: 0 0 auto; display: grid; place-items: center; background: color-mix(in srgb, var(--yellow-primary) 14%, transparent); color: var(--yellow-primary); font-size: 12px; font-weight: 700; }
.kwbuy-ppob #section-target { gap: 0 !important; }

/* nominal: kartu kecil 3 kolom (2 kolom kalau nama produk panjang, lihat JS) */
.kwbuy-ppob .cards-product .row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0; }
.kwbuy-ppob .cards-product .row.kwp-2col { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.kwbuy-ppob .cards-product .row > * { width: auto; max-width: none; padding: 0; margin: 0; }
.kwbuy-ppob .cards-product .row > .desc,
.kwbuy-ppob .cards-product .row > .col-12,
.kwbuy-ppob .cards-product .row > .kwp-filt,
.kwbuy-ppob .cards-product .row > .kwp-more { grid-column: 1 / -1; }
.kwbuy-ppob .cards-product .row > .desc { margin: 4px 0 0 !important; font-size: 12px; font-weight: 600; color: var(--black-text); }
.kwbuy-ppob .cards-product .row > [class*="col-"].kwp-hide { display: none; }
.kwbuy-ppob .containerChoice { margin: 0 !important; padding: 10px !important; border-radius: 12px; border: 1.5px solid var(--dark-grey) !important; background: var(--white) !important; backdrop-filter: none; gap: 0; transition: border-color .12s, background .12s; }
[data-theme="dark"] .kwbuy-ppob .containerChoice { border-color: hsla(0, 0%, 100%, .12) !important; background: var(--light-blue) !important; }
.kwbuy-ppob .nom-radio:checked ~ .containerChoice { border-color: var(--yellow-primary) !important; background: color-mix(in srgb, var(--yellow-primary) 10%, var(--white)) !important; }
[data-theme="dark"] .kwbuy-ppob .nom-radio:checked ~ .containerChoice { background: color-mix(in srgb, var(--yellow-primary) 18%, transparent) !important; }
.kwbuy-ppob .nom-radio:checked ~ .containerChoice::after { content: "\F26E"; font-family: bootstrap-icons; position: absolute; top: 6px; right: 8px; font-size: 15px; color: var(--yellow-primary); }

/* filter rentang harga + lihat semua (dibuat JS kalau produk > 12) */
.kwp-filt { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin: 0 0 4px !important; padding-bottom: 2px !important; }
.kwp-filt::-webkit-scrollbar { display: none; }
.kwp-filt button { flex: 0 0 auto; height: 30px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--dark-grey); background: var(--white); font-size: 12px; font-weight: 600; color: var(--black-text); cursor: pointer; }
[data-theme="dark"] .kwp-filt button { background: transparent; border-color: hsla(0, 0%, 100%, .15); color: #c3cad8; }
.kwp-filt button[aria-pressed="true"] { background: var(--black); border-color: var(--black); color: var(--white); }
[data-theme="dark"] .kwp-filt button[aria-pressed="true"] { background: var(--white); border-color: var(--white); color: #0e1221; }
.kwp-more { width: 100%; height: 38px; margin-top: 4px !important; border-radius: 10px; border: 1px dashed var(--dark-grey); background: transparent; font-size: 12.5px; font-weight: 600; color: var(--black-text); cursor: pointer; }
[data-theme="dark"] .kwp-more { border-color: hsla(0, 0%, 100%, .18); color: #c3cad8; }

/* pembayaran: judul kiri, logo kanan, satu baris */

/* tombol konfirmasi lama diganti bar bayar menempel */
.kwbuy-ppob #btn-confirm { display: none !important; }

/* tentang produk (deskripsi dari admin) */
.kwp-about { border-radius: 16px; background: var(--white); padding: 14px; margin-bottom: 12px; font-size: 13px; color: var(--black-text); }
[data-theme="dark"] .kwp-about { background: var(--bg-body); border: 1px solid hsla(0, 0%, 100%, .12); }
.kwp-about .kiosweb-description { display: inline; color: var(--black-text) !important; font-size: 13px; line-height: 1.6; }
[data-theme="dark"] .kwp-about .kiosweb-description { color: #c3cad8 !important; }
.kwp-about h2 { font-size: 14px; font-weight: 700; color: var(--black); margin: 0 0 6px; }
[data-theme="dark"] .kwp-about h2 { color: var(--white); }

/* bar bayar menempel di bawah */
.kwp-pay { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1030; max-width: 480px; margin: 0 auto; background: var(--white); border-top: 1px solid var(--dark-grey); box-shadow: 0 -8px 24px -12px rgba(16, 24, 40, .25); padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px)); }
[data-theme="dark"] .kwp-pay { background: #141a2a; border-top-color: hsla(0, 0%, 100%, .1); }
.kwp-pay-sum { display: flex; align-items: center; gap: 10px; }
.kwp-what { flex: 1; min-width: 0; }
.kwp-what small { display: block; font-size: 11.5px; color: var(--black-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.kwp-what b { font-size: 18px; font-weight: 800; letter-spacing: -.3px; color: var(--black); }
[data-theme="dark"] .kwp-what b { color: var(--white); }
.kwp-btn { height: 48px; padding: 0 24px; border-radius: 12px; border: 0; background: var(--yellow-primary); color: #fff; font-size: 15px; font-weight: 700; cursor: pointer; white-space: nowrap; }
.kwp-btn[aria-disabled="true"] { background: var(--dark-grey); color: var(--black-text); }
[data-theme="dark"] .kwp-btn[aria-disabled="true"] { background: hsla(0, 0%, 100%, .1); color: #8b95a8; }
.kwp-need { display: none; margin-top: 6px; font-size: 11.5px; color: #d97706; }
.kwp-need.show { display: block; }
.kwp-shake { animation: kwpsh .35s; }
@keyframes kwpsh { 0%, 100% { transform: none; } 25% { transform: translateX(-5px); } 75% { transform: translateX(5px); } }

/* konfirmasi jadi lembar dari bawah */
.kwbuy-ppob #modal-confirm .modal-dialog { position: fixed; left: 0; right: 0; bottom: 0; margin: 0 auto !important; width: 100%; max-width: 480px !important; min-height: 0; display: block; transform: translateY(100%); transition: transform .25s ease; }
.kwbuy-ppob #modal-confirm.show .modal-dialog { transform: none; }
.kwbuy-ppob #modal-confirm .modal-content { border-radius: 20px 20px 0 0; border: 0; padding: 22px 18px calc(16px + env(safe-area-inset-bottom, 0px)) !important; position: relative; }
.kwbuy-ppob #modal-confirm .modal-content::before { content: ""; position: absolute; top: 8px; left: 50%; width: 40px; height: 4px; margin-left: -20px; border-radius: 4px; background: var(--dark-grey); }
[data-theme="dark"] .kwbuy-ppob #modal-confirm .modal-content { background: #141a2a; }
.kwbuy-ppob #modal-confirm .modal-content > .row { margin: 0; }
.kwbuy-ppob #modal-confirm .modal-content > .row > [class*="col-"] { padding: 0; }
.kwbuy-ppob #modal-confirm .ticketDetail { padding: 0 !important; }
.kwbuy-ppob #modal-confirm .ticketDetail .head { font-size: 16px; font-weight: 700; text-align: left !important; margin: 4px 0 14px; color: var(--black); }
.kwbuy-ppob #modal-confirm .ticketDetail .containers { gap: 16px; margin-bottom: 0; padding: 10px 0; border-bottom: 1px solid var(--dark-grey); }
.kwbuy-ppob #modal-confirm .ticketDetail .containers:last-of-type { border-bottom: 0; }
.kwbuy-ppob #modal-confirm .ticketDetail .containers .title { flex: 0 0 auto; font-size: 13px; color: var(--black-text); }
.kwbuy-ppob #modal-confirm .ticketDetail .containers .desc { min-width: 0; font-size: 13.5px; font-weight: 700; color: var(--black); word-break: break-word; }
.kwbuy-ppob #modal-confirm .ticketDetail .containers .desc.txt-primary { font-size: 17px; font-weight: 800; color: var(--yellow-primary); }
[data-theme="dark"] .kwbuy-ppob #modal-confirm .ticketDetail .head,
[data-theme="dark"] .kwbuy-ppob #modal-confirm .ticketDetail .containers .desc { color: var(--white); }
[data-theme="dark"] .kwbuy-ppob #modal-confirm .ticketDetail .containers .desc.txt-primary { color: var(--yellow-primary); }
[data-theme="dark"] .kwbuy-ppob #modal-confirm .ticketDetail .containers .title { color: #8b95a8; }
[data-theme="dark"] .kwbuy-ppob #modal-confirm .ticketDetail .containers { border-bottom-color: hsla(0, 0%, 100%, .1); }
.kwbuy-ppob #modal-confirm #btn-order-process { height: 48px; border-radius: 12px; font-size: 15px; font-weight: 700; margin-top: 16px !important; }
.kwbuy-ppob #modal-confirm .btnGrey { height: 44px; border-radius: 12px; background: transparent; color: var(--black-text); font-weight: 600; }

@media (prefers-reduced-motion: reduce) {
    .kwbuy-ppob .containerChoice, .kwbuy-ppob #modal-confirm .modal-dialog { transition: none; }
    .kwp-shake { animation: none; }
}

/* kode promo: kartu putih seperti langkah lain (bukan bar biru) */

/* jangkar scroll ke pembayaran (setelah pilih produk): 80px di atas judul */
.kwp-anchor { display: block; height: 0; position: relative; top: -80px; pointer-events: none; }

/* mode gelap: judul grup pembayaran & tombol Cancel */
[data-theme="dark"] .kwbuy-ppob #modal-confirm .btnGrey,
.kwbuy-ppob #modal-confirm .btnGrey { border: 0; box-shadow: none; }
[data-theme="dark"] .kwbuy-ppob #modal-confirm .btnGrey { color: #c3cad8; background: transparent; }

/* ukuran kolom pembayaran, email, dan nomor disesuaikan (tidak kebesaran) */

/* ukuran logo DIKUNCI: kotak tetap, gambar dimuat utuh di dalamnya (tidak ada yang lebih besar/kecil dari kotaknya) */
.kwp-logo { width: 56px !important; height: 56px !important; object-fit: cover; }

/* grup pembayaran abu-abu seperti game (disetujui customer); kartu produk & kode promo tetap putih */
.kwbuy-ppob .accordionHeadPay { background: var(--dark-grey) !important; border: 0 !important; }
.kwbuy-ppob .accordionHeadPay .title,
.kwbuy-ppob .accordionHeadPay i { color: var(--dark-blue) !important; }
.kwbuy-ppob .accordionBodyPay { background: var(--white); }
.kwbuy-ppob .choicePay { background: var(--light-grey) !important; border: 2px solid var(--light-grey) !important; }
.kwbuy-ppob .pay-radio:checked ~ .choicePay { border-color: var(--yellow-primary) !important; }
[data-theme="dark"] .kwbuy-ppob .accordionHeadPay { background: hsla(0, 0%, 100%, .1) !important; }
[data-theme="dark"] .kwbuy-ppob .accordionHeadPay .title,
[data-theme="dark"] .kwbuy-ppob .accordionHeadPay i { color: var(--white) !important; }
[data-theme="dark"] .kwbuy-ppob .accordionBodyPay { background: transparent; }
[data-theme="dark"] .kwbuy-ppob .choicePay { background: hsla(0, 0%, 100%, .06) !important; border-color: hsla(0, 0%, 100%, .06) !important; }
[data-theme="dark"] .kwbuy-ppob .pay-radio:checked ~ .choicePay { border-color: var(--yellow-primary) !important; }


/* kolom kode promo, pembayaran, dan email: ukuran MENGIKUTI halaman game (input 16px / 55px supaya iPhone tidak zoom saat fokus) */
.kwbuy-ppob .accordionHead { background: var(--yellow-primary) !important; border: 0 !important; border-radius: 15px; padding: 12px 24px; }
.kwbuy-ppob .accordionHead.is-open { border-radius: 15px 15px 0 0; }
.kwbuy-ppob .accordionHead .containers .title { color: var(--white) !important; font-size: 16px; font-weight: 500; }
.kwbuy-ppob .accordionHead i { color: var(--white) !important; }
.kwbuy-ppob input, .kwbuy-ppob select, .kwbuy-ppob textarea { font-size: 16px; }
.kwbuy-ppob .accordionHeadPay .containers img { box-sizing: border-box; width: 50px !important; min-width: 50px; max-width: 50px !important; height: 17px !important; min-height: 17px; max-height: 17px !important; object-fit: contain; object-position: left center; }
.kwbuy-ppob .choicePay > img { box-sizing: border-box; width: 60px !important; min-width: 60px; max-width: 60px !important; height: 26px !important; min-height: 26px; max-height: 26px !important; object-fit: contain; object-position: right center; }


/* kartu produk: bentuk & isi MENGIKUTI halaman game (tengah: nama, logo, label poin, tombol harga), tetap 3 kolom; warna putih */
.kwbuy-ppob .containerChoice .text > img:not(.kw-pointbadge__img),
.kwbuy-ppob .containerChoice .text > img.kwp-fallback { box-sizing: border-box; display: block; width: 60px !important; min-width: 60px; max-width: 60px !important; height: 34px !important; min-height: 34px; max-height: 34px !important; object-fit: contain; object-position: center; margin: 8px auto 6px !important; border-radius: 0; background: transparent; }
.kwbuy-ppob .containerChoice.kw-off-card .text > img:not(.kw-pointbadge__img) { height: 28px !important; min-height: 28px; max-height: 28px !important; margin: 6px auto 4px !important; }
.kwbuy-ppob .containerChoice .text .btnProduk { font-size: 10.5px; }
.kwbuy-ppob .nom-radio:checked ~ .containerChoice::after { top: 5px; right: 6px; font-size: 14px; }

/* catatan PERINGATAN di bawah kolom nomor: ada jarak, kotak abu, tulisan lebih kecil */
.kwbuy-ppob #section-target .note { margin-top: 12px; padding: 10px 12px; border-radius: 10px; background: var(--light-grey); font-size: 11.5px; line-height: 1.55; color: #4a5468; }
[data-theme="dark"] .kwbuy-ppob #section-target .note { background: hsla(0, 0%, 100%, .06); color: #c3cad8; }
.kwbuy-ppob #section-target .kw-target-error { margin-top: 8px; }

/* warna kartu produk = halaman game (permintaan customer, terakhir) */
.kwbuy-ppob .containerChoice { background: linear-gradient(180deg, #a0d8e4 0%, #cee2e6 50%, #ebfbff 100%) !important; border: 1px solid var(--yellow-primary) !important; }
.kwbuy-ppob .nom-radio:checked ~ .containerChoice { background: linear-gradient(180deg, #a0d8e4 0%, #cee2e6 50%, #ebfbff 100%) !important; border-color: var(--yellow-primary) !important; box-shadow: inset 0 0 0 1px var(--yellow-primary); }
.kwbuy-ppob .nom-radio:checked ~ .containerChoice::after { color: #00657d; }
[data-theme="dark"] .kwbuy-ppob .containerChoice { background: var(--light-blue) !important; border: 1px solid hsla(0, 0%, 100%, .12) !important; }
[data-theme="dark"] .kwbuy-ppob .nom-radio:checked ~ .containerChoice { background: color-mix(in srgb, var(--yellow-primary) 20%, transparent) !important; border-color: var(--yellow-primary) !important; box-shadow: inset 0 0 0 1px var(--yellow-primary); }
[data-theme="dark"] .kwbuy-ppob .nom-radio:checked ~ .containerChoice::after { color: var(--yellow-primary); }

/* mode gelap: kolom pembayaran dibuat terang supaya logo bank terlihat */
[data-theme="dark"] .kwbuy-ppob .accordionHeadPay { background: #e5e9f2 !important; }
[data-theme="dark"] .kwbuy-ppob .accordionHeadPay .title,
[data-theme="dark"] .kwbuy-ppob .accordionHeadPay i { color: #0e1221 !important; }
/* [t1245] mode gelap: isi grup yang dibuka tetap gelap, tiap pilihan jadi kartu terang (contoh dari customer) */
[data-theme="dark"] .kwbuy-ppob .accordionBodyPay { background: var(--light-blue); border: 1px solid hsla(0, 0%, 100%, .12); border-top: 0; }
[data-theme="dark"] .kwbuy-ppob .accordionBodyPay .accordionContent { margin: 1.4rem .4rem 1.6rem; }
[data-theme="dark"] .kwbuy-ppob .choicePay { background: #f6f8fd !important; border-color: #f6f8fd !important; border-radius: 14px; box-shadow: 0 6px 14px rgba(0, 0, 0, .35); }
[data-theme="dark"] .kwbuy-ppob .choicePay .containers .text .name { color: #0e1221; }
[data-theme="dark"] .kwbuy-ppob .choicePay .containers .text .price { color: #00657d; }
[data-theme="dark"] .kwbuy-ppob .choicePay .containers .icon { background: #e5e9f2; }
[data-theme="dark"] .kwbuy-ppob .pay-radio:checked ~ .choicePay { border-color: var(--yellow-primary) !important; }

/* tab kategori (Pulsa / Paket Data / Masa Aktif): persegi membulat, tebal; beda bentuk dengan chip filter harga */
.kwbuy-ppob .kw-prodtabs { gap: 8px; margin-bottom: 14px; }
.kwbuy-ppob .kw-prodtab { border-radius: 10px; height: 40px; padding: 0 16px; font-size: 13.5px; font-weight: 700; background: #fff; color: #0e1221; border: 1px solid color-mix(in srgb, var(--yellow-primary) 45%, transparent); }
.kwbuy-ppob .kw-prodtab.active { background: var(--yellow-primary); border-color: var(--yellow-primary); color: #fff; }
[data-theme="dark"] .kwbuy-ppob .kw-prodtab { background: #fff; color: #0e1221; }
[data-theme="dark"] .kwbuy-ppob .kw-prodtab.active { background: var(--yellow-primary); color: #fff; }

/* chip filter harga: pil kecil, tipis, beda dari tab di atasnya */
.kwbuy-ppob .kwp-filt { gap: 6px; margin: 0 0 6px !important; }
.kwbuy-ppob .kwp-filt button { height: 26px; padding: 0 11px; font-size: 11px; font-weight: 500; background: transparent; }
.kwbuy-ppob .kwp-filt button[aria-pressed="true"] { font-weight: 600; }
.kwbuy-ppob .kwp-filt button[aria-pressed="true"] { background: var(--black); border-color: var(--black); color: var(--white); }
[data-theme="dark"] .kwbuy-ppob .kwp-filt button[aria-pressed="true"] { background: var(--white); border-color: var(--white); color: #0e1221; }


/* tab kategori sedikit lebih kecil + jarak ke chip filter harga lebih renggang */
.kwbuy-ppob .kw-prodtabs { margin-bottom: 20px; gap: 7px; }
.kwbuy-ppob .kw-prodtab { height: 34px; padding: 0 13px; font-size: 12.5px; border-radius: 9px; }
.kwbuy-ppob .kwp-filt { margin-bottom: 8px !important; }

/* semua kartu produk seragam: selalu 3 kolom, nama 1 baris (terlalu panjang dipotong ...), isi rata tengah */
.kwbuy-ppob .cards-product .row.kwp-2col,
.kwbuy-ppob .cards-product .row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.kwbuy-ppob .containerChoice .text { width: 100%; min-width: 0; }
.kwbuy-ppob .containerChoice .text > .desc:first-child { display: block !important; width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: center !important; -webkit-line-clamp: unset; -webkit-box-orient: initial; padding: 0 2px; }

/* kartu diskon dipadatkan supaya tingginya mendekati kartu biasa (strike + poin + harga lebih rapat) */
.kwbuy-ppob .containerChoice.kw-off-card .text > img:not(.kw-pointbadge__img) { height: 22px !important; min-height: 22px; max-height: 22px !important; margin: 4px auto 2px !important; }
.kwbuy-ppob .containerChoice.kw-off-card .kw-priceoff { margin: 0 0 2px !important; font-size: 10px; line-height: 1.2; gap: 4px; }
.kwbuy-ppob .containerChoice.kw-off-card .kw-priceoff-old { font-size: 10px; }
.kwbuy-ppob .containerChoice.kw-off-card .kw-priceoff-badge { font-size: 9px; padding: 1px 5px; line-height: 1.3; }
.kwbuy-ppob .containerChoice.kw-off-card .text .kw-nombottom { gap: 3px; }
.kwbuy-ppob .containerChoice.kw-off-card .kw-pointbadge { padding: 2px 6px; }

/* beberapa kolom tujuan (User ID + Zone ID, UID + Server): satu baris, kolom pertama lebih lebar, label jadi placeholder */
.kwbuy-ppob .kwp-targets { display: flex; gap: 10px; align-items: flex-start; }
.kwbuy-ppob .kwp-targets > .floating-label-content { flex: 1 1 0; min-width: 0; margin-bottom: 0; }
.kwbuy-ppob .kwp-multi > .floating-label-content:first-child { flex: 3 1 0; }
.kwbuy-ppob .kwp-multi > .floating-label-content:not(:first-child) { flex: 2 1 0; }
/* [t1246] label di atas kolom data akun (User ID, Zone ID, Nomor, dll) disembunyikan di semua halaman beli; placeholder tetap jadi petunjuk */
.kwbuy-ppob .kwp-targets .label-content { display: none; }
.kwbuy-ppob .kwp-multi .floating-input, .kwbuy-ppob .kwp-multi .floating-select { width: 100%; text-overflow: ellipsis; }
.kwbuy-ppob .kwp-multi .kw-target-error { font-size: 11px; }


/* jarak: judul "Pilih Nominal" -> tab kategori -> kartu produk lebih renggang */
.kwbuy-ppob .cards-product > .title-card { margin-bottom: 18px !important; }
.kwbuy-ppob .kw-prodtabs { margin-bottom: 22px; }
.kwbuy-ppob .cards-product .row > .kw-prodtabs { margin-bottom: 14px !important; }

/* [t1247] blok Ulasan ikut tampil di halaman beli PPOB: beri jarak dari kartu Perlu bantuan */
.kwbuy-ppob .kiosrating-container { margin-top: 16px; }


/* [t1235] kotak persetujuan S&K (khusus e-wallet) */
.kwbuy-ppob .kwp-setuju { display: flex; align-items: flex-start; gap: 10px; margin: 12px 0 0; padding: 12px; border-radius: 12px; border: 1.5px solid var(--dark-grey); background: var(--white); cursor: pointer; font-size: 12.5px; line-height: 1.5; color: var(--black); transition: border-color .15s, background .15s; }
.kwbuy-ppob .kwp-setuju[hidden] { display: none !important; }
.kwbuy-ppob .kwp-setuju input { flex: 0 0 auto; width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--yellow-primary); cursor: pointer; }
.kwbuy-ppob .kwp-setuju a { color: var(--yellow-primary); font-weight: 600; text-decoration: underline; }
.kwbuy-ppob .kwp-setuju.kwp-setuju-ok { border-color: var(--yellow-primary); background: color-mix(in srgb, var(--yellow-primary) 8%, var(--white)); }
.kwbuy-ppob .kwp-setuju.kwp-setuju-err { border-color: #dc3545; background: color-mix(in srgb, #dc3545 6%, var(--white)); }
[data-theme="dark"] .kwbuy-ppob .kwp-setuju { background: hsla(0, 0%, 100%, .05); border-color: hsla(0, 0%, 100%, .14); color: #e5e7eb; }
[data-theme="dark"] .kwbuy-ppob .kwp-setuju.kwp-setuju-ok { border-color: var(--yellow-primary); background: color-mix(in srgb, var(--yellow-primary) 14%, transparent); }
[data-theme="dark"] .kwbuy-ppob .kwp-setuju.kwp-setuju-err { border-color: #f87171; background: rgba(220, 53, 69, .12); }

/* judul di samping kotak centang, keterangan di bawahnya */
.kwbuy-ppob .kwp-setuju-teks { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.kwbuy-ppob .kwp-setuju-judul { font-size: 14px; font-weight: 700; line-height: 1.35; color: var(--black); }
.kwbuy-ppob .kwp-setuju-desc { font-size: 11.5px; line-height: 1.5; color: var(--black-text); }
.kwbuy-ppob .kwp-setuju { align-items: flex-start; }
.kwbuy-ppob .kwp-setuju input { margin-top: 1px; }
[data-theme="dark"] .kwbuy-ppob .kwp-setuju-judul { color: #fff; }
[data-theme="dark"] .kwbuy-ppob .kwp-setuju-desc { color: #c3cad8; }
