body {
font-family: 'Segoe UI', sans-serif;
background: #121212;
color: #f1f1f1;
margin: 0;
}

.data-topup {
max-width: 500px;
margin: 100px auto;
background: #fff;
border-radius: 16px;
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
padding: 30px;
text-align: center;
font-family: 'Segoe UI', sans-serif;
animation: fadeIn 0.4s ease-in-out;
}

.data-topup h2 {
font-size: 22px;
color: #333;
margin-bottom: 20px;
}

.data-topup p {
font-size: 16px;
color: #555;
margin: 8px 0;
}

.data-topup strong {
color: #222;
}

.data-topup #status {
font-weight: bold;
color: #e67300;
}

.data-topup img {
width: 300px;
margin: 20px 0;
border-radius: 12px;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

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

.submenu {
max-height: 0;
overflow: hidden;
opacity: 0;
transition: max-height 0.4s ease, opacity 0.3s ease;
margin-left: 15px;
}

.submenu.show {
max-height: 300px;
opacity: 1;
}

form {
background: #1e1e1e;
padding: 30px;
border-radius: 12px;
max-width: 500px;
margin: 100px auto; /* beri jarak dari atas */
box-shadow: 0 0 30px rgba(0,0,0,0.4);
}

.data-box {
background-color: #1e1e1e;
padding: 20px;
border-radius: 12px;
box-shadow: 0 0 10px rgba(255,255,255,0.05);
max-width: 500px;
}

input, button {
width: 100%;
padding: 12px;
margin: 10px 0;
border-radius: 8px;
border: 1px solid #444;
background-color: #2c2c2c;
color: #fff;
}

input::placeholder {
color: #aaa;
}

button {
background-color: #007bff;
color: white;
font-weight: bold;
border: none;
cursor: pointer;
position: relative;
}

button:disabled {
background-color: #555;
}

.spinner {
display: inline-block;
width: 18px;
height: 18px;
border: 2px solid white;
border-radius: 50%;
border-top-color: transparent;
animation: spin 1s linear infinite;
vertical-align: middle;
margin-left: 10px;
}

@keyframes spin {
to { transform: rotate(360deg); }
}

.popup {
position: fixed;
top: 20px;
right: 20px;
background-color: #444;
color: #fff;
padding: 15px 25px;
border-radius: 10px;
box-shadow: 0 0 10px rgba(255,255,255,0.1);
z-index: 9999;
font-size: 16px;
animation: fadeIn 0.3s ease-in-out;
}

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

/* Sidebar */
.sidebar {
position: fixed;
top: 0;
left: 0;
width: 230px;
height: 100%;
background-color: #1e1e1e;
box-shadow: 2px 0 5px rgba(0,0,0,0.5);
padding: 20px;
transform: translateX(-100%);
transition: transform 0.3s ease;
z-index: 1000;
}

/* Saat sidebar dibuka */
.sidebar.open {
transform: translateX(0);
}

.sidebar ul {
list-style: none;
padding: 0;
margin-top: 60px;
}

.sidebar ul li {
margin: 20px 0;
}

.sidebar ul li a {
color: #f1f1f1;
text-decoration: none;
font-weight: bold;
}

/* Hamburger & Close Button */
.hamburger {
position: fixed;
top: 15px;
left: 15px;
font-size: 24px;
background: transparent;
color: white;
border: none;
padding: 0;
margin: 0;
z-index: 1001;
cursor: pointer;
height: 30px;
width: 30px;
display: flex;
align-items: center;
justify-content: center;
}

.close-btn {
position: absolute;
top: 15px;
right: 15px;
font-size: 20px;
background: transparent;
color: #fff;
border: none;
cursor: pointer;
}

.docs-container {
max-width: 800px;
margin: 80px auto;
background: #1e1e1e;
padding: 30px;
border-radius: 16px;
box-shadow: 0 0 20px rgba(255,255,255,0.05);
color: #f1f1f1;
font-family: 'Segoe UI', sans-serif;
}

.docs-container h1,
.docs-container h2 {
color: #fff;
}

.docs-container p,
.docs-container li {
color: #ccc;
}

.docs-container code {
background: #2c2c2c;
color: #00d8ff;
padding: 3px 6px;
border-radius: 6px;
font-size: 0.95rem;
}

.docs-container pre {
background: #2c2c2c;
padding: 15px;
border-radius: 10px;
color: #fff;
overflow-x: auto;
}

.method {
color: #007bff;
font-weight: bold;
}

.docs-container a {
color: #00d8ff;
text-decoration: none;
}

.docs-container a:hover {
text-decoration: underline;
}

/* === Halaman Status Pembelian Saldo === */
.result-container {
  max-width: 600px;
  margin: 100px auto;
  background-color: #1e1e1e;
  padding: 30px;
  border-radius: 16px;
  box-shadow: 0 0 20px rgba(255,255,255,0.05);
  text-align: center;
  animation: fadeIn 0.4s ease-in-out;
}

.result-container h2 {
  font-size: 26px;
  color: #ffffff;
  margin-bottom: 25px;
}

.status {
  padding: 20px;
  border-radius: 12px;
  margin-bottom: 20px;
}

.status.success {
  background-color: #1c2e1f;
  border: 2px solid #28a745;
}

.status.gagal {
  background-color: #2e1c1c;
  border: 2px solid #dc3545;
}

.status h3 {
  margin-top: 0;
  font-size: 22px;
}

.status p {
  margin: 10px 0;
  font-size: 16px;
  color: #ddd;
}

.status strong {
  color: #fff;
}

.back-button {
  display: inline-block;
  padding: 12px 20px;
  background-color: #007bff;
  color: white;
  border-radius: 8px;
  text-decoration: none;
  font-weight: bold;
  transition: background-color 0.3s ease;
}

.back-button:hover {
  background-color:


