
.gb-table{
  width:100%;
  border-collapse:collapse;
  font-size:14px;
}
.gb-table th, .gb-table td{
  padding:10px 10px;
  border-bottom:1px solid var(--gb-border);
  text-align:left;
  vertical-align:top;
}
.gb-table th{ font-size:12px; letter-spacing:.5px; color:#374151; text-transform:uppercase; }
.gb-table tbody tr:hover{ background:#fafafa; }
.gb-table-wrap{ overflow:auto; }
.gb-kpis{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:12px;
}
@media (max-width:900px){ .gb-kpis{ grid-template-columns:repeat(2, 1fr);} }
@media (max-width:520px){ .gb-kpis{ grid-template-columns:1fr;} }
.gb-kpi{
  background:#fff;
  border:1px solid var(--gb-border);
  border-radius:var(--gb-radius);
  box-shadow:var(--gb-shadow);
  padding:14px;
}
.gb-kpi-label{ font-size:12px; text-transform:uppercase; letter-spacing:.5px; color:#374151; }
.gb-kpi-val{ margin-top:6px; font-size:20px; font-weight:900; }
.gb-badge{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.4px;
}
.gb-badge-ready{ background:#dcfce7; border:1px solid #bbf7d0; color:#14532d; }
.gb-badge-reserved{ background:#e0f2fe; border:1px solid #bae6fd; color:#075985; }
.gb-badge-sold{ background:#fef3c7; border:1px solid #fde68a; color:#92400e; }
.gb-badge-returned{ background:#fee2e2; border:1px solid #fecaca; color:#991b1b; }
.gb-inline{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.gb-input-sm{ padding:8px 10px; border-radius:10px; font-size:13px; }
.gb-btn-sm{ padding:8px 10px; border-radius:10px; font-size:13px; }
