/* ═══════════════════════════════════════
   PHASE 1 — BEST SCORE ON GAME CARDS
═══════════════════════════════════════ */
.g-best {
  font-size: 11px;
  font-weight: 700;
  color: #d97706;
  margin-top: 4px;
  display: block;
}

/* ═══════════════════════════════════════
   PHASE 1 — NO-LOSS HINT HIGHLIGHT
═══════════════════════════════════════ */
@keyframes hintPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(22,163,74,0.4); }
  50%       { box-shadow: 0 0 0 6px rgba(22,163,74,0); }
}
.opt.hint-correct {
  border-color: #16a34a !important;
  background: #f0fdf4 !important;
  color: #15803d !important;
  animation: hintPulse 1s ease infinite;
}

/* ═══════════════════════════════════════
   PHASE 1 — ACHIEVEMENT BADGES
═══════════════════════════════════════ */
.badges-section {
  margin: 0 16px 16px;
}
.badges-header {
  font-size: 12px;
  font-weight: 800;
  color: var(--text-soft);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 10px;
  padding: 0 2px;
}
.badges-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
}
.badge-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  background: var(--surface);
  border-radius: 14px;
  padding: 10px 4px 8px;
  box-shadow: var(--shadow-sm);
  transition: transform 0.2s var(--spring);
}
.badge-item.locked {
  opacity: 0.32;
  filter: grayscale(1);
}
.badge-item.earned {
  background: linear-gradient(135deg, #fef9ec, #fffbf0);
  box-shadow: 0 2px 8px rgba(217,119,6,0.18), 0 0 0 1.5px #fcd34d;
}
.badge-icon {
  font-size: 24px;
  line-height: 1;
}
.badge-label {
  font-size: 9px;
  font-weight: 700;
  color: var(--text-soft);
  text-align: center;
  line-height: 1.2;
  direction: rtl;
  max-width: 54px;
}
.badge-item.earned .badge-label { color: #d97706; }

/* Badge unlock bottom-sheet */
#badgeUnlock {
  position: fixed;
  bottom: 90px;
  left: 50%;
  transform: translateX(-50%) translateY(140px);
  z-index: 8500;
  background: var(--surface);
  border-radius: 22px;
  padding: 14px 22px;
  box-shadow: 0 8px 40px rgba(0,0,0,0.22);
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 260px;
  max-width: 320px;
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
  pointer-events: none;
}
#badgeUnlock.open {
  transform: translateX(-50%) translateY(0);
  pointer-events: auto;
}
.bu-icon { font-size: 36px; line-height: 1; }
.bu-body { flex: 1; }
.bu-top {
  font-size: 11px;
  font-weight: 800;
  color: #d97706;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.bu-name {
  font-size: 16px;
  font-weight: 900;
  color: var(--text);
  direction: rtl;
}

