/* ═══════════ LOJA — LADO PROFESSOR/ADMIN ═══════════ */

/* Tabela de itens da loja no admin */
.shop-admin-row td { vertical-align: middle; }
.shop-admin-icon { font-size: 1.5rem; }
.shop-qty-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 10px;
  font-size: 0.68rem;
  font-weight: 800;
  background: var(--bg3);
  color: var(--muted2);
  border: 1px solid var(--border2);
}
.shop-qty-badge.unlimited { color: var(--teal); border-color: rgba(34,211,238,0.2); }
.shop-qty-badge.low { color: var(--orange); border-color: rgba(251,146,60,0.2); }
.shop-qty-badge.out { color: var(--red); border-color: rgba(248,113,113,0.2); }

.shop-active-toggle {
  width: 34px;
  height: 18px;
  border-radius: 9px;
  border: none;
  cursor: pointer;
  position: relative;
  transition: background 0.2s;
}
.shop-active-toggle.on { background: rgba(52,211,153,0.25); }
.shop-active-toggle.off { background: rgba(248,113,113,0.15); }
.shop-active-toggle::after {
  content: '';
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  top: 3px;
  transition: left 0.2s, background 0.2s;
}
.shop-active-toggle.on::after { left: 18px; background: var(--green); }
.shop-active-toggle.off::after { left: 3px; background: var(--red); }

/* Fila de entregas */
.purchase-queue-filters {
  display: flex;
  gap: 6px;
  margin-bottom: 14px;
}
.purchase-queue-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 9px;
  margin-bottom: 6px;
  background: var(--bg3);
  border: 1px solid var(--border);
}
.purchase-queue-icon { font-size: 1.2rem; flex-shrink: 0; }
.purchase-queue-info { flex: 1; min-width: 0; }
.purchase-queue-item { font-size: 0.8rem; font-weight: 800; color: var(--text); }
.purchase-queue-student { font-size: 0.68rem; color: var(--muted2); margin-top: 1px; }
.purchase-queue-cost { font-size: 0.75rem; font-weight: 800; color: var(--coin); flex-shrink: 0; }
.purchase-queue-date { font-size: 0.63rem; color: var(--muted2); flex-shrink: 0; }
.purchase-queue-actions { display: flex; gap: 5px; flex-shrink: 0; }

.pq-status-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 10px;
  font-size: 0.65rem;
  font-weight: 800;
}
.pq-status-badge.pending  { background: rgba(251,146,60,0.12); color: var(--orange); }
.pq-status-badge.fulfilled { background: rgba(52,211,153,0.12); color: var(--green); }
.pq-status-badge.rejected { background: rgba(248,113,113,0.1); color: var(--red); }

/* Credenciais de alunos no admin */
.cred-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: 10px;
  font-size: 0.65rem;
  font-weight: 800;
}
.cred-status-badge.has-cred { background: rgba(52,211,153,0.1); color: var(--green); }
.cred-status-badge.no-cred  { background: rgba(251,146,60,0.1); color: var(--orange); }
.cred-status-badge.inactive { background: rgba(248,113,113,0.1); color: var(--red); }

/* ═══════════ ITENS DE MINIGAME ═══════════ */

/* Tag roxa no card do item (lado aluno) */
.shop-item-mg-tag {
  display: inline-block;
  font-size: 0.67rem;
  font-weight: 700;
  color: var(--purple);
  background: rgba(167,139,250,0.1);
  border-radius: 6px;
  padding: 2px 8px;
  margin-top: 3px;
  margin-bottom: 2px;
}

/* Grid do inventário de minigame na loja do aluno */
.shop-inv-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(110px, 100%), 1fr));
  gap: 9px;
  margin-bottom: 18px;
}
.shop-inv-card {
  background: var(--bg3);
  border: 1px solid var(--border2);
  border-radius: 10px;
  padding: 10px 8px;
  text-align: center;
}
.shop-inv-icon   { font-size: 1.6rem; margin-bottom: 4px; }
.shop-inv-name   { font-size: 0.7rem; font-weight: 800; color: var(--text); margin-bottom: 2px; }
.shop-inv-effect { font-size: 0.63rem; color: var(--purple); margin-bottom: 4px; }
.shop-inv-qty    { font-size: 0.72rem; font-weight: 900; color: var(--coin); }
