:root {
  --bg: #0f172a;
  --panel: #111827;
  --panel-2: #1f2937;
  --line: rgba(255,255,255,0.08);
  --gold: #f59e0b;
  --text: #f8fafc;
  --muted: #94a3b8;
  --good: #22c55e;
  --bad: #ef4444;
}
body {
  background: linear-gradient(180deg, #020617 0%, #0f172a 100%);
  color: var(--text);
  min-height: 100vh;
}
.card-glass, .navbar, .modal-content, .list-group-item {
  background: rgba(17, 24, 39, 0.92) !important;
  border: 1px solid var(--line) !important;
  color: var(--text) !important;
  backdrop-filter: blur(8px);
}
a { color: #fbbf24; }
.form-control, .form-select, .btn, .input-group-text, textarea {
  border-radius: 14px !important;
}
.form-control, .form-select, textarea {
  background: #0b1220 !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
}
.btn-gold {
  background: linear-gradient(135deg, #f59e0b, #fb923c);
  color: #111827;
  border: 0;
  font-weight: 700;
}
.btn-outline-gold {
  border: 1px solid #f59e0b;
  color: #fbbf24;
}
.product-card img {
  height: 130px;
  object-fit: cover;
  border-radius: 16px;
}
.sticky-cart {
  position: sticky;
  bottom: 0;
  z-index: 1030;
  border-top: 1px solid var(--line);
  background: rgba(2,6,23,0.97);
  backdrop-filter: blur(10px);
}
.kpi {
  border-radius: 18px;
  padding: 16px;
  min-height: 118px;
}
.kpi .label {
  color: var(--muted);
  font-size: 0.85rem;
}
.kpi .value {
  font-size: 1.5rem;
  font-weight: 800;
}
.badge-size {
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.receipt {
  max-width: 380px;
  margin: 0 auto;
  background: white;
  color: black;
  padding: 18px;
}
@media print {
  body { background: white !important; }
  .no-print { display: none !important; }
}
