/* KAMAR PAY PREMIUM v1 — bahasa desain fintech hitam-emas untuk halaman pembayaran
   (Riwayat Pembayaran, Checkout, Perpanjang, Katalog). Hanya desain gelap; mode terang
   diturunkan otomatis oleh kamar-theme.css (inversi terkontrol). Kontras teks >= WCAG AA. */
:root{--pp-gold:#e8c777;--pp-gold-2:#f6e3a0;--pp-gold-d:#b98a2e;--pp-ink:#f7f1e3;--pp-mut:#bdb398;--pp-line:rgba(232,199,119,.2);--pp-line-2:rgba(232,199,119,.1);--pp-glass:linear-gradient(155deg,rgba(32,28,18,.86),rgba(12,11,8,.9));--pp-r:22px}

/* ---------- Banner peringatan (menggantikan gradient merah-oranye) ---------- */
html body .kp-warn{position:relative;overflow:hidden;display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:18px;color:var(--pp-ink);font-weight:700;line-height:1.5;background:linear-gradient(100deg,rgba(232,199,119,.14),rgba(232,199,119,.04) 55%,rgba(232,199,119,.1));border:1px solid rgba(232,199,119,.34);box-shadow:0 10px 30px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.06);animation:none}
html body .kp-warn::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,rgba(255,236,170,.14) 50%,transparent 70%);transform:translateX(-120%);animation:ppSheen 6s ease-in-out infinite;pointer-events:none}
html body .kp-warn strong{font-weight:900;color:var(--pp-gold-2)}
html body .kp-warn span:not(.kp-warn-ico){color:#e4dcc5;font-weight:600}
html body .kp-warn-ico{display:inline-grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:12px;font-size:17px;line-height:1;color:#1b1405;background:linear-gradient(135deg,var(--pp-gold-2),var(--pp-gold-d));box-shadow:0 0 0 4px rgba(232,199,119,.12);animation:none}
@keyframes ppSheen{0%,55%{transform:translateX(-120%)}100%{transform:translateX(120%)}}

/* ---------- Status chip ---------- */
html body .kp-chip{display:inline-flex;align-items:center;gap:8px;min-height:30px;padding:0 14px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:var(--pp-gold-2);background:rgba(232,199,119,.1);border:1px solid rgba(232,199,119,.4)}
html body .kp-chip::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 10px currentColor}
html body .kp-chip.kp-ok{color:#8ff0b8;background:rgba(40,150,95,.14);border-color:rgba(143,240,184,.4)}
html body .kp-chip.kp-bad{color:#ffb3b3;background:rgba(255,90,90,.1);border-color:rgba(255,150,150,.4)}
html body .kp-chip.kp-off{color:#cfc8b6;background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.18)}
html body .kp-chip.kp-warn{animation:none;box-shadow:none}
html body .kp-chip.kp-warn::before{animation:ppPulse 2s ease-in-out infinite}
@keyframes ppPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.7)}}

/* ---------- Daftar & kartu pesanan ---------- */
.pay-list{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.pay-card{position:relative;display:grid;gap:20px;padding:clamp(18px,2.4vw,28px);border-radius:var(--pp-r);color:var(--pp-ink);background:var(--pp-glass);border:1px solid var(--pp-line);box-shadow:0 18px 50px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.05);isolation:isolate;transition:border-color .3s ease,box-shadow .3s ease,transform .3s ease}
.pay-card::before{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;background:radial-gradient(520px 200px at 100% 0,rgba(232,199,119,.14),transparent 70%),radial-gradient(380px 160px at 0 100%,rgba(232,199,119,.05),transparent 70%)}
.pay-card::after{content:"";position:absolute;left:24px;right:24px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(246,227,160,.7),transparent)}
.pay-card:hover{border-color:rgba(232,199,119,.4);box-shadow:0 22px 60px rgba(0,0,0,.5),0 0 0 1px rgba(232,199,119,.08),0 0 38px rgba(232,199,119,.07)}
.pay-card.pay-st-pending{border-color:rgba(232,199,119,.42)}

