/* ==========================================================================
   sajoo.id — gaya untuk halaman /beli/ (pembelian lisensi dari situs)
   Berkas terpisah supaya `situs.css` (batas penjaga ukuran) tidak membengkak.
   ========================================================================== */

.beli-judul {
  margin: 18px 0 6px;
  font-size: clamp(22px, 4vw, 30px);
  line-height: 1.2;
}

.beli-penjelas,
.beli-kecil {
  margin: 0 0 14px;
  color: #475569;
  font-size: 14px;
}

.beli-kecil { font-size: 12.5px; }

.beli-sub {
  margin: 20px 0 8px;
  font-size: 17px;
}

.beli-isian { display: block; margin-bottom: 12px; }
.beli-isian > span {
  display: block;
  font-size: 12.5px;
  font-weight: 600;
  color: #334155;
  margin-bottom: 4px;
}
.beli-isian input {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--saj-garis-2, #dbe3ee);
  border-radius: 10px;
  background: #fff;
}
.beli-isian input:focus { outline: 2px solid #bfdbfe; border-color: #2563eb; }

.beli-tombol {
  padding: 10px 16px;
  border-radius: 10px;
  border: 1px solid #dbe3ee;
  background: #fff;
  font-weight: 600;
  cursor: pointer;
}
.beli-tombol--utama { background: #2563eb; border-color: #2563eb; color: #fff; }
.beli-tombol--utama:hover { background: #1d4ed8; }
.beli-tombol--halus { background: #f8fafc; }

.beli-pengguna {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 0 0 10px;
  font-size: 13.5px;
  color: #334155;
}

.beli-status {
  margin: 0 0 10px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  color: #166534;
  font-size: 13.5px;
}

.beli-siklus-baris { display: flex; gap: 8px; margin-bottom: 10px; }
.beli-siklus {
  padding: 7px 14px;
  border-radius: 999px;
  border: 1px solid #dbe3ee;
  background: #fff;
  cursor: pointer;
  font-weight: 600;
  font-size: 13.5px;
}
.beli-siklus--aktif { background: #eff6ff; border-color: #bfdbfe; color: #1d4ed8; }

.beli-paket {
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr;
  margin-bottom: 14px;
}
@media (min-width: 620px) { .beli-paket { grid-template-columns: 1fr 1fr; } }

.beli-kartu {
  display: flex;
  flex-direction: column;
  gap: 4px;
  text-align: left;
  padding: 14px;
  border-radius: 12px;
  border: 1px solid #dbe3ee;
  background: #fff;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .05);
}
.beli-kartu:hover { border-color: #93c5fd; }
.beli-kartu strong { font-size: 15.5px; }
.beli-kartu span { font-size: 14px; color: #1d4ed8; font-weight: 700; }
.beli-kartu small { font-size: 12.5px; color: #64748b; }
.beli-kartu--pilih { border-color: #2563eb; box-shadow: 0 0 0 2px #bfdbfe; }

.beli-tagihan {
  margin: 16px 0 6px;
  padding: 14px;
  border-radius: 12px;
  border: 1px solid #dbe3ee;
  background: #fcfdff;
}
.beli-tagihan img {
  display: block;
  width: min(260px, 100%);
  height: auto;
  margin: 8px 0;
  background: #fff;
  border-radius: 8px;
}

.beli-pesanan { display: grid; gap: 8px; }
.beli-baris {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid #dbe3ee;
  background: #fff;
}
.beli-baris strong { font-size: 14px; }
.beli-baris span { font-size: 12.5px; color: #64748b; }
.beli-baris .beli-tombol { align-self: flex-start; margin-top: 4px; }

.beli-kosong {
  margin: 0;
  padding: 16px;
  text-align: center;
  color: #64748b;
  font-size: 13.5px;
}

.beli-pesan {
  margin: 14px 0 0;
  padding: 10px 12px;
  border-radius: 10px;
  background: #f1f5f9;
  border: 1px solid #dbe3ee;
  font-size: 13.5px;
}
.beli-pesan--galat {
  background: #fef2f2;
  border-color: #fecaca;
  color: #b91c1c;
}
