:host {
  display: block;
}

.empty {
  font-size: 11px;
  color: rgba(255, 255, 255, 0.4);
  padding: 12px 16px;
  font-family: var(--nc-mono, monospace);
  letter-spacing: 0.06em;
}

.move-grid {
  display: grid;
  grid-template-columns: 28px 1fr 1fr;
  gap: 2px 4px;
  padding: 8px 12px;
  font-family: var(--nc-mono, monospace);
  font-size: 12px;
}

.mv-num {
  color: rgba(255, 255, 255, 0.3);
  font-size: 10px;
  display: flex;
  align-items: center;
  letter-spacing: 0.04em;
}

.mv {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  cursor: pointer;
  border-radius: 2px;
  color: rgba(255, 255, 255, 0.8);
  transition:
    background 0.12s,
    color 0.12s;
}

.mv:hover {
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
}

.mv.active {
  background: rgba(255, 69, 200, 0.18);
  color: #fff;
}

.mv-empty {
  cursor: default;
  color: rgba(255, 255, 255, 0.25);
}

.mv-empty:hover {
  background: transparent;
  color: rgba(255, 255, 255, 0.25);
}

.mv-san {
  flex: 1;
}

.mv-placeholder {
  opacity: 0.4;
}

/* Quality badges */
.mv-badge {
  font-size: 10px;
  font-weight: 700;
  padding: 1px 4px;
  border-radius: 2px;
  flex-shrink: 0;
}

.q-brilliant .mv-badge,
.mv-badge.q-brilliant {
  color: #5ee5a1;
  background: rgba(94, 229, 161, 0.15);
}

.q-best .mv-badge,
.mv-badge.q-best {
  color: #5ee5a1;
  background: rgba(94, 229, 161, 0.1);
}

.q-inaccuracy .mv-badge,
.mv-badge.q-inaccuracy {
  color: #ffb13a;
  background: rgba(255, 177, 58, 0.15);
}

.q-mistake .mv-badge,
.mv-badge.q-mistake {
  color: #ff7a7a;
  background: rgba(255, 122, 122, 0.15);
}

.q-blunder .mv-badge,
.mv-badge.q-blunder {
  color: #ff4444;
  background: rgba(255, 68, 68, 0.18);
}
