:root {
  --bg: #0f172a;
  --card: #111827;
  --muted: #94a3b8;
  --text: #e5e7eb;
  --accent: #22c55e;
  --accent2: #3b82f6;
}

/* Fullscreen background */


/* Dark overlay tint */
body::after {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0, 0, 0, 0.55);
  z-index: 0;
}

/* Card styles */
.card {
  position: relative;
  background: #111827;
  border-radius: 24px;
  padding: 28px;
  box-shadow: 0 10px 30px rgba(0,0,0,.45);
  width: 400px;
  max-width: 92vw;
  z-index: 1;
}

.h1 { font-size: 28px; margin-bottom: 10px; }
.muted { color: var(--muted); }
.row { display: flex; gap: 16px; align-items: center; }
.kbd { background:#0b1220; border:1px solid #1f2937; padding:10px 14px; border-radius:14px; font-size:18px; cursor:pointer; }
.qty { font-size:28px; font-weight:700; min-width:60px; text-align:center; }
.price { font-size:24px; font-weight:700; margin-top:10px; }
.btn { display:inline-block; padding:12px 20px; border-radius:999px; text-decoration:none; font-weight:700; margin-top:15px; cursor: pointer; }
.btn-primary { background:linear-gradient(90deg,var(--accent),var(--accent2)); color:rgb(235, 235, 235); }
.btn-outline { border:1px solid #e2dede; color:var(--text); background:transparent; }
.badge { padding:6px 10px; border-radius:999px; background:#0b1220; border:1px solid #1f2937; font-size:12px; color:#9ca3af; }
.countdown { font-size:40px; font-weight:900; text-align:center; margin-top:20px; }
.notice { background:#0b1220; border:1px dashed #334155; padding:12px; border-radius:14px; margin-top:15px; }