.pay-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}
.pay-title{margin:0!important;font-size:clamp(18px,2vw,22px);font-weight:800;letter-spacing:-.01em;color:#fff6dc!important;line-height:1.25}
.pay-meta{display:flex;flex-wrap:wrap;gap:4px 0;margin:6px 0 0!important;font-size:12.5px;line-height:1.5!important;color:var(--pp-mut)!important;letter-spacing:.03em}
.pay-meta span{display:inline-flex;align-items:center}
.pay-meta span+span::before{content:"";width:3px;height:3px;border-radius:50%;margin:0 10px;background:var(--pp-gold-d)}
.pay-meta span:first-child{font-variant-numeric:tabular-nums;color:#d9cfb2}

/* Hero: total (kiri) + hitung mundur (kanan), tinggi & padding sama */
.pay-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;align-items:stretch}
.pay-total,.pay-cd{display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:112px;padding:18px 22px;border-radius:18px;background:rgba(255,255,255,.035);border:1px solid var(--pp-line-2)}
.pay-hero>.pay-total:only-child{grid-column:1/-1}
.pay-total{background:linear-gradient(135deg,rgba(232,199,119,.12),rgba(232,199,119,.03));border-color:rgba(232,199,119,.3)}
.pay-lab{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--pp-mut)}
.pay-lab svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pay-amt{font-size:clamp(28px,4.2vw,40px);line-height:1.05;font-weight:900;letter-spacing:-.02em;font-variant-numeric:tabular-nums;background:linear-gradient(180deg,#fff3c6,#e8c777 70%,#c99a38);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 18px rgba(232,199,119,.22))}
.pay-sub{font-size:12.5px;color:var(--pp-mut)}
.pay-cd-v{font-size:clamp(20px,2.6vw,26px);font-weight:800;color:var(--pp-ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.pay-bar{display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:2px}
.pay-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--pp-gold-d),var(--pp-gold-2));box-shadow:0 0 12px rgba(232,199,119,.5);transition:width 1s linear}

/* Stepper */
.pay-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;counter-reset:s}
.pay-step{position:relative;display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;color:var(--pp-mut);font-size:12.5px;font-weight:700;letter-spacing:.02em}
.pay-step::before{content:"";position:absolute;top:15px;right:50%;width:100%;height:2px;background:rgba(255,255,255,.12);z-index:0}
.pay-step:first-child::before{display:none}
.pay-step.is-done::before,.pay-step.is-now::before{background:linear-gradient(90deg,var(--pp-gold-d),var(--pp-gold))}
.pay-dot{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-size:13px;font-weight:800;color:var(--pp-mut);background:#14120d;border:1.5px solid rgba(255,255,255,.2)}
.pay-dot svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.pay-step.is-done .pay-dot{color:#1b1405;background:linear-gradient(135deg,var(--pp-gold-2),var(--pp-gold-d));border-color:transparent}
.pay-step.is-now .pay-dot{color:var(--pp-gold-2);border-color:var(--pp-gold);background:rgba(232,199,119,.12);box-shadow:0 0 0 5px rgba(232,199,119,.1),0 0 22px rgba(232,199,119,.35);animation:ppRing 2.4s ease-in-out infinite}
.pay-step.is-done,.pay-step.is-now{color:var(--pp-ink)}
.pay-steps.is-off .pay-step{opacity:.6}
@keyframes ppRing{0%,100%{box-shadow:0 0 0 5px rgba(232,199,119,.1),0 0 22px rgba(232,199,119,.3)}50%{box-shadow:0 0 0 9px rgba(232,199,119,.04),0 0 30px rgba(232,199,119,.45)}}

/* Panel rincian transfer: semua baris 3 kolom identik (label | nilai | salin) */
.pay-panel{display:grid;border-radius:18px;background:rgba(5,5,4,.55);border:1px solid var(--pp-line);box-shadow:inset 0 1px 0 rgba(255,255,255,.04);overflow:hidden}
.pay-panel-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;background:rgba(232,199,119,.07);border-bottom:1px solid var(--pp-line)}
.pay-panel-h span{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--pp-gold-2)}
.pay-panel-h svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pay-panel-h em{font-style:normal;font-size:12px;font-weight:700;color:#8ff0b8}
.pay-row{display:grid;grid-template-columns:minmax(120px,210px) minmax(0,1fr) 104px;align-items:center;column-gap:18px;min-height:58px;padding:10px 22px;border-top:1px solid var(--pp-line-2)}
.pay-panel-h+.pay-row{border-top:0}
.pay-k{font-size:13px;font-weight:600;color:var(--pp-mut)}
.pay-v{min-width:0;font-size:16px;font-weight:700;color:var(--pp-ink);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.pay-row.is-big{min-height:70px}
.pay-row.is-big .pay-v{font-size:clamp(20px,2.4vw,26px);font-weight:800;letter-spacing:.02em;color:var(--pp-gold-2)}
.pay-copy{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;height:40px;padding:0;border-radius:12px;font-family:inherit;font-size:13px;font-weight:700;line-height:1;color:var(--pp-gold-2);background:rgba(232,199,119,.08);border:1px solid rgba(232,199,119,.35);cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s}
.pay-copy svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pay-copy:hover{background:rgba(232,199,119,.18);box-shadow:0 0 18px rgba(232,199,119,.2)}
.pay-copy:active{transform:scale(.97)}
.pay-note{margin:0!important;padding:14px 22px 16px;border-top:1px solid var(--pp-line-2);font-size:13px;line-height:1.65!important;color:var(--pp-mut)!important}
.pay-foot>.pay-note{padding:0;border:0}

/* Footer & tombol */
.pay-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.pay-foot:has(.pay-cta:only-child){justify-content:stretch}
.pay-foot>.pay-note{flex:1 1 280px}
.pay-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 30px;border-radius:14px;border:0;cursor:pointer;text-decoration:none;font-family:inherit;font-size:15px;font-weight:800;line-height:1;letter-spacing:.01em;color:#1b1405;background:linear-gradient(135deg,#fbe9a8,#e8c777 50%,#c4952f);box-shadow:0 10px 26px rgba(201,154,56,.3),inset 0 1px 0 rgba(255,255,255,.5);transition:transform .18s ease,box-shadow .25s ease,filter .2s}
.pay-cta:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(201,154,56,.45),inset 0 1px 0 rgba(255,255,255,.55);filter:brightness(1.04)}
.pay-cta:active{transform:translateY(0) scale(.98)}
.pay-cta.is-ghost{color:var(--pp-gold-2);background:rgba(232,199,119,.08);border:1px solid rgba(232,199,119,.4);box-shadow:none}
.pay-cta.is-ghost:hover{background:rgba(232,199,119,.16);box-shadow:0 0 22px rgba(232,199,119,.18)}
.pay-foot:has(.pay-cta:only-child) .pay-cta{width:100%}
.pay-cta:focus-visible,.pay-copy:focus-visible{outline:2px solid var(--pp-gold-2);outline-offset:3px}

/* Modal konfirmasi */
.po-ov{background:rgba(3,3,2,.78)!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.po-modal{border:1px solid rgba(232,199,119,.4)!important;border-radius:24px!important;padding:26px!important;background:linear-gradient(160deg,#17140c,#0a0907)!important;box-shadow:0 30px 90px rgba(0,0,0,.7),0 0 50px rgba(232,199,119,.08)}
.po-modal h3{font-size:20px;font-weight:800}
.po-modal .po-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.po-modal .po-actions .btn{min-height:48px;border-radius:14px;width:100%}
.po-hint{color:var(--pp-mut)!important}

@media (prefers-reduced-motion:no-preference){.pay-card{animation:ppIn .5s cubic-bezier(.2,.7,.2,1) both}.pay-card:nth-child(2){animation-delay:.07s}.pay-card:nth-child(3){animation-delay:.14s}.pay-card:nth-child(n+4){animation-delay:.2s}}
@keyframes ppIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.pay-card,.pay-card::after,.pay-step.is-now .pay-dot,.kp-warn::after,.kp-chip.kp-warn::before,.pay-bar i{animation:none!important;transition:none!important}}

/* Tablet & HP */
@media (max-width:900px){.pay-row{grid-template-columns:minmax(110px,160px) minmax(0,1fr) 96px}}
@media (max-width:640px){
  .pay-top{grid-template-columns:1fr}.pay-top .kp-chip{justify-self:start;order:-1}
  .pay-hero{grid-template-columns:1fr}.pay-total,.pay-cd{min-height:0;padding:16px 18px}
  .pay-panel-h{padding:12px 16px}
  .pay-row{grid-template-columns:minmax(0,1fr) 92px;grid-template-areas:"k k" "v c";row-gap:4px;padding:12px 16px;min-height:0}
  .pay-row .pay-k{grid-area:k}.pay-row .pay-v{grid-area:v}.pay-row .pay-copy,.pay-row .pay-copy-gap{grid-area:c}
  .pay-note{padding:12px 16px 14px}
  .pay-step{font-size:11.5px}
  .pay-cta{width:100%}.pay-foot{flex-direction:column;align-items:stretch}.pay-foot>.pay-note{flex:0 0 auto}.pay-foot>span:empty{display:none}
  .po-modal .po-actions{grid-template-columns:1fr}
}

/* ---------- Checkout: kartu, pilihan paket/cara bayar, ringkasan, persetujuan ---------- */
html body .split-card:has(.ck-step){border-radius:var(--pp-r);background:var(--pp-glass);border-color:var(--pp-line);box-shadow:0 18px 50px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.05)}
.ck-step{gap:14px!important;margin-bottom:18px!important}
.ck-num{width:34px!important;height:34px!important;flex-basis:34px!important;font-size:14px;box-shadow:0 0 0 5px rgba(232,199,119,.12),0 0 20px rgba(232,199,119,.3)}
html body .ck-step h2{font-size:clamp(18px,2vw,22px);letter-spacing:-.01em}
.ck-tab{min-height:40px;display:inline-flex;align-items:center;padding:0 18px!important;transition:background .2s,border-color .2s}
.ck-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))!important;gap:14px!important}
.ck-p,.ck-r{border-radius:18px!important;background:rgba(255,255,255,.035)!important;border:1px solid var(--pp-line)!important;transition:transform .2s,border-color .2s,box-shadow .25s,background .2s}
.ck-p:hover,.ck-r:hover{border-color:rgba(232,199,119,.5)!important;box-shadow:0 0 28px rgba(232,199,119,.1)}
.ck-p.sel,.ck-r.sel{border-color:var(--pp-gold)!important;background:linear-gradient(145deg,rgba(232,199,119,.16),rgba(232,199,119,.04))!important;box-shadow:0 0 0 1px rgba(232,199,119,.5),0 0 30px rgba(232,199,119,.15)!important}
.ck-pr{font-size:24px!important;font-weight:900!important;color:var(--pp-gold-2)!important;font-variant-numeric:tabular-nums}
.ck-r span{color:var(--pp-mut)!important}
.ck-routes{gap:14px!important}
.ck-sum{display:grid!important;gap:0!important;padding:0!important;overflow:hidden;border-radius:18px!important;background:rgba(5,5,4,.55)!important;border:1px solid var(--pp-line)!important}
.ck-sum>div{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:12px 22px;border-top:1px solid var(--pp-line-2);color:var(--pp-mut)!important;font-weight:600}
.ck-sum>div:first-child{border-top:0}
.ck-sum b{color:var(--pp-ink)!important;font-size:17px!important;text-align:right}
.ck-sum .ck-tot{font-size:clamp(22px,3vw,28px)!important;font-weight:900;color:var(--pp-gold-2)!important}
.ck-sum>div:last-child:empty{display:none}
.kp-terms{border-radius:18px!important;background:rgba(5,5,4,.45)!important;border:1px solid var(--pp-line)!important;padding:20px 22px!important}
.kp-terms-title{color:var(--pp-gold-2)!important}
html body .kp-check{display:grid!important;grid-template-columns:22px minmax(0,1fr);gap:14px!important;align-items:start;text-transform:none!important;letter-spacing:0!important;font-size:14px!important;font-weight:500!important;line-height:1.65!important;color:#e6dec9!important}
html body .kp-check input{margin:3px 0 0!important;padding:0!important;min-height:0!important;width:20px;height:20px;align-self:start}
html body .kp-check b{color:var(--pp-gold-2)!important;font-weight:800}
html body #ckGo,html body .split-main .btn:not(.secondary):not(.mini){min-height:50px;border-radius:14px;padding:0 30px;font-weight:800;letter-spacing:.01em;color:#1b1405;background:linear-gradient(135deg,#fbe9a8,#e8c777 50%,#c4952f);box-shadow:0 10px 26px rgba(201,154,56,.28),inset 0 1px 0 rgba(255,255,255,.5);transition:transform .18s,box-shadow .25s}
html body #ckGo:hover:not([disabled]){transform:translateY(-1px);box-shadow:0 14px 34px rgba(201,154,56,.45)}
html body #ckGo{width:100%}
@media (max-width:640px){.ck-sum>div{padding:12px 16px}.kp-terms{padding:16px!important}}
